Skip to content

Support sending OpenTelemetry metrics over OTLP (http/protobuf)#11055

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 11 commits intomasterfrom
mcculls/otlp-http-sender
Apr 7, 2026
Merged

Support sending OpenTelemetry metrics over OTLP (http/protobuf)#11055
gh-worker-dd-mergequeue-cf854d[bot] merged 11 commits intomasterfrom
mcculls/otlp-http-sender

Conversation

@mcculls
Copy link
Copy Markdown
Contributor

@mcculls mcculls commented Apr 4, 2026

Additional Notes

Also fixes instrument temporality reported over OTLP

Contributor Checklist

Jira ticket: [PROJ-IDENT]

Note: Once your PR is ready to merge, add it to the merge queue by commenting /merge. /merge -c cancels the queue request. /merge -f --reason "reason" skips all merge queue checks; please use this judiciously, as some checks do not run at the PR-level. For more information, see this doc.

@mcculls mcculls added type: feature request inst: opentelemetry OpenTelemetry instrumentation labels Apr 4, 2026
@pr-commenter
Copy link
Copy Markdown

pr-commenter bot commented Apr 4, 2026

Benchmarks

⚠️ Warning: Baseline build not found for merge-base commit. Comparing against the latest commit on master instead.

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/otlp-http-sender
git_commit_date 1775511532 1775528320
git_commit_sha 3123b19 6921b18
release_version 1.61.0-SNAPSHOT~3123b191d9 1.61.0-SNAPSHOT~6921b18b3c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1775530134 1775530134
ci_job_id 1571735969 1571735969
ci_pipeline_id 106309961 106309961
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-yitqfllp 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-yitqfllp 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 13 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.062 s) : 0, 1061699
Total [baseline] (8.88 s) : 0, 8880426
Agent [candidate] (1.059 s) : 0, 1059288
Total [candidate] (8.893 s) : 0, 8892592
section iast
Agent [baseline] (1.227 s) : 0, 1227285
Total [baseline] (9.559 s) : 0, 9559038
Agent [candidate] (1.22 s) : 0, 1220013
Total [candidate] (9.557 s) : 0, 9556635
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.062 s -
Agent iast 1.227 s 165.585 ms (15.6%)
Total tracing 8.88 s -
Total iast 9.559 s 678.612 ms (7.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.059 s -
Agent iast 1.22 s 160.725 ms (15.2%)
Total tracing 8.893 s -
Total iast 9.557 s 664.043 ms (7.5%)
gantt
    title insecure-bank - break down per module: candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.246 ms) : 0, 1246
crashtracking [candidate] (1.235 ms) : 0, 1235
BytebuddyAgent [baseline] (637.155 ms) : 0, 637155
BytebuddyAgent [candidate] (634.665 ms) : 0, 634665
AgentMeter [baseline] (29.382 ms) : 0, 29382
AgentMeter [candidate] (29.32 ms) : 0, 29320
GlobalTracer [baseline] (249.686 ms) : 0, 249686
GlobalTracer [candidate] (249.354 ms) : 0, 249354
AppSec [baseline] (32.211 ms) : 0, 32211
AppSec [candidate] (32.172 ms) : 0, 32172
Debugger [baseline] (59.52 ms) : 0, 59520
Debugger [candidate] (59.436 ms) : 0, 59436
Remote Config [baseline] (621.28 µs) : 0, 621
Remote Config [candidate] (598.543 µs) : 0, 599
Telemetry [baseline] (8.119 ms) : 0, 8119
Telemetry [candidate] (8.114 ms) : 0, 8114
Flare Poller [baseline] (7.401 ms) : 0, 7401
Flare Poller [candidate] (8.221 ms) : 0, 8221
section iast
crashtracking [baseline] (1.233 ms) : 0, 1233
crashtracking [candidate] (1.223 ms) : 0, 1223
BytebuddyAgent [baseline] (804.377 ms) : 0, 804377
BytebuddyAgent [candidate] (799.596 ms) : 0, 799596
AgentMeter [baseline] (11.523 ms) : 0, 11523
AgentMeter [candidate] (11.387 ms) : 0, 11387
GlobalTracer [baseline] (239.523 ms) : 0, 239523
GlobalTracer [candidate] (238.053 ms) : 0, 238053
AppSec [baseline] (31.114 ms) : 0, 31114
AppSec [candidate] (31.619 ms) : 0, 31619
Debugger [baseline] (62.553 ms) : 0, 62553
Debugger [candidate] (61.655 ms) : 0, 61655
Remote Config [baseline] (576.847 µs) : 0, 577
Remote Config [candidate] (555.073 µs) : 0, 555
Telemetry [baseline] (9.779 ms) : 0, 9779
Telemetry [candidate] (10.189 ms) : 0, 10189
Flare Poller [baseline] (3.605 ms) : 0, 3605
Flare Poller [candidate] (3.579 ms) : 0, 3579
IAST [baseline] (26.763 ms) : 0, 26763
IAST [candidate] (25.833 ms) : 0, 25833
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1056583
Total [baseline] (11.124 s) : 0, 11123764
Agent [candidate] (1.065 s) : 0, 1065439
Total [candidate] (11.122 s) : 0, 11122390
section appsec
Agent [baseline] (1.246 s) : 0, 1246329
Total [baseline] (11.179 s) : 0, 11178773
Agent [candidate] (1.246 s) : 0, 1245957
Total [candidate] (11.164 s) : 0, 11164431
section iast
Agent [baseline] (1.227 s) : 0, 1226583
Total [baseline] (11.183 s) : 0, 11183157
Agent [candidate] (1.228 s) : 0, 1228416
Total [candidate] (11.269 s) : 0, 11269494
section profiling
Agent [baseline] (1.181 s) : 0, 1180858
Total [baseline] (11.044 s) : 0, 11043572
Agent [candidate] (1.184 s) : 0, 1184400
Total [candidate] (10.991 s) : 0, 10991323
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.057 s -
Agent appsec 1.246 s 189.746 ms (18.0%)
Agent iast 1.227 s 170.0 ms (16.1%)
Agent profiling 1.181 s 124.276 ms (11.8%)
Total tracing 11.124 s -
Total appsec 11.179 s 55.009 ms (0.5%)
Total iast 11.183 s 59.393 ms (0.5%)
Total profiling 11.044 s -80.192 ms (-0.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.065 s -
Agent appsec 1.246 s 180.518 ms (16.9%)
Agent iast 1.228 s 162.977 ms (15.3%)
Agent profiling 1.184 s 118.962 ms (11.2%)
Total tracing 11.122 s -
Total appsec 11.164 s 42.041 ms (0.4%)
Total iast 11.269 s 147.104 ms (1.3%)
Total profiling 10.991 s -131.067 ms (-1.2%)
gantt
    title petclinic - break down per module: candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.245 ms) : 0, 1245
crashtracking [candidate] (1.227 ms) : 0, 1227
BytebuddyAgent [baseline] (633.099 ms) : 0, 633099
BytebuddyAgent [candidate] (637.023 ms) : 0, 637023
AgentMeter [baseline] (29.186 ms) : 0, 29186
AgentMeter [candidate] (29.358 ms) : 0, 29358
GlobalTracer [baseline] (248.282 ms) : 0, 248282
GlobalTracer [candidate] (250.475 ms) : 0, 250475
AppSec [baseline] (31.991 ms) : 0, 31991
AppSec [candidate] (32.405 ms) : 0, 32405
Debugger [baseline] (60.206 ms) : 0, 60206
Debugger [candidate] (60.721 ms) : 0, 60721
Remote Config [baseline] (618.894 µs) : 0, 619
Remote Config [candidate] (604.971 µs) : 0, 605
Telemetry [baseline] (8.164 ms) : 0, 8164
Telemetry [candidate] (8.2 ms) : 0, 8200
Flare Poller [baseline] (7.409 ms) : 0, 7409
Flare Poller [candidate] (9.028 ms) : 0, 9028
section appsec
crashtracking [baseline] (1.233 ms) : 0, 1233
crashtracking [candidate] (1.23 ms) : 0, 1230
BytebuddyAgent [baseline] (660.034 ms) : 0, 660034
BytebuddyAgent [candidate] (660.161 ms) : 0, 660161
AgentMeter [baseline] (12.055 ms) : 0, 12055
AgentMeter [candidate] (12.129 ms) : 0, 12129
GlobalTracer [baseline] (249.215 ms) : 0, 249215
GlobalTracer [candidate] (248.884 ms) : 0, 248884
AppSec [baseline] (183.818 ms) : 0, 183818
AppSec [candidate] (183.951 ms) : 0, 183951
Debugger [baseline] (66.25 ms) : 0, 66250
Debugger [candidate] (66.047 ms) : 0, 66047
Remote Config [baseline] (605.392 µs) : 0, 605
Remote Config [candidate] (609.766 µs) : 0, 610
Telemetry [baseline] (8.78 ms) : 0, 8780
Telemetry [candidate] (8.597 ms) : 0, 8597
Flare Poller [baseline] (3.584 ms) : 0, 3584
Flare Poller [candidate] (3.513 ms) : 0, 3513
IAST [baseline] (24.408 ms) : 0, 24408
IAST [candidate] (24.506 ms) : 0, 24506
section iast
crashtracking [baseline] (1.232 ms) : 0, 1232
crashtracking [candidate] (1.231 ms) : 0, 1231
BytebuddyAgent [baseline] (804.698 ms) : 0, 804698
BytebuddyAgent [candidate] (806.283 ms) : 0, 806283
AgentMeter [baseline] (11.475 ms) : 0, 11475
AgentMeter [candidate] (11.516 ms) : 0, 11516
GlobalTracer [baseline] (238.483 ms) : 0, 238483
GlobalTracer [candidate] (238.81 ms) : 0, 238810
AppSec [baseline] (32.459 ms) : 0, 32459
AppSec [candidate] (30.822 ms) : 0, 30822
Debugger [baseline] (61.501 ms) : 0, 61501
Debugger [candidate] (63.852 ms) : 0, 63852
Remote Config [baseline] (553.983 µs) : 0, 554
Remote Config [candidate] (561.737 µs) : 0, 562
Telemetry [baseline] (9.893 ms) : 0, 9893
Telemetry [candidate] (10.002 ms) : 0, 10002
Flare Poller [baseline] (3.416 ms) : 0, 3416
Flare Poller [candidate] (3.52 ms) : 0, 3520
IAST [baseline] (26.439 ms) : 0, 26439
IAST [candidate] (25.672 ms) : 0, 25672
section profiling
crashtracking [baseline] (1.193 ms) : 0, 1193
crashtracking [candidate] (1.172 ms) : 0, 1172
BytebuddyAgent [baseline] (689.562 ms) : 0, 689562
BytebuddyAgent [candidate] (691.591 ms) : 0, 691591
AgentMeter [baseline] (9.123 ms) : 0, 9123
AgentMeter [candidate] (9.133 ms) : 0, 9133
GlobalTracer [baseline] (206.257 ms) : 0, 206257
GlobalTracer [candidate] (207.148 ms) : 0, 207148
AppSec [baseline] (32.409 ms) : 0, 32409
AppSec [candidate] (32.577 ms) : 0, 32577
Debugger [baseline] (65.429 ms) : 0, 65429
Debugger [candidate] (65.654 ms) : 0, 65654
Remote Config [baseline] (571.584 µs) : 0, 572
Remote Config [candidate] (570.025 µs) : 0, 570
Telemetry [baseline] (7.856 ms) : 0, 7856
Telemetry [candidate] (7.813 ms) : 0, 7813
Flare Poller [baseline] (3.529 ms) : 0, 3529
Flare Poller [candidate] (3.535 ms) : 0, 3535
ProfilingAgent [baseline] (93.762 ms) : 0, 93762
ProfilingAgent [candidate] (93.844 ms) : 0, 93844
Profiling [baseline] (94.332 ms) : 0, 94332
Profiling [candidate] (94.4 ms) : 0, 94400
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/otlp-http-sender
git_commit_date 1775511532 1775528320
git_commit_sha 3123b19 6921b18
release_version 1.61.0-SNAPSHOT~3123b191d9 1.61.0-SNAPSHOT~6921b18b3c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1775530515 1775530515
ci_job_id 1571735970 1571735970
ci_pipeline_id 106309961 106309961
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-q6qdzlqn 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-q6qdzlqn 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 1 performance regressions! Performance is the same for 18 metrics, 17 unstable metrics.

scenario Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p95 Δ mean throughput candidate mean agg_http_req_duration_p50 candidate mean agg_http_req_duration_p95 candidate mean throughput baseline mean agg_http_req_duration_p50 baseline mean agg_http_req_duration_p95 baseline mean throughput
scenario:load:insecure-bank:iast:high_load worse
[+58.661µs; +165.174µs] or [+2.377%; +6.693%]
unstable
[-275.923µs; +1671.419µs] or [-3.766%; +22.815%]
unstable
[-231.501op/s; +92.938op/s] or [-16.049%; +6.443%]
2.580ms 8.024ms 1373.156op/s 2.468ms 7.326ms 1442.438op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.236 ms) : 1224, 1248
.   : milestone, 1236,
iast (3.171 ms) : 3128, 3214
.   : milestone, 3171,
iast_FULL (6.111 ms) : 6048, 6174
.   : milestone, 6111,
iast_GLOBAL (3.686 ms) : 3617, 3754
.   : milestone, 3686,
profiling (2.143 ms) : 2122, 2164
.   : milestone, 2143,
tracing (1.917 ms) : 1901, 1934
.   : milestone, 1917,
section candidate
no_agent (1.252 ms) : 1239, 1265
.   : milestone, 1252,
iast (3.334 ms) : 3285, 3383
.   : milestone, 3334,
iast_FULL (6.081 ms) : 6019, 6143
.   : milestone, 6081,
iast_GLOBAL (3.707 ms) : 3646, 3769
.   : milestone, 3707,
profiling (2.064 ms) : 2046, 2082
.   : milestone, 2064,
tracing (1.918 ms) : 1902, 1934
.   : milestone, 1918,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.236 ms [1.224 ms, 1.248 ms] -
iast 3.171 ms [3.128 ms, 3.214 ms] 1.935 ms (156.6%)
iast_FULL 6.111 ms [6.048 ms, 6.174 ms] 4.875 ms (394.4%)
iast_GLOBAL 3.686 ms [3.617 ms, 3.754 ms] 2.45 ms (198.2%)
profiling 2.143 ms [2.122 ms, 2.164 ms] 906.988 µs (73.4%)
tracing 1.917 ms [1.901 ms, 1.934 ms] 681.387 µs (55.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.252 ms [1.239 ms, 1.265 ms] -
iast 3.334 ms [3.285 ms, 3.383 ms] 2.082 ms (166.3%)
iast_FULL 6.081 ms [6.019 ms, 6.143 ms] 4.829 ms (385.8%)
iast_GLOBAL 3.707 ms [3.646 ms, 3.769 ms] 2.455 ms (196.1%)
profiling 2.064 ms [2.046 ms, 2.082 ms] 812.503 µs (64.9%)
tracing 1.918 ms [1.902 ms, 1.934 ms] 666.072 µs (53.2%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9
    dateFormat X
    axisFormat %s
section baseline
no_agent (19.434 ms) : 19240, 19627
.   : milestone, 19434,
appsec (18.928 ms) : 18733, 19123
.   : milestone, 18928,
code_origins (17.892 ms) : 17714, 18070
.   : milestone, 17892,
iast (18.016 ms) : 17838, 18195
.   : milestone, 18016,
profiling (18.865 ms) : 18678, 19052
.   : milestone, 18865,
tracing (17.656 ms) : 17484, 17828
.   : milestone, 17656,
section candidate
no_agent (19.848 ms) : 19637, 20060
.   : milestone, 19848,
appsec (18.843 ms) : 18653, 19033
.   : milestone, 18843,
code_origins (18.019 ms) : 17839, 18199
.   : milestone, 18019,
iast (18.262 ms) : 18083, 18441
.   : milestone, 18262,
profiling (18.726 ms) : 18542, 18911
.   : milestone, 18726,
tracing (17.594 ms) : 17419, 17768
.   : milestone, 17594,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.434 ms [19.24 ms, 19.627 ms] -
appsec 18.928 ms [18.733 ms, 19.123 ms] -505.993 µs (-2.6%)
code_origins 17.892 ms [17.714 ms, 18.07 ms] -1.542 ms (-7.9%)
iast 18.016 ms [17.838 ms, 18.195 ms] -1.417 ms (-7.3%)
profiling 18.865 ms [18.678 ms, 19.052 ms] -568.817 µs (-2.9%)
tracing 17.656 ms [17.484 ms, 17.828 ms] -1.777 ms (-9.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.848 ms [19.637 ms, 20.06 ms] -
appsec 18.843 ms [18.653 ms, 19.033 ms] -1.005 ms (-5.1%)
code_origins 18.019 ms [17.839 ms, 18.199 ms] -1.829 ms (-9.2%)
iast 18.262 ms [18.083 ms, 18.441 ms] -1.586 ms (-8.0%)
profiling 18.726 ms [18.542 ms, 18.911 ms] -1.122 ms (-5.7%)
tracing 17.594 ms [17.419 ms, 17.768 ms] -2.255 ms (-11.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/otlp-http-sender
git_commit_date 1775511532 1775528320
git_commit_sha 3123b19 6921b18
release_version 1.61.0-SNAPSHOT~3123b191d9 1.61.0-SNAPSHOT~6921b18b3c
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1775530408 1775530408
ci_job_id 1571735971 1571735971
ci_pipeline_id 106309961 106309961
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-2iwchjjg 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-2iwchjjg 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.493 ms) : 1482, 1505
.   : milestone, 1493,
appsec (3.834 ms) : 3610, 4058
.   : milestone, 3834,
iast (2.292 ms) : 2223, 2362
.   : milestone, 2292,
iast_GLOBAL (2.329 ms) : 2260, 2399
.   : milestone, 2329,
profiling (2.134 ms) : 2077, 2191
.   : milestone, 2134,
tracing (2.102 ms) : 2048, 2156
.   : milestone, 2102,
section candidate
no_agent (1.502 ms) : 1490, 1514
.   : milestone, 1502,
appsec (3.866 ms) : 3642, 4091
.   : milestone, 3866,
iast (2.281 ms) : 2212, 2350
.   : milestone, 2281,
iast_GLOBAL (2.339 ms) : 2269, 2409
.   : milestone, 2339,
profiling (2.111 ms) : 2056, 2166
.   : milestone, 2111,
tracing (2.097 ms) : 2043, 2151
.   : milestone, 2097,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.493 ms [1.482 ms, 1.505 ms] -
appsec 3.834 ms [3.61 ms, 4.058 ms] 2.34 ms (156.7%)
iast 2.292 ms [2.223 ms, 2.362 ms] 798.857 µs (53.5%)
iast_GLOBAL 2.329 ms [2.26 ms, 2.399 ms] 835.663 µs (56.0%)
profiling 2.134 ms [2.077 ms, 2.191 ms] 640.21 µs (42.9%)
tracing 2.102 ms [2.048 ms, 2.156 ms] 608.419 µs (40.7%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.502 ms [1.49 ms, 1.514 ms] -
appsec 3.866 ms [3.642 ms, 4.091 ms] 2.364 ms (157.4%)
iast 2.281 ms [2.212 ms, 2.35 ms] 778.94 µs (51.9%)
iast_GLOBAL 2.339 ms [2.269 ms, 2.409 ms] 837.176 µs (55.7%)
profiling 2.111 ms [2.056 ms, 2.166 ms] 609.013 µs (40.5%)
tracing 2.097 ms [2.043 ms, 2.151 ms] 595.189 µs (39.6%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~6921b18b3c, baseline=1.61.0-SNAPSHOT~3123b191d9
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.967 s) : 14967000, 14967000
.   : milestone, 14967000,
appsec (14.596 s) : 14596000, 14596000
.   : milestone, 14596000,
iast (18.686 s) : 18686000, 18686000
.   : milestone, 18686000,
iast_GLOBAL (17.834 s) : 17834000, 17834000
.   : milestone, 17834000,
profiling (15.07 s) : 15070000, 15070000
.   : milestone, 15070000,
tracing (14.917 s) : 14917000, 14917000
.   : milestone, 14917000,
section candidate
no_agent (15.407 s) : 15407000, 15407000
.   : milestone, 15407000,
appsec (15.007 s) : 15007000, 15007000
.   : milestone, 15007000,
iast (18.366 s) : 18366000, 18366000
.   : milestone, 18366000,
iast_GLOBAL (18.038 s) : 18038000, 18038000
.   : milestone, 18038000,
profiling (15.075 s) : 15075000, 15075000
.   : milestone, 15075000,
tracing (14.923 s) : 14923000, 14923000
.   : milestone, 14923000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.967 s [14.967 s, 14.967 s] -
appsec 14.596 s [14.596 s, 14.596 s] -371.0 ms (-2.5%)
iast 18.686 s [18.686 s, 18.686 s] 3.719 s (24.8%)
iast_GLOBAL 17.834 s [17.834 s, 17.834 s] 2.867 s (19.2%)
profiling 15.07 s [15.07 s, 15.07 s] 103.0 ms (0.7%)
tracing 14.917 s [14.917 s, 14.917 s] -50.0 ms (-0.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.407 s [15.407 s, 15.407 s] -
appsec 15.007 s [15.007 s, 15.007 s] -400.0 ms (-2.6%)
iast 18.366 s [18.366 s, 18.366 s] 2.959 s (19.2%)
iast_GLOBAL 18.038 s [18.038 s, 18.038 s] 2.631 s (17.1%)
profiling 15.075 s [15.075 s, 15.075 s] -332.0 ms (-2.2%)
tracing 14.923 s [14.923 s, 14.923 s] -484.0 ms (-3.1%)

@mcculls mcculls marked this pull request as ready for review April 5, 2026 14:51
@mcculls mcculls requested review from a team as code owners April 5, 2026 14:51
@mcculls mcculls requested review from PerfectSlayer, mhlidd and mtoffl01 and removed request for a team April 5, 2026 14:51
Copy link
Copy Markdown
Contributor

@mtoffl01 mtoffl01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nits, otherwise LGTM from the traces perspective!

Comment on lines +74 to +76
.header("Content-Length", "-1")
.header("Content-Encoding", "gzip")
.header("Transfer-Encoding", "chunked");
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, I did the same (chunked transfer encoding) in dd-trace-go

@mcculls mcculls force-pushed the mcculls/otlp-http-sender branch from 95c4018 to 274c553 Compare April 7, 2026 01:54
mcculls added 2 commits April 7, 2026 02:59
Avoids a fleet of apps starting at the same time from exporting OTLP metrics in sync
@mcculls mcculls force-pushed the mcculls/otlp-http-sender branch from 83382f2 to 1ed021a Compare April 7, 2026 02:00
Copy link
Copy Markdown
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❔ question: ‏Instead of implementing two encoding for the OtlpGrpcRequestBody payload, what about using the OkHttpUtils.gzippedRequestBodyOf() decorator instead for the gzip part? That would keep it simpler and help with later http component refactoring.

@mcculls
Copy link
Copy Markdown
Contributor Author

mcculls commented Apr 7, 2026

/merge

@gh-worker-devflow-routing-ef8351
Copy link
Copy Markdown

gh-worker-devflow-routing-ef8351 bot commented Apr 7, 2026

View all feedbacks in Devflow UI.

2026-04-07 08:38:58 UTC ℹ️ Start processing command /merge


2026-04-07 08:39:03 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in master is approximately 2h (p90).


2026-04-07 09:41:55 UTC ℹ️ MergeQueue: This merge request was merged

@mcculls
Copy link
Copy Markdown
Contributor Author

mcculls commented Apr 7, 2026

❔ question: ‏Instead of implementing two encoding for the OtlpGrpcRequestBody payload, what about using the OkHttpUtils.gzippedRequestBodyOf() decorator instead for the gzip part? That would keep it simpler and help with later http component refactoring.

Unfortunately we can't use the gzippedRequestBodyOf decorator as-is for GRPC because it gzips the entire decorated request - whereas for GRPC we need to first gzip the payload completely and then add some control bytes in order to get the final request.

This means for gzipped GRPC we would need 3 request instances:

  1. a request holding the original payload
  2. the wrapper created by gzippedRequestBodyOf around the first request
  3. another request wrapper to add the GRPC compressed control bytes

and we can't write the GRPC control bytes until we've gzipped the payload to see how long it is, as the length of the gzipped data is part of those control bytes...

That doesn't mean that we couldn't improve reusability of these components though in the future...

@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot merged commit 0e4a2ca into master Apr 7, 2026
566 checks passed
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot deleted the mcculls/otlp-http-sender branch April 7, 2026 09:41
@github-actions github-actions bot added this to the 1.61.0 milestone Apr 7, 2026
@mcculls mcculls changed the title Support sending OpenTelemetry metrics over HTTP/protobuf Support sending OpenTelemetry metrics over OTLP Apr 7, 2026
@mcculls mcculls changed the title Support sending OpenTelemetry metrics over OTLP Support sending OpenTelemetry metrics over OTLP (http/protobuf) Apr 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants