Trustify branch daily perf tests
Test runs
10
2026-10-20 → 2026-10-28
Latest avg response
18.1 ms (-11.1)
Latest 95%ile
63 ms (-9)
Latest throughput
537.9 req/s (+204.5)
Latest failure rate
0.0%
0 of 322,239 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.7.z_2026-10-28T04-10-46_595c74b with branch_0.7.z_2026-10-27T04-11-08_9f25ba2. Flagged when 95%ile up or down by at least 10% and 5 ms.
Regressions 7
| Endpoint | Prev 95%ile | Latest 95%ile | Δ ms | Δ % | Prev avg | Latest avg | Fails |
|---|---|---|---|---|---|---|---|
| GET /api/v3/advisory?total=true | 190 | 260 | (+70) | +37% | 107 | 122 | 0 → 0 |
| GET /api/v3/advisory?offset=100&limit=10&total=true | 110 | 150 | (+40) | +36% | 87.4 | 73.6 | 0 → 0 |
| GET /api/v3/sbom?sort=ingested:desc&total=true | 650 | 880 | (+230) | +35% | 285 | 297 | 0 → 0 |
| GET /api/v3/sbom?total=true | 380 | 470 | (+90) | +24% | 162 | 151 | 0 → 0 |
| GET /api/v3/sbom/{sbom_id}/packages | 320 | 390 | (+70) | +22% | 155 | 143 | 0 → 0 |
| GET /api/v3/purl/base/{purl} | 270 | 320 | (+50) | +19% | 79.4 | 91.3 | 0 → 0 |
| GET /api/v3/sbom?offset=100&limit=10&total=true | 480 | 550 | (+70) | +15% | 201 | 179 | 0 → 0 |
Improvements 35
| Endpoint | Prev 95%ile | Latest 95%ile | Δ ms | Δ % | Prev avg | Latest avg | Fails |
|---|---|---|---|---|---|---|---|
| GET /api/v3/purl?q=purl:ty=rpm&total=true | 2,300 | 71 | (-2,229) | -97% | 181 | 129 | 0 → 0 |
| GET /api/v3/purl?q=purl:namespace=redhat&total=true | 2,200 | 68 | (-2,132) | -97% | 185 | 135 | 0 → 0 |
| GET /api/v3/purl?sort=purl:name:asc&total=true | 470 | 190 | (-280) | -60% | 61.8 | 42.5 | 0 → 0 |
| GET /api/v3/vulnerability?q=cwes=CWE-79&total=true | 160 | 73 | (-87) | -54% | 48.8 | 28.7 | 0 → 0 |
| GET /api/v3/purl/base?q=namespace=redhat&total=true | 210 | 100 | (-110) | -52% | 87.4 | 69.0 | 0 → 0 |
| GET /api/v3/purl?q=name=curl&total=true | 150 | 77 | (-73) | -49% | 35.6 | 26.9 | 0 → 0 |
| GET /api/v3/vulnerability?offset=100&limit=10&total=true | 110 | 67 | (-43) | -39% | 63.3 | 25.6 | 0 → 0 |
| GET /api/v3/sbom/{sbom_id} | 230 | 150 | (-80) | -35% | 130 | 101 | 0 → 0 |
| GET /api/v3/advisory-labels?filter_text=type&limit=1000 | 6,500 | 4,500 | (-2,000) | -31% | 5,706 | 3,900 | 0 → 0 |
| GET /api/v3/advisory?q=CVE-2021-&total=true | 1,700 | 1,200 | (-500) | -29% | 364 | 309 | 0 → 0 |
| GET /api/v3/importer?total=true | 66 | 47 | (-19) | -29% | 10.2 | 5.64 | 0 → 0 |
| GET /api/v3/sbom/{sbom_id}/download | 3,200 | 2,400 | (-800) | -25% | 3,069 | 2,252 | 0 → 0 |
| GET /api/v3/purl?q=curl&total=true | 900 | 680 | (-220) | -24% | 97.9 | 111 | 0 → 0 |
| POST /api/v3/vulnerability/analyze | 3,400 | 2,600 | (-800) | -24% | 1,059 | 615 | 0 → 0 |
| GET /api/v3/vulnerability?total=true | 78 | 60 | (-18) | -23% | 40.1 | 15.0 | 0 → 0 |
| GET /api/v3/sbom?limit=10&sort=name:asc&total=true | 760 | 590 | (-170) | -22% | 306 | 218 | 0 → 0 |
| GET /api/v3/purl/{purl_id} | 190 | 150 | (-40) | -21% | 91.4 | 62.8 | 0 → 0 |
| POST /api/v3/purl/recommend | 1,500 | 1,200 | (-300) | -20% | 960 | 743 | 0 → 0 |
| GET /api/v3/vulnerability?sort=base_score:desc&total=true | 1,600 | 1,300 | (-300) | -19% | 733 | 553 | 0 → 0 |
| GET /api/v3/analysis/status | 69 | 57 | (-12) | -17% | 12.7 | 6.75 | 0 → 0 |
| GET /api/v3/group/sbom?total=true | 68 | 57 | (-11) | -16% | 12.6 | 6.70 | 0 → 0 |
| GET /api/v3/advisory?q=title~openssl&total=true | 99 | 84 | (-15) | -15% | 50.7 | 32.8 | 0 → 0 |
| GET /api/v3/purl?q=license~GPLv3+...&sort=name:desc&total=true | 74 | 63 | (-11) | -15% | 31.9 | 22.0 | 0 → 0 |
| GET /api/v3/group/sbom?totals=true&total=true | 68 | 58 | (-10) | -15% | 12.0 | 6.93 | 0 → 0 |
| GET /api/v3/analysis/component/{component} | 69 | 59 | (-10) | -14% | 13.2 | 7.09 | 0 → 0 |
| GET /api/v3/license?q=ASL&sort=license:desc&total=true | 77 | 66 | (-11) | -14% | 30.8 | 22.4 | 0 → 0 |
| GET /api/v3/license?q=license~GPL&total=true | 74 | 64 | (-10) | -14% | 26.9 | 20.2 | 0 → 0 |
| GET /api/v3/group/sbom?parents=resolve&total=true | 68 | 59 | (-9) | -13% | 12.3 | 6.95 | 0 → 0 |
| GET /api/v3/analysis/latest/component/{cpe} | 69 | 60 | (-9) | -13% | 13.1 | 7.38 | 0 → 0 |
| GET /api/v3/license?limit=10&sort=license:asc&total=true | 85 | 74 | (-11) | -13% | 37.6 | 27.3 | 0 → 0 |
| GET /api/v3/advisory?deprecated=Consider&total=true | 95 | 83 | (-12) | -13% | 73.2 | 50.5 | 0 → 0 |
| GET /api/v3/license?q=license~Apache&total=true | 74 | 65 | (-9) | -12% | 27.8 | 20.8 | 0 → 0 |
| GET /api/v3/vulnerability?q=base_severity=high&total=true | 78 | 69 | (-9) | -12% | 45.4 | 25.8 | 0 → 0 |
| GET /api/v3/purl?total=true | 67 | 60 | (-7) | -10% | 43.0 | 22.4 | 0 → 0 |
| GET /api/v3/advisory/urn:uuid:{advisory_id}/download | 79 | 71 | (-8) | -10% | 29.3 | 20.5 | 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 | 4,500 | 3,900 | 141 |
| 2 | POST | /api/v3/vulnerability/analyze | 2,600 | 615 | 637 |
| 3 | GET | /api/v3/sbom/{sbom_id}/download | 2,400 | 2,252 | 130 |
| 4 | GET | /api/v3/sbom?q=name~redhat&total=true | 1,400 | 548 | 99 |
| 5 | GET | /api/v3/vulnerability?sort=base_score:desc&total=true | 1,300 | 553 | 297 |
| 6 | GET | /api/v3/advisory?q=CVE-2021-&total=true | 1,200 | 309 | 714 |
| 7 | POST | /api/v3/purl/recommend | 1,200 | 743 | 533 |
| 8 | GET | /api/v3/sbom?sort=ingested:desc&total=true | 880 | 297 | 116 |
| 9 | GET | /api/v3/purl?q=curl&total=true | 680 | 111 | 206 |
| 10 | GET | /api/v3/sbom?limit=10&sort=name:asc&total=true | 590 | 218 | 133 |
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 | 220 | 175 | 130 | 220 | 132 | 0% | |
| sbom | GET /api/v3/sbom/count-by-package | 10 | 74 | 78 | 69 | 85 | 25.7 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id} | 10 | 150 | 220 | 130 | 230 | 101 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/all-license-ids | 10 | 67 | 74 | 64 | 77 | 18.1 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/download | 10 | 2,400 | 3,200 | 2,100 | 3,300 | 2,252 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/license-export | 10 | 78 | 79 | 72 | 85 | 33.2 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/packages | 10 | 390 | 310 | 260 | 390 | 143 | 0% | |
| sbom | GET /api/v3/sbom/{sbom_id}/related | 10 | 270 | 270 | 180 | 290 | 107 | 0% | |
| sbom | GET /api/v3/sbom?limit=10&sort=name:asc&total=true | 10 | 590 | 605 | 380 | 760 | 218 | 0% | |
| sbom | GET /api/v3/sbom?offset=100&limit=10&total=true | 10 | 550 | 475 | 370 | 590 | 179 | 0% | |
| sbom | GET /api/v3/sbom?q=label:type=product&total=true | 10 | 72 | 74 | 68 | 78 | 19.5 | 0% | |
| sbom | GET /api/v3/sbom?q=license~GPL&sort=name:desc&total=true | 10 | 68 | 74 | 64 | 76 | 22.2 | 0% | |
| sbom | GET /api/v3/sbom?q=name~redhat&total=true | 10 | 1,400 | 1,350 | 1,000 | 1,500 | 548 | 0% | |
| sbom | GET /api/v3/sbom?q=published>2024-01-01&total=true | 10 | 580 | 465 | 310 | 640 | 167 | 0% | |
| sbom | GET /api/v3/sbom?sort=ingested:desc&total=true | 10 | 880 | 710 | 460 | 880 | 297 | 0% | |
| sbom | GET /api/v3/sbom?total=true | 10 | 470 | 400 | 290 | 490 | 151 | 0% | |
| advisory | GET /api/v3/advisory/urn:uuid:{advisory_id} | 10 | 100 | 110 | 100 | 110 | 53.5 | 0% | |
| advisory | GET /api/v3/advisory/urn:uuid:{advisory_id}/download | 10 | 71 | 78 | 66 | 81 | 20.5 | 0% | |
| advisory | GET /api/v3/advisory?deprecated=Consider&total=true | 10 | 83 | 92 | 76 | 120 | 50.5 | 0% | |
| advisory | GET /api/v3/advisory?limit=1&total=true | 10 | 110 | 115 | 97 | 470 | 68.0 | 0% | |
| advisory | GET /api/v3/advisory?limit=10&sort=ingested:desc&total=true | 10 | 78 | 82 | 71 | 89 | 48.9 | 0% | |
| advisory | GET /api/v3/advisory?offset=100&limit=10&total=true | 10 | 150 | 105 | 90 | 150 | 73.6 | 0% | |
| advisory | GET /api/v3/advisory?offset={offset}&limit=1 | 10 | 580 | 525 | 440 | 600 | 244 | 0% | |
| advisory | GET /api/v3/advisory?q=CVE-2021-&total=true | 10 | 1,200 | 1,700 | 880 | 1,800 | 309 | 0% | |
| advisory | GET /api/v3/advisory?q=identifier=CVE-2022-0981&total=true | 10 | 110 | 110 | 100 | 110 | 53.2 | 0% | |
| advisory | GET /api/v3/advisory?q=modified>3 days ago&total=true | 10 | 66 | 71 | 62 | 74 | 16.7 | 0% | |
| advisory | GET /api/v3/advisory?q=title~openssl&total=true | 10 | 84 | 96 | 77 | 100 | 32.8 | 0% | |
| advisory | GET /api/v3/advisory?sort=modified:desc&total=true | 10 | 82 | 89 | 74 | 100 | 46.1 | 0% | |
| advisory | GET /api/v3/advisory?total=true | 10 | 260 | 190 | 140 | 260 | 122 | 0% | |
| vulnerability | GET /api/v3/vulnerability?offset=100&limit=10&total=true | 10 | 67 | 110 | 65 | 110 | 25.6 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=base_score>=7.0&total=true | 10 | 75 | 79 | 67 | 300 | 31.4 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=base_severity=high&total=true | 10 | 69 | 80 | 65 | 300 | 25.8 | 0% | |
| vulnerability | GET /api/v3/vulnerability?q=cwes=CWE-79&total=true | 10 | 73 | 82 | 69 | 290 | 28.7 | 0% | |
| vulnerability | GET /api/v3/vulnerability?sort=base_score:desc&total=true | 10 | 1,300 | 1,400 | 1,100 | 1,800 | 553 | 0% | |
| vulnerability | GET /api/v3/vulnerability?total=true | 10 | 60 | 74 | 60 | 78 | 15.0 | 0% | |
| vulnerability | POST /api/v3/vulnerability/analyze | 10 | 2,600 | 3,050 | 2,300 | 4,000 | 615 | 0% | |
| purl | GET /api/v3/purl/base/{purl} | 10 | 320 | 275 | 220 | 320 | 91.3 | 0% | |
| purl | GET /api/v3/purl/base?q=namespace=redhat&total=true | 10 | 100 | 140 | 100 | 210 | 69.0 | 0% | |
| purl | GET /api/v3/purl/base?q=type=rpm&total=true | 10 | 95 | 100 | 95 | 110 | 50.2 | 0% | |
| purl | GET /api/v3/purl/base?sort=name:asc&total=true | 10 | 120 | 325 | 110 | 400 | 75.9 | 0% | |
| purl | GET /api/v3/purl/base?total=true | 10 | 100 | 110 | 100 | 110 | 60.8 | 0% | |
| purl | GET /api/v3/purl/{purl_id} | 10 | 150 | 185 | 110 | 210 | 62.8 | 0% | |
| purl | GET /api/v3/purl?offset=100&limit=10&total=true | 10 | 110 | 110 | 63 | 380 | 72.2 | 0% | |
| purl | GET /api/v3/purl?q=curl&total=true | 10 | 680 | 695 | 110 | 900 | 111 | 0% | |
| purl | GET /api/v3/purl?q=license~GPLv3+...&sort=name:desc&total=true | 10 | 63 | 72 | 63 | 80 | 22.0 | 0% | |
| purl | GET /api/v3/purl?q=name=curl&total=true | 10 | 77 | 80 | 74 | 150 | 26.9 | 0% | |
| purl | GET /api/v3/purl?q=purl:namespace=redhat&total=true | 10 | 68 | 1,900 | 68 | 2,700 | 135 | 0% | |
| purl | GET /api/v3/purl?q=purl:ty=rpm&total=true | 10 | 71 | 2,000 | 68 | 2,600 | 129 | 0% | |
| purl | GET /api/v3/purl?sort=purl:name:asc&total=true | 10 | 190 | 445 | 160 | 4,200 | 42.5 | 0% | |
| purl | GET /api/v3/purl?total=true | 10 | 60 | 68 | 60 | 2,800 | 22.4 | 0% | |
| purl | POST /api/v3/purl/recommend | 10 | 1,200 | 1,500 | 1,000 | 1,500 | 743 | 0% | |
| license | GET /api/v3/license/spdx/license/{license_id} | 10 | 45 | 46 | 44 | 46 | 41.2 | 0% | |
| license | GET /api/v3/license/spdx/license?q=apache&total=true | 10 | 4 | 6 | 4 | 7 | 2.46 | 0% | |
| license | GET /api/v3/license/spdx/license?q=gpl&total=true | 10 | 45 | 46 | 44 | 46 | 41.5 | 0% | |
| license | GET /api/v3/license/spdx/license?total=true | 10 | 45 | 46 | 44 | 47 | 41.2 | 0% | |
| license | GET /api/v3/license?limit=10&sort=license:asc&total=true | 10 | 74 | 83 | 65 | 86 | 27.3 | 0% | |
| license | GET /api/v3/license?q=ASL&sort=license:desc&total=true | 10 | 66 | 77 | 61 | 79 | 22.4 | 0% | |
| license | GET /api/v3/license?q=license~Apache&total=true | 10 | 65 | 72 | 60 | 76 | 20.8 | 0% | |
| license | GET /api/v3/license?q=license~GPL&total=true | 10 | 64 | 72 | 60 | 74 | 20.2 | 0% | |
| license | GET /api/v3/license?total=true | 10 | 110 | 120 | 100 | 120 | 64.0 | 0% | |
| analysis | GET /api/v3/analysis/component/{component} | 10 | 59 | 69 | 55 | 70 | 7.09 | 0% | |
| analysis | GET /api/v3/analysis/latest/component/{cpe} | 10 | 60 | 69 | 56 | 70 | 7.38 | 0% | |
| analysis | GET /api/v3/analysis/status | 10 | 57 | 69 | 56 | 70 | 6.75 | 0% | |
| importer | GET /api/v3/importer?total=true | 10 | 47 | 66 | 39 | 67 | 5.64 | 0% | |
| group | GET /api/v3/group/sbom?parents=resolve&total=true | 10 | 59 | 68 | 55 | 69 | 6.95 | 0% | |
| group | GET /api/v3/group/sbom?total=true | 10 | 57 | 68 | 56 | 69 | 6.70 | 0% | |
| group | GET /api/v3/group/sbom?totals=true&total=true | 10 | 58 | 68 | 55 | 69 | 6.93 | 0% | |
| labels | GET /api/v3/advisory-labels?filter_text=type&limit=1000 | 10 | 4,500 | 6,400 | 3,400 | 6,800 | 3,900 | 0% | |
| labels | GET /api/v3/sbom-labels?limit=10&filter_text=&total=true | 10 | 110 | 120 | 100 | 120 | 63.8 | 0% | |
| labels | GET /api/v3/sbom-labels?total=true | 10 | 110 | 115 | 100 | 120 | 65.0 | 0% | |
| other | GET /.well-known/trustify | 10 | 44 | 45 | 44 | 46 | 41.3 | 0% | |
| other | POST /api/v3/ui/extract-sbom-purls | 10 | 4 | 6 | 3 | 6 | 1.82 | 0% |
Runs
| Started (UTC) | Run | Source | Duration | Users | # Requests | Fail % | RPS | Average (ms) | 95%ile | 99%ile |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-28 05:05 | branch_0.7.z_2026-10-28T04-10-46_595c74b | Workflow run | 9m 58s | 10 | 322,239 | 0.0% | 537.9 (+204.5) | 18.1 (-11.1) | 63 (-9) | 120 (-70) |
| 2026-10-27 05:01 | branch_0.7.z_2026-10-27T04-11-08_9f25ba2 | Workflow run | 9m 58s | 10 | 199,819 | 0.0% | 333.4 (-255.6) | 29.2 (+12.6) | 72 (+11) | 190 (+90) |
| 2026-10-26 11:13 | branch_0.7.z_2026-10-26T10-33-56_e164b7e | Workflow run | 9m 58s | 10 | 352,928 | 0.0% | 588.9 (+259.7) | 16.6 (-13.0) | 61 (-11) | 100 (-100) |
| 2026-10-26 05:04 | branch_0.7.z_2026-10-26T04-14-29_4b6e0c2 | Workflow run | 9m 58s | 10 | 197,259 | 0.0% | 329.2 (+17.8) | 29.6 (-1.7) | 72 (-1) | 200 (-10) |
| 2026-10-25 06:45 | branch_0.7.z_2026-10-25T05-55-13_4b6e0c2 | Workflow run | 9m 58s | 10 | 186,588 | 0.0% | 311.4 (-208.2) | 31.2 (+12.5) | 73 (+9) | 210 (+90) |
| 2026-10-24 06:10 | branch_0.7.z_2026-10-24T05-13-26_9c54e1d | Workflow run | 9m 58s | 10 | 311,263 | 0.0% | 519.6 (+199.5) | 18.8 (-11.6) | 64 (-9) | 120 (-80) |
| 2026-10-23 05:22 | branch_0.7.z_2026-10-23T04-33-04_9c54e1d | Workflow run | 9m 58s | 10 | 191,779 | 0.0% | 320.1 (+1.3) | 30.4 (-0.1) | 73 (0) | 200 (0) |
| 2026-10-22 14:49 | branch_0.7.z_2026-10-22T13-59-05_9c54e1d | Workflow run | 9m 59s | 10 | 191,136 | 0.0% | 318.8 (+2.3) | 30.5 (-0.2) | 73 (+1) | 200 (+10) |
| 2026-10-22 05:16 | branch_0.7.z_2026-10-22T04-26-10_9c54e1d | Workflow run | 9m 58s | 10 | 189,583 | 0.0% | 316.5 (-29.3) | 30.7 (+2.6) | 72 (0) | 190 (0) |
| 2026-10-20 18:39 | branch_0.7.z_2026-10-20T17-51-03_9c54e1d | Workflow run | 10m 00s | 10 | 207,350 | 0.0% | 345.8 | 28.2 | 72 | 190 |