Trustify branch daily perf tests
Test runs
10
2026-10-21 → 2026-10-28
Latest avg response
7.50 ms (-0.1)
Latest 95%ile
20 ms (-16)
Latest throughput
1,263.8 req/s (+13.0)
Latest failure rate
0.0%
0 of 756,856 requests
Endpoints tested
72
72 across all runs
Trends
Response time
Per run, ms · click a point to open that run
Throughput
Requests per second, per run
Failure rate
Failed requests, % of all requests
Latest run vs previous
Comparing branch_0.6.z_2026-10-28T05-20-13_a575145 with branch_0.6.z_2026-10-27T05-16-26_a575145. Flagged when 95%ile up or down by at least 10% and 5 ms.
Regressions 10
| Endpoint | Prev 95%ile | Latest 95%ile | Δ ms | Δ % | Prev avg | Latest avg | Fails |
|---|---|---|---|---|---|---|---|
| GET /api/v3/purl?q=curl&total=true | 72 | 220 | (+148) | +206% | 52.5 | 64.3 | 0 → 0 |
| GET /api/v3/advisory?offset={offset}&limit=1 | 700 | 2,000 | (+1,300) | +186% | 258 | 534 | 0 → 0 |
| GET /api/v3/advisory-labels?filter_text=type&limit=1000 | 4,600 | 7,700 | (+3,100) | +67% | 3,801 | 4,434 | 0 → 0 |
| GET /api/v3/sbom/{sbom_id}/related | 310 | 430 | (+120) | +39% | 123 | 156 | 0 → 0 |
| GET /api/v3/sbom?limit=10&sort=name:asc&total=true | 610 | 840 | (+230) | +38% | 248 | 318 | 0 → 0 |
| GET /api/v3/sbom?q=name~redhat&total=true | 1,700 | 2,200 | (+500) | +29% | 693 | 735 | 0 → 0 |
| GET /api/v3/sbom/{sbom_id}/packages | 400 | 480 | (+80) | +20% | 160 | 157 | 0 → 0 |
| GET /api/v3/sbom?sort=ingested:desc&total=true | 760 | 900 | (+140) | +18% | 316 | 357 | 0 → 0 |
| GET /api/v3/advisory/urn:uuid:{advisory_id} | 100 | 110 | (+10) | +10% | 53.0 | 52.1 | 0 → 0 |
| GET /api/v3/advisory?q=identifier=CVE-2022-0981&total=true | 100 | 110 | (+10) | +10% | 53.8 | 53.7 | 0 → 0 |
Improvements 16
| Endpoint | Prev 95%ile | Latest 95%ile | Δ ms | Δ % | Prev avg | Latest avg | Fails |
|---|---|---|---|---|---|---|---|
| GET /api/v3/importer?total=true | 43 | 7 | (-36) | -84% | 5.77 | 4.96 | 0 → 0 |
| GET /api/v3/analysis/status | 54 | 25 | (-29) | -54% | 7.05 | 5.94 | 0 → 0 |
| GET /api/v3/group/sbom?totals=true&total=true | 54 | 25 | (-29) | -54% | 7.17 | 5.97 | 0 → 0 |
| GET /api/v3/advisory?limit=1&total=true | 550 | 290 | (-260) | -47% | 110 | 111 | 0 → 0 |
| POST /api/v3/vulnerability/analyze | 1,300 | 750 | (-550) | -42% | 330 | 298 | 0 → 0 |
| GET /api/v3/group/sbom?parents=resolve&total=true | 54 | 34 | (-20) | -37% | 7.06 | 6.02 | 0 → 0 |
| GET /api/v3/group/sbom?total=true | 54 | 35 | (-19) | -35% | 7.04 | 6.01 | 0 → 0 |
| GET /api/v3/analysis/latest/component/{cpe} | 54 | 36 | (-18) | -33% | 7.36 | 6.26 | 0 → 0 |
| GET /api/v3/analysis/component/{component} | 55 | 41 | (-14) | -25% | 7.44 | 6.23 | 0 → 0 |
| GET /api/v3/sbom?total=true | 580 | 440 | (-140) | -24% | 166 | 182 | 0 → 0 |
| GET /api/v3/sbom/by-package?purl={purl} | 180 | 140 | (-40) | -22% | 96.4 | 96.4 | 0 → 0 |
| GET /api/v3/purl/base/{purl} | 190 | 160 | (-30) | -16% | 39.1 | 43.9 | 0 → 0 |
| GET /api/v3/vulnerability?q=cwes=CWE-79&total=true | 80 | 69 | (-11) | -14% | 29.4 | 29.5 | 0 → 0 |
| GET /api/v3/sbom?offset=100&limit=10&total=true | 500 | 440 | (-60) | -12% | 181 | 173 | 0 → 0 |
| GET /api/v3/sbom?q=published>2024-01-01&total=true | 520 | 460 | (-60) | -12% | 188 | 156 | 0 → 0 |
| GET /api/v3/advisory?total=true | 300 | 270 | (-30) | -10% | 131 | 147 | 0 → 0 |
Top 10 slowest endpoints (latest run)
| # | Method | Name | 95%ile (ms) | Average (ms) | # Requests |
|---|---|---|---|---|---|
| 1 | GET | /api/v3/advisory-labels?filter_text=type&limit=1000 | 7,700 | 4,434 | 118 |
| 2 | GET | /api/v3/sbom/{sbom_id}/download | 2,500 | 2,352 | 113 |
| 3 | GET | /api/v3/sbom?q=name~redhat&total=true | 2,200 | 735 | 110 |
| 4 | GET | /api/v3/advisory?offset={offset}&limit=1 | 2,000 | 534 | 112 |
| 5 | GET | /api/v3/advisory?q=CVE-2021-&total=true | 1,300 | 352 | 557 |
| 6 | GET | /api/v3/vulnerability?sort=base_score:desc&total=true | 1,300 | 539 | 433 |
| 7 | GET | /api/v3/sbom?sort=ingested:desc&total=true | 900 | 357 | 103 |
| 8 | GET | /api/v3/sbom?limit=10&sort=name:asc&total=true | 840 | 318 | 112 |
| 9 | POST | /api/v3/vulnerability/analyze | 750 | 298 | 1,021 |
| 10 | GET | /api/v3/sbom/{sbom_id}/packages | 480 | 157 | 106 |
All endpoints
| Group | Endpoint | Runs | Latest 95%ile | Median 95%ile | Best | Worst | Latest avg | Latest fail % | 95%ile, last 30 runs |
|---|---|---|---|---|---|---|---|---|---|
| sbom | GET /api/v3/sbom/by-package?purl={purl} | 10 | 140 | 145 | 130 | 220 | 96.4 | 0% | |
| sbom | GET /api/v3/sbom/count-by-package | 10 | 69 | 78 | 67 | 84 | 19.3 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id} | 10 | 220 | 225 | 150 | 240 | 116 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/all-license-ids | 10 | 62 | 73 | 62 | 78 | 13.6 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/download | 10 | 2,500 | 3,400 | 2,500 | 3,500 | 2,352 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/license-export | 10 | 78 | 79 | 71 | 86 | 75.7 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/packages | 10 | 480 | 330 | 240 | 480 | 157 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/related | 10 | 430 | 290 | 190 | 430 | 156 | 0% | |
| sbom | GET /api/v3/sbom?limit=10&sort=name:asc&total=true | 10 | 840 | 610 | 470 | 840 | 318 | 0% | |
| sbom | GET /api/v3/sbom?offset=100&limit=10&total=true | 10 | 440 | 475 | 300 | 580 | 173 | 0% | |
| sbom | GET /api/v3/sbom?q=label:type=product&total=true | 10 | 66 | 70 | 65 | 78 | 18.3 | 0% | |
| sbom | GET /api/v3/sbom?q=license~GPL&sort=name:desc&total=true | 10 | 69 | 74 | 68 | 81 | 20.1 | 0% | |
| sbom | GET /api/v3/sbom?q=name~redhat&total=true | 10 | 2,200 | 1,300 | 270 | 2,200 | 735 | 0% | |
| sbom | GET /api/v3/sbom?q=published>2024-01-01&total=true | 10 | 460 | 465 | 280 | 520 | 156 | 0% | |
| sbom | GET /api/v3/sbom?sort=ingested:desc&total=true | 10 | 900 | 665 | 510 | 900 | 357 | 0% | |
| sbom | GET /api/v3/sbom?total=true | 10 | 440 | 410 | 320 | 580 | 182 | 0% | |
| advisory | GET /api/v3/advisory/urn:uuid:{advisory_id} | 10 | 110 | 110 | 100 | 110 | 52.1 | 0% | |
| advisory | GET /api/v3/advisory/urn:uuid:{advisory_id}/download | 10 | 74 | 78 | 69 | 80 | 24.2 | 0% | |
| advisory | GET /api/v3/advisory?deprecated=Consider&total=true | 10 | 84 | 92 | 76 | 120 | 81.2 | 0% | |
| advisory | GET /api/v3/advisory?limit=1&total=true | 10 | 290 | 110 | 100 | 550 | 111 | 0% | |
| advisory | GET /api/v3/advisory?limit=10&sort=ingested:desc&total=true | 10 | 75 | 80 | 73 | 86 | 64.1 | 0% | |
| advisory | GET /api/v3/advisory?offset=100&limit=10&total=true | 10 | 210 | 100 | 97 | 210 | 97.0 | 0% | |
| advisory | GET /api/v3/advisory?offset={offset}&limit=1 | 10 | 2,000 | 645 | 530 | 2,000 | 534 | 0% | |
| advisory | GET /api/v3/advisory?q=CVE-2021-&total=true | 10 | 1,300 | 1,700 | 1,200 | 1,900 | 352 | 0% | |
| advisory | GET /api/v3/advisory?q=identifier=CVE-2022-0981&total=true | 10 | 110 | 110 | 100 | 110 | 53.7 | 0% | |
| advisory | GET /api/v3/advisory?q=modified>3 days ago&total=true | 10 | 65 | 70 | 64 | 74 | 17.3 | 0% | |
| advisory | GET /api/v3/advisory?q=title~openssl&total=true | 10 | 96 | 96 | 81 | 1,300 | 50.5 | 0% | |
| advisory | GET /api/v3/advisory?sort=modified:desc&total=true | 10 | 82 | 86 | 76 | 100 | 86.0 | 0% | |
| advisory | GET /api/v3/advisory?total=true | 10 | 270 | 185 | 170 | 300 | 147 | 0% | |
| vulnerability | GET /api/v3/vulnerability?offset=100&limit=10&total=true | 10 | 64 | 66 | 60 | 70 | 19.7 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=base_score>=7.0&total=true | 10 | 63 | 70 | 58 | 75 | 23.1 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=base_severity=high&total=true | 10 | 67 | 72 | 65 | 77 | 20.6 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=cwes=CWE-79&total=true | 10 | 69 | 75 | 65 | 82 | 29.5 | 0% | |
| vulnerability | GET /api/v3/vulnerability?sort=base_score:desc&total=true | 10 | 1,300 | 1,200 | 990 | 1,300 | 539 | 0% | |
| vulnerability | GET /api/v3/vulnerability?total=true | 10 | 58 | 69 | 57 | 74 | 21.4 | 0% | |
| vulnerability | POST /api/v3/vulnerability/analyze | 10 | 750 | 1,450 | 750 | 1,800 | 298 | 0% | |
| purl | GET /api/v3/purl/base/{purl} | 10 | 160 | 190 | 150 | 210 | 43.9 | 0% | |
| purl | GET /api/v3/purl/base?q=namespace=redhat&total=true | 10 | 99 | 100 | 98 | 110 | 60.0 | 0% | |
| purl | GET /api/v3/purl/base?q=type=rpm&total=true | 10 | 98 | 100 | 95 | 100 | 52.9 | 0% | |
| purl | GET /api/v3/purl/base?sort=name:asc&total=true | 10 | 210 | 300 | 210 | 320 | 130 | 0% | |
| purl | GET /api/v3/purl/base?total=true | 10 | 98 | 100 | 96 | 100 | 52.3 | 0% | |
| purl | GET /api/v3/purl/{purl_id} | 10 | 97 | 160 | 94 | 170 | 47.4 | 0% | |
| purl | GET /api/v3/purl?offset=100&limit=10&total=true | 10 | 98 | 100 | 98 | 110 | 56.6 | 0% | |
| purl | GET /api/v3/purl?q=curl&total=true | 10 | 220 | 80 | 70 | 490 | 64.3 | 0% | |
| purl | GET /api/v3/purl?q=license~GPLv3+...&sort=name:desc&total=true | 10 | 62 | 70 | 60 | 75 | 19.4 | 0% | |
| purl | GET /api/v3/purl?q=name=curl&total=true | 10 | 61 | 70 | 60 | 72 | 22.1 | 0% | |
| purl | GET /api/v3/purl?q=purl:namespace=redhat&total=true | 10 | 60 | 65 | 60 | 69 | 116 | 0% | |
| purl | GET /api/v3/purl?q=purl:ty=rpm&total=true | 10 | 60 | 68 | 60 | 74 | 62.4 | 0% | |
| purl | GET /api/v3/purl?sort=purl:name:asc&total=true | 10 | 61 | 67 | 61 | 73 | 23.8 | 0% | |
| purl | GET /api/v3/purl?total=true | 10 | 60 | 62 | 58 | 70 | 21.4 | 0% | |
| purl | POST /api/v3/purl/recommend | 10 | 270 | 340 | 250 | 360 | 153 | 0% | |
| license | GET /api/v3/license/spdx/license/{license_id} | 10 | 45 | 46 | 45 | 48 | 41.8 | 0% | |
| license | GET /api/v3/license/spdx/license?q=apache&total=true | 10 | 5 | 6 | 5 | 7 | 2.81 | 0% | |
| license | GET /api/v3/license/spdx/license?q=gpl&total=true | 10 | 45 | 46 | 45 | 48 | 42.1 | 0% | |
| license | GET /api/v3/license/spdx/license?total=true | 10 | 45 | 46 | 45 | 48 | 42.1 | 0% | |
| license | GET /api/v3/license?limit=10&sort=license:asc&total=true | 10 | 70 | 81 | 70 | 84 | 22.3 | 0% | |
| license | GET /api/v3/license?q=ASL&sort=license:desc&total=true | 10 | 65 | 76 | 64 | 79 | 20.2 | 0% | |
| license | GET /api/v3/license?q=license~Apache&total=true | 10 | 61 | 71 | 60 | 74 | 17.9 | 0% | |
| license | GET /api/v3/license?q=license~GPL&total=true | 10 | 60 | 71 | 60 | 73 | 16.5 | 0% | |
| license | GET /api/v3/license?total=true | 10 | 110 | 120 | 110 | 120 | 59.7 | 0% | |
| analysis | GET /api/v3/analysis/component/{component} | 10 | 41 | 68 | 41 | 71 | 6.23 | 0% | |
| analysis | GET /api/v3/analysis/latest/component/{cpe} | 10 | 36 | 69 | 36 | 70 | 6.26 | 0% | |
| analysis | GET /api/v3/analysis/status | 10 | 25 | 68 | 25 | 70 | 5.94 | 0% | |
| importer | GET /api/v3/importer?total=true | 10 | 7 | 66 | 7 | 68 | 4.96 | 0% | |
| group | GET /api/v3/group/sbom?parents=resolve&total=true | 10 | 34 | 68 | 34 | 69 | 6.02 | 0% | |
| group | GET /api/v3/group/sbom?total=true | 10 | 35 | 68 | 35 | 69 | 6.01 | 0% | |
| group | GET /api/v3/group/sbom?totals=true&total=true | 10 | 25 | 68 | 25 | 69 | 5.97 | 0% | |
| labels | GET /api/v3/advisory-labels?filter_text=type&limit=1000 | 10 | 7,700 | 6,950 | 4,300 | 7,700 | 4,434 | 0% | |
| labels | GET /api/v3/sbom-labels?limit=10&filter_text=&total=true | 10 | 110 | 115 | 110 | 120 | 58.8 | 0% | |
| labels | GET /api/v3/sbom-labels?total=true | 10 | 100 | 120 | 100 | 120 | 59.6 | 0% | |
| other | GET /.well-known/trustify | 10 | 3 | 4 | 3 | 4 | 1.13 | 0% | |
| other | POST /api/v3/ui/extract-sbom-purls | 10 | 3 | 4 | 3 | 4 | 1.26 | 0% |
Runs
| Started (UTC) | Run | Source | Duration | Users | # Requests | Fail % | RPS | Average (ms) | 95%ile | 99%ile |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-28 06:14 | branch_0.6.z_2026-10-28T05-20-13_a575145 | Workflow run | 9m 58s | 10 | 756,856 | 0.0% | 1,263.8 (+13.0) | 7.50 (-0.1) | 20 (-16) | 74 (-2) |
| 2026-10-27 06:05 | branch_0.6.z_2026-10-27T05-16-26_a575145 | Workflow run | 9m 59s | 10 | 749,672 | 0.0% | 1,250.8 (+432.1) | 7.61 (-4.1) | 36 (-21) | 76 (-24) |
| 2026-10-26 12:20 | branch_0.6.z_2026-10-26T11-32-23_a575145 | Workflow run | 9m 59s | 10 | 490,303 | 0.0% | 818.8 (-37.4) | 11.7 (+0.5) | 57 (+1) | 100 (+1) |
| 2026-10-26 06:05 | branch_0.6.z_2026-10-26T05-18-02_a575145 | Workflow run | 9m 59s | 10 | 512,822 | 0.0% | 856.2 (-321.0) | 11.2 (+3.0) | 56 (+13) | 99 (+15) |
| 2026-10-25 05:40 | branch_0.6.z_2026-10-25T04-55-23_a575145 | Workflow run | 9m 59s | 10 | 705,749 | 0.0% | 1,177.3 (+337.3) | 8.13 (-3.2) | 43 (-13) | 84 (-16) |
| 2026-10-24 04:58 | branch_0.6.z_2026-10-24T04-10-37_a575145 | Workflow run | 9m 59s | 10 | 502,989 | 0.0% | 839.9 (-344.7) | 11.4 (+3.3) | 56 (+13) | 100 (+16) |
| 2026-10-23 06:28 | branch_0.6.z_2026-10-23T05-43-18_a575145 | Workflow run | 9m 58s | 10 | 709,881 | 0.0% | 1,184.6 (+344.1) | 8.07 (-3.3) | 43 (-13) | 84 (-16) |
| 2026-10-22 15:51 | branch_0.6.z_2026-10-22T15-03-37_a575145 | Workflow run | 9m 59s | 10 | 504,028 | 0.0% | 840.5 (+16.1) | 11.4 (-0.2) | 56 (-1) | 100 (0) |
| 2026-10-22 08:23 | branch_0.6.z_2026-10-22T07-35-12_a575145 | Workflow run | 9m 59s | 10 | 494,335 | 0.0% | 824.4 (-14.1) | 11.6 (+0.2) | 57 (0) | 100 (0) |
| 2026-10-21 05:53 | branch_0.6.z_2026-10-21T05-06-08_a575145 | Workflow run | 9m 59s | 10 | 502,781 | 0.0% | 838.5 | 11.4 | 57 | 100 |