Skip to content

Support adding W3C baggage as span tags #9169

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 19 commits into from
Jul 23, 2025

Conversation

rachelyangdog
Copy link
Contributor

@rachelyangdog rachelyangdog commented Jul 14, 2025

What Does This Do

This PR introduces automatic adding of W3C baggage key-value pairs as span tags, prefixed with baggage..

The new configuration option DD_TRACE_BAGGAGE_TAG_KEYS allows customization of this feature. By default the following baggage entries are automatically added as span tags: user.id, session.id, account.id

See the related RFC for more details.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@rachelyangdog rachelyangdog requested a review from a team as a code owner July 14, 2025 15:31
@rachelyangdog rachelyangdog requested a review from ygree July 14, 2025 15:31
@rachelyangdog rachelyangdog marked this pull request as draft July 14, 2025 15:31
Copy link
Contributor

github-actions bot commented Jul 14, 2025

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@pr-commenter
Copy link

pr-commenter bot commented Jul 14, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master rachel.yang/baggage-span-tags
git_commit_date 1753206619 1753208992
git_commit_sha 7b6259d a22edab
release_version 1.51.1-SNAPSHOT~7b6259d446 1.51.1-SNAPSHOT~a22edabb0c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1753210727 1753210727
ci_job_id 1041904641 1041904641
ci_pipeline_id 71359044 71359044
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-3vzbmpkz 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-3vzbmpkz 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 49 metrics, 10 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.039 s) : 0, 1038533
Total [baseline] (8.638 s) : 0, 8637676
Agent [candidate] (1.043 s) : 0, 1042957
Total [candidate] (8.632 s) : 0, 8631923
section iast
Agent [baseline] (1.185 s) : 0, 1184934
Total [baseline] (9.371 s) : 0, 9370576
Agent [candidate] (1.178 s) : 0, 1178275
Total [candidate] (9.276 s) : 0, 9276371
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.039 s -
Agent iast 1.185 s 146.401 ms (14.1%)
Total tracing 8.638 s -
Total iast 9.371 s 732.9 ms (8.5%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.043 s -
Agent iast 1.178 s 135.318 ms (13.0%)
Total tracing 8.632 s -
Total iast 9.276 s 644.448 ms (7.5%)
gantt
    title insecure-bank - break down per module: candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.426 ms) : 0, 1426
crashtracking [candidate] (1.442 ms) : 0, 1442
BytebuddyAgent [baseline] (729.257 ms) : 0, 729257
BytebuddyAgent [candidate] (732.371 ms) : 0, 732371
GlobalTracer [baseline] (241.619 ms) : 0, 241619
GlobalTracer [candidate] (242.737 ms) : 0, 242737
AppSec [baseline] (30.316 ms) : 0, 30316
AppSec [candidate] (30.472 ms) : 0, 30472
Debugger [baseline] (6.013 ms) : 0, 6013
Debugger [candidate] (6.003 ms) : 0, 6003
Remote Config [baseline] (637.629 µs) : 0, 638
Remote Config [candidate] (645.994 µs) : 0, 646
Telemetry [baseline] (8.251 ms) : 0, 8251
Telemetry [candidate] (8.263 ms) : 0, 8263
section iast
crashtracking [baseline] (1.441 ms) : 0, 1441
crashtracking [candidate] (1.437 ms) : 0, 1437
BytebuddyAgent [baseline] (855.592 ms) : 0, 855592
BytebuddyAgent [candidate] (850.438 ms) : 0, 850438
GlobalTracer [baseline] (233.331 ms) : 0, 233331
GlobalTracer [candidate] (232.969 ms) : 0, 232969
AppSec [baseline] (30.264 ms) : 0, 30264
AppSec [candidate] (30.495 ms) : 0, 30495
Debugger [baseline] (5.832 ms) : 0, 5832
Debugger [candidate] (5.787 ms) : 0, 5787
Remote Config [baseline] (610.041 µs) : 0, 610
Remote Config [candidate] (594.907 µs) : 0, 595
Telemetry [baseline] (8.121 ms) : 0, 8121
Telemetry [candidate] (7.986 ms) : 0, 7986
IAST [baseline] (28.596 ms) : 0, 28596
IAST [candidate] (27.564 ms) : 0, 27564
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.04 s) : 0, 1039506
Total [baseline] (10.667 s) : 0, 10667495
Agent [candidate] (1.049 s) : 0, 1049325
Total [candidate] (10.731 s) : 0, 10731060
section appsec
Agent [baseline] (1.219 s) : 0, 1218552
Total [baseline] (10.788 s) : 0, 10788205
Agent [candidate] (1.229 s) : 0, 1229054
Total [candidate] (10.874 s) : 0, 10874250
section iast
Agent [baseline] (1.175 s) : 0, 1174893
Total [baseline] (10.956 s) : 0, 10955543
Agent [candidate] (1.178 s) : 0, 1178016
Total [candidate] (11.031 s) : 0, 11030955
section profiling
Agent [baseline] (1.185 s) : 0, 1185020
Total [baseline] (10.893 s) : 0, 10892601
Agent [candidate] (1.187 s) : 0, 1187172
Total [candidate] (10.918 s) : 0, 10918293
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.04 s -
Agent appsec 1.219 s 179.046 ms (17.2%)
Agent iast 1.175 s 135.387 ms (13.0%)
Agent profiling 1.185 s 145.515 ms (14.0%)
Total tracing 10.667 s -
Total appsec 10.788 s 120.71 ms (1.1%)
Total iast 10.956 s 288.048 ms (2.7%)
Total profiling 10.893 s 225.106 ms (2.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.049 s -
Agent appsec 1.229 s 179.73 ms (17.1%)
Agent iast 1.178 s 128.691 ms (12.3%)
Agent profiling 1.187 s 137.847 ms (13.1%)
Total tracing 10.731 s -
Total appsec 10.874 s 143.19 ms (1.3%)
Total iast 11.031 s 299.895 ms (2.8%)
Total profiling 10.918 s 187.233 ms (1.7%)
gantt
    title petclinic - break down per module: candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.433 ms) : 0, 1433
crashtracking [candidate] (1.453 ms) : 0, 1453
BytebuddyAgent [baseline] (730.064 ms) : 0, 730064
BytebuddyAgent [candidate] (736.131 ms) : 0, 736131
GlobalTracer [baseline] (241.747 ms) : 0, 241747
GlobalTracer [candidate] (244.106 ms) : 0, 244106
AppSec [baseline] (30.267 ms) : 0, 30267
AppSec [candidate] (30.667 ms) : 0, 30667
Debugger [baseline] (6.003 ms) : 0, 6003
Debugger [candidate] (6.082 ms) : 0, 6082
Remote Config [baseline] (647.549 µs) : 0, 648
Remote Config [candidate] (650.702 µs) : 0, 651
Telemetry [baseline] (8.208 ms) : 0, 8208
Telemetry [candidate] (9.078 ms) : 0, 9078
section appsec
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.446 ms) : 0, 1446
BytebuddyAgent [baseline] (750.888 ms) : 0, 750888
BytebuddyAgent [candidate] (760.288 ms) : 0, 760288
GlobalTracer [baseline] (235.125 ms) : 0, 235125
GlobalTracer [candidate] (235.781 ms) : 0, 235781
AppSec [baseline] (168.692 ms) : 0, 168692
AppSec [candidate] (168.324 ms) : 0, 168324
Debugger [baseline] (7.93 ms) : 0, 7930
Debugger [candidate] (7.85 ms) : 0, 7850
Remote Config [baseline] (606.261 µs) : 0, 606
Remote Config [candidate] (614.055 µs) : 0, 614
Telemetry [baseline] (8.875 ms) : 0, 8875
Telemetry [candidate] (9.67 ms) : 0, 9670
IAST [baseline] (23.753 ms) : 0, 23753
IAST [candidate] (23.578 ms) : 0, 23578
section iast
crashtracking [baseline] (1.429 ms) : 0, 1429
crashtracking [candidate] (1.439 ms) : 0, 1439
BytebuddyAgent [baseline] (848.18 ms) : 0, 848180
BytebuddyAgent [candidate] (849.42 ms) : 0, 849420
GlobalTracer [baseline] (232.044 ms) : 0, 232044
GlobalTracer [candidate] (232.515 ms) : 0, 232515
AppSec [baseline] (29.056 ms) : 0, 29056
AppSec [candidate] (27.728 ms) : 0, 27728
Debugger [baseline] (6.691 ms) : 0, 6691
Debugger [candidate] (7.661 ms) : 0, 7661
Remote Config [baseline] (588.83 µs) : 0, 589
Remote Config [candidate] (606.46 µs) : 0, 606
Telemetry [baseline] (7.857 ms) : 0, 7857
Telemetry [candidate] (8.047 ms) : 0, 8047
IAST [baseline] (28.113 ms) : 0, 28113
IAST [candidate] (29.45 ms) : 0, 29450
section profiling
crashtracking [baseline] (1.417 ms) : 0, 1417
crashtracking [candidate] (1.399 ms) : 0, 1399
BytebuddyAgent [baseline] (759.435 ms) : 0, 759435
BytebuddyAgent [candidate] (759.993 ms) : 0, 759993
GlobalTracer [baseline] (221.609 ms) : 0, 221609
GlobalTracer [candidate] (220.937 ms) : 0, 220937
AppSec [baseline] (30.345 ms) : 0, 30345
AppSec [candidate] (30.35 ms) : 0, 30350
Debugger [baseline] (6.285 ms) : 0, 6285
Debugger [candidate] (6.299 ms) : 0, 6299
Remote Config [baseline] (686.899 µs) : 0, 687
Remote Config [candidate] (679.889 µs) : 0, 680
Telemetry [baseline] (11.793 ms) : 0, 11793
Telemetry [candidate] (14.776 ms) : 0, 14776
ProfilingAgent [baseline] (105.03 ms) : 0, 105030
ProfilingAgent [candidate] (104.18 ms) : 0, 104180
Profiling [baseline] (105.052 ms) : 0, 105052
Profiling [candidate] (104.203 ms) : 0, 104203
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master rachel.yang/baggage-span-tags
git_commit_date 1753206619 1753208992
git_commit_sha 7b6259d a22edab
release_version 1.51.1-SNAPSHOT~7b6259d446 1.51.1-SNAPSHOT~a22edabb0c
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1753210483 1753210483
ci_job_id 1041904642 1041904642
ci_pipeline_id 71359044 71359044
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-1-5k22yayc 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-1-5k22yayc 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 2 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:no_agent:high_load better
[-299.572µs; -192.217µs] or [-6.563%; -4.211%]
unstable
[-55.257op/s; +167.570op/s] or [-5.493%; +16.658%]
4.318ms 1062.094op/s 4.564ms 1005.938op/s
scenario:load:petclinic:no_agent:high_load better
[-1.931ms; -1.287ms] or [-5.114%; -3.409%]
unstable
[-1.115op/s; +15.263op/s] or [-0.900%; +12.324%]
36.148ms 130.924op/s 37.757ms 123.850op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.564 ms) : 4513, 4615
.   : milestone, 4564,
iast (9.212 ms) : 9061, 9363
.   : milestone, 9212,
iast_FULL (13.799 ms) : 13531, 14068
.   : milestone, 13799,
iast_GLOBAL (10.372 ms) : 10192, 10552
.   : milestone, 10372,
profiling (8.805 ms) : 8659, 8950
.   : milestone, 8805,
tracing (7.509 ms) : 7406, 7611
.   : milestone, 7509,
section candidate
no_agent (4.318 ms) : 4270, 4367
.   : milestone, 4318,
iast (9.206 ms) : 9059, 9353
.   : milestone, 9206,
iast_FULL (13.475 ms) : 13206, 13744
.   : milestone, 13475,
iast_GLOBAL (10.332 ms) : 10136, 10528
.   : milestone, 10332,
profiling (8.805 ms) : 8670, 8940
.   : milestone, 8805,
tracing (7.519 ms) : 7408, 7631
.   : milestone, 7519,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.564 ms [4.513 ms, 4.615 ms] -
iast 9.212 ms [9.061 ms, 9.363 ms] 4.648 ms (101.8%)
iast_FULL 13.799 ms [13.531 ms, 14.068 ms] 9.235 ms (202.3%)
iast_GLOBAL 10.372 ms [10.192 ms, 10.552 ms] 5.808 ms (127.3%)
profiling 8.805 ms [8.659 ms, 8.95 ms] 4.24 ms (92.9%)
tracing 7.509 ms [7.406 ms, 7.611 ms] 2.944 ms (64.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.318 ms [4.27 ms, 4.367 ms] -
iast 9.206 ms [9.059 ms, 9.353 ms] 4.887 ms (113.2%)
iast_FULL 13.475 ms [13.206 ms, 13.744 ms] 9.157 ms (212.0%)
iast_GLOBAL 10.332 ms [10.136 ms, 10.528 ms] 6.014 ms (139.3%)
profiling 8.805 ms [8.67 ms, 8.94 ms] 4.487 ms (103.9%)
tracing 7.519 ms [7.408 ms, 7.631 ms] 3.201 ms (74.1%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446
    dateFormat X
    axisFormat %s
section baseline
no_agent (37.757 ms) : 37452, 38062
.   : milestone, 37757,
appsec (48.332 ms) : 47916, 48747
.   : milestone, 48332,
code_origins (45.012 ms) : 44635, 45390
.   : milestone, 45012,
iast (44.397 ms) : 44017, 44777
.   : milestone, 44397,
profiling (49.682 ms) : 49226, 50137
.   : milestone, 49682,
tracing (43.503 ms) : 43149, 43856
.   : milestone, 43503,
section candidate
no_agent (36.148 ms) : 35855, 36441
.   : milestone, 36148,
appsec (46.958 ms) : 46549, 47366
.   : milestone, 46958,
code_origins (45.663 ms) : 45282, 46044
.   : milestone, 45663,
iast (45.101 ms) : 44715, 45487
.   : milestone, 45101,
profiling (49.606 ms) : 49138, 50075
.   : milestone, 49606,
tracing (44.253 ms) : 43869, 44636
.   : milestone, 44253,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 37.757 ms [37.452 ms, 38.062 ms] -
appsec 48.332 ms [47.916 ms, 48.747 ms] 10.574 ms (28.0%)
code_origins 45.012 ms [44.635 ms, 45.39 ms] 7.255 ms (19.2%)
iast 44.397 ms [44.017 ms, 44.777 ms] 6.64 ms (17.6%)
profiling 49.682 ms [49.226 ms, 50.137 ms] 11.924 ms (31.6%)
tracing 43.503 ms [43.149 ms, 43.856 ms] 5.745 ms (15.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.148 ms [35.855 ms, 36.441 ms] -
appsec 46.958 ms [46.549 ms, 47.366 ms] 10.809 ms (29.9%)
code_origins 45.663 ms [45.282 ms, 46.044 ms] 9.515 ms (26.3%)
iast 45.101 ms [44.715 ms, 45.487 ms] 8.953 ms (24.8%)
profiling 49.606 ms [49.138 ms, 50.075 ms] 13.458 ms (37.2%)
tracing 44.253 ms [43.869 ms, 44.636 ms] 8.104 ms (22.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master rachel.yang/baggage-span-tags
git_commit_date 1753206619 1753208992
git_commit_sha 7b6259d a22edab
release_version 1.51.1-SNAPSHOT~7b6259d446 1.51.1-SNAPSHOT~a22edabb0c
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1753211014 1753211014
ci_job_id 1041904643 1041904643
ci_pipeline_id 71359044 71359044
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-51l50cn8 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-51l50cn8 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.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.478 ms) : 1466, 1490
.   : milestone, 1478,
appsec (2.48 ms) : 2427, 2533
.   : milestone, 2480,
iast (2.215 ms) : 2152, 2278
.   : milestone, 2215,
iast_GLOBAL (2.252 ms) : 2189, 2315
.   : milestone, 2252,
profiling (2.061 ms) : 2009, 2113
.   : milestone, 2061,
tracing (2.025 ms) : 1976, 2074
.   : milestone, 2025,
section candidate
no_agent (1.479 ms) : 1468, 1491
.   : milestone, 1479,
appsec (3.667 ms) : 3450, 3884
.   : milestone, 3667,
iast (2.215 ms) : 2152, 2278
.   : milestone, 2215,
iast_GLOBAL (2.254 ms) : 2190, 2317
.   : milestone, 2254,
profiling (2.07 ms) : 2018, 2121
.   : milestone, 2070,
tracing (2.026 ms) : 1977, 2075
.   : milestone, 2026,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.478 ms [1.466 ms, 1.49 ms] -
appsec 2.48 ms [2.427 ms, 2.533 ms] 1.002 ms (67.8%)
iast 2.215 ms [2.152 ms, 2.278 ms] 736.734 µs (49.8%)
iast_GLOBAL 2.252 ms [2.189 ms, 2.315 ms] 774.259 µs (52.4%)
profiling 2.061 ms [2.009 ms, 2.113 ms] 582.492 µs (39.4%)
tracing 2.025 ms [1.976 ms, 2.074 ms] 546.879 µs (37.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.479 ms [1.468 ms, 1.491 ms] -
appsec 3.667 ms [3.45 ms, 3.884 ms] 2.188 ms (147.9%)
iast 2.215 ms [2.152 ms, 2.278 ms] 735.941 µs (49.7%)
iast_GLOBAL 2.254 ms [2.19 ms, 2.317 ms] 774.167 µs (52.3%)
profiling 2.07 ms [2.018 ms, 2.121 ms] 590.209 µs (39.9%)
tracing 2.026 ms [1.977 ms, 2.075 ms] 546.199 µs (36.9%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.51.1-SNAPSHOT~a22edabb0c, baseline=1.51.1-SNAPSHOT~7b6259d446
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.161 s) : 15161000, 15161000
.   : milestone, 15161000,
appsec (14.886 s) : 14886000, 14886000
.   : milestone, 14886000,
iast (18.318 s) : 18318000, 18318000
.   : milestone, 18318000,
iast_GLOBAL (17.782 s) : 17782000, 17782000
.   : milestone, 17782000,
profiling (15.451 s) : 15451000, 15451000
.   : milestone, 15451000,
tracing (14.793 s) : 14793000, 14793000
.   : milestone, 14793000,
section candidate
no_agent (14.913 s) : 14913000, 14913000
.   : milestone, 14913000,
appsec (14.851 s) : 14851000, 14851000
.   : milestone, 14851000,
iast (18.383 s) : 18383000, 18383000
.   : milestone, 18383000,
iast_GLOBAL (17.76 s) : 17760000, 17760000
.   : milestone, 17760000,
profiling (15.923 s) : 15923000, 15923000
.   : milestone, 15923000,
tracing (14.958 s) : 14958000, 14958000
.   : milestone, 14958000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.161 s [15.161 s, 15.161 s] -
appsec 14.886 s [14.886 s, 14.886 s] -275.0 ms (-1.8%)
iast 18.318 s [18.318 s, 18.318 s] 3.157 s (20.8%)
iast_GLOBAL 17.782 s [17.782 s, 17.782 s] 2.621 s (17.3%)
profiling 15.451 s [15.451 s, 15.451 s] 290.0 ms (1.9%)
tracing 14.793 s [14.793 s, 14.793 s] -368.0 ms (-2.4%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.913 s [14.913 s, 14.913 s] -
appsec 14.851 s [14.851 s, 14.851 s] -62.0 ms (-0.4%)
iast 18.383 s [18.383 s, 18.383 s] 3.47 s (23.3%)
iast_GLOBAL 17.76 s [17.76 s, 17.76 s] 2.847 s (19.1%)
profiling 15.923 s [15.923 s, 15.923 s] 1.01 s (6.8%)
tracing 14.958 s [14.958 s, 14.958 s] 45.0 ms (0.3%)

@rachelyangdog rachelyangdog requested a review from mcculls July 15, 2025 13:36
@rachelyangdog rachelyangdog marked this pull request as ready for review July 16, 2025 20:39
@rachelyangdog rachelyangdog added type: feature request inst: java Core Java language instrumentation comp: core Tracer core labels Jul 16, 2025
@rachelyangdog rachelyangdog changed the title WIP: baggage span tags feat: add baggage to span tags Jul 16, 2025
…ext and update it to check the W3C baggage held in the new Context API

(the baggage map in CoreTracer is OpenTracing only, and won't contain W3C baggage)
@mcculls mcculls requested a review from a team as a code owner July 18, 2025 09:50
@mcculls mcculls requested review from PerfectSlayer and mhlidd July 18, 2025 09:52
@mcculls mcculls changed the title feat: add baggage to span tags Support adding W3C baggage as span tags Jul 18, 2025
Copy link
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.

I don't think it's the right place for baggage as tag injection.
I left some comments why and it might be the time to do a proper refactoring of this part.

cc @mhlidd about W3C Baggage vs OT Baggage lifecycle

@mcculls mcculls force-pushed the rachel.yang/baggage-span-tags branch from cfd6f7d to a22edab Compare July 22, 2025 18:30
@mcculls mcculls requested a review from PerfectSlayer July 22, 2025 20:32
Copy link
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.

Looking good by providing uniform way to handle OT and OTel span tags while fixing the unexpected side effect on helper.

Left a comment on the TODO about where to correlate both Tracing and Baggage context item. Let me know what you think of it.

return context;
}

// TODO: consider a better way to link baggage with the extracted (legacy) TagContext
Copy link
Contributor

Choose a reason for hiding this comment

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

This will only work if the baggage propagator is run after the tracing one, hence its new priority (propagator ordering is part of context API contract so it should be stable).

Another option is to do it on the HttpServerDecorator.extract() method. But that will be limited to HTTP instrumentation (which you might want?). WDYT?

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, I was a bit torn about where to put this part - I went with the propagator (with priority to help the ordering) because it's then at least consistent with DataStreamsPropagator.

That way it's a bit more obvious which places to go back and fix when we move CoreTracer over to Context :)

Copy link
Contributor

Choose a reason for hiding this comment

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

If you're referring to this comments:

// TODO Pathway context needs to be stored into its own context element instead of span context

and

// TODO DSM propagator should run after the other propagators as it stores the pathway context
// TODO into the span context for now. Remove priority after the migration is complete.

I reached out to @kr-igor and we will address it by the second end of the quarter.
So if the HttpServerDecorator is a valid candidate (according the web server only limitation), we can add it as comment to move it there when we will do the clean up, and merge it as is. WDYT?

Copy link
Contributor

Choose a reason for hiding this comment

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

I was meaning more that once CoreTracer works off a Context this code could be removed from the propagator and the priority removed, since we'd no longer need to connect the two pieces. (The changes would be to the CoreTracer code that currently works off the extracted/tag context types)

If there's an intermediate refactoring, then I have no objection to moving this to HttpServerDecorator but I'd prefer to leave that decision open for now (since the final goal of removing this code would be the same - TBH we're just moving chairs around atm.)

In other words, I don't believe we need to make further changes in this PR - those can be left to future refactoring(s)

Copy link
Contributor

Choose a reason for hiding this comment

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

I don't believe we need to make further changes in this PR - those can be left to future refactoring(s)

I don't either and already stamp the PR 😅

Copy link
Contributor

@mcculls mcculls left a comment

Choose a reason for hiding this comment

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

Approving from my side - would like to get another approval from @PerfectSlayer before merging

Copy link
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.

Approving the PR. Adding few comments in the code related to our discussion to help with the coming refactoring could be useful 👍

@rachelyangdog rachelyangdog merged commit 6295876 into master Jul 23, 2025
503 checks passed
@rachelyangdog rachelyangdog deleted the rachel.yang/baggage-span-tags branch July 23, 2025 17:56
@github-actions github-actions bot added this to the 1.52.0 milestone Jul 23, 2025
@PerfectSlayer PerfectSlayer removed the inst: java Core Java language instrumentation label Aug 4, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Aug 5, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [redis.clients:jedis](https://github.com/redis/jedis) | dependencies |
misk/gradle/libs.versions.toml | gradle | minor | `6.0.0` -> `6.1.0` |
|
[com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.59.2` -> `2.60.0` |
|
[com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.58.2` -> `2.59.0` |
|
[com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.58.2` -> `2.59.0` |
| [com.google.api:gax](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.68.2` -> `2.69.0` |
| [com.squareup.wire](https://github.com/square/wire) | plugin |
misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` |
| [com.squareup.wire:wire-schema](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-runtime](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-reflector](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-moshi-adapter](https://github.com/square/wire)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`5.3.5` -> `5.3.6` |
| [com.squareup.wire:wire-grpc-client](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-bom](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.51.2` -> `1.52.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:regions](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |

---

### Release Notes

<details>
<summary>redis/jedis (redis.clients:jedis)</summary>

### [`v6.1.0`](https://github.com/redis/jedis/releases/tag/v6.1.0):
6.1.0

### Changes

#### 🚀 New Features

- Add support for SVS-VAMANA vector indexing
([#&#8203;4222](redis/jedis#4222))
- Clarify why new stream entries aren't deleted with XDELEX
([#&#8203;4218](redis/jedis#4218))
- Add support for new stream commands
([#&#8203;4211](redis/jedis#4211))
- Add Support for New BITOP Operations in Redis 8.2
([#&#8203;4188](redis/jedis#4188))
([#&#8203;4190](redis/jedis#4190))
- Add binary stream support for XREAD and XREADGROUP
([#&#8203;3566](redis/jedis#3566))
([#&#8203;4152](redis/jedis#4152))
- Run pipeline in current thread if all the keys on same node
([#&#8203;4149](redis/jedis#4149))

#### 🐛 Bug Fixes

- Restore binary compatibility of SetParams
([#&#8203;4225](redis/jedis#4225))
- Fix memory leak in JedisClusterInfoCache - replica nodes not cleared
([#&#8203;4205](redis/jedis#4205))
- Fix:JedisCluster throws NullPointerException when maxAttempts is set
to 0 ([#&#8203;4186](redis/jedis#4186))

#### 🧰 Maintenance

- DOC-5471 time series doc examples
([#&#8203;4210](redis/jedis#4210))
- Bump jackson.version from 2.19.1 to 2.19.2
([#&#8203;4208](redis/jedis#4208))
- Fix flaky test ClientCommandsTest.killSkipmeYesNo
([#&#8203;4206](redis/jedis#4206))
- Bump org.junit:junit-bom from 5.13.2 to 5.13.3
([#&#8203;4198](redis/jedis#4198))
- Migrate publishing to Maven Central Portal
([#&#8203;4199](redis/jedis#4199))
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8
([#&#8203;4197](redis/jedis#4197))
- Bump org.junit:junit-bom from 5.13.1 to 5.13.2
([#&#8203;4192](redis/jedis#4192))
- DOC-5227 added probabilistic data type examples
([#&#8203;4184](redis/jedis#4184))
- Bump jackson.version from 2.19.0 to 2.19.1
([#&#8203;4180](redis/jedis#4180))
- Update test infra to use latest Redis
([#&#8203;4179](redis/jedis#4179))
- Bump org.junit:junit-bom from 5.13.0-RC1 to 5.13.1
([#&#8203;4174](redis/jedis#4174))
- Bump org.json:json from
[`2025010`](redis/jedis@20250107) to
[`2025051`](redis/jedis@20250517)
([#&#8203;4171](redis/jedis#4171))
- Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.4.4
to 5.5 ([#&#8203;4170](redis/jedis#4170))
- Fix flaky tests in DocumentTest
([#&#8203;3617](redis/jedis#3617))
- Add retryable command execution example
([#&#8203;3780](redis/jedis#3780))
- Bump jackson.version from 2.18.3 to 2.19.0
([#&#8203;4160](redis/jedis#4160))
- Bump com.google.code.gson:gson from 2.12.1 to 2.13.1
([#&#8203;4161](redis/jedis#4161))

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;219sansim](https://github.com/219sansim),
[@&#8203;YoHanKi](https://github.com/YoHanKi),
[@&#8203;andy-stark-redis](https://github.com/andy-stark-redis),
[@&#8203;ggivo](https://github.com/ggivo),
[@&#8203;jujn](https://github.com/jujn),
[@&#8203;thachlp](https://github.com/thachlp),
[@&#8203;uglide](https://github.com/uglide) and
[@&#8203;xrayw](https://github.com/xrayw)

</details>

<details>
<summary>googleapis/sdk-platform-java
(com.google.api.grpc:proto-google-common-protos)</summary>

###
[`v2.60.0`](https://github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2600-2025-06-23)

##### Features

- handle auto pagination for BigQuery v2
([#&#8203;3829](googleapis/sdk-platform-java#3829))
([025c84c](googleapis/sdk-platform-java@025c84c))

##### Dependencies

- update google auth library dependencies to v1.37.1
([#&#8203;3846](googleapis/sdk-platform-java#3846))
([ea1d9e5](googleapis/sdk-platform-java@ea1d9e5))
- update google http client dependencies to v1.47.1
([#&#8203;3848](googleapis/sdk-platform-java#3848))
([a9a39d7](googleapis/sdk-platform-java@a9a39d7))

</details>

<details>
<summary>square/wire (com.squareup.wire)</summary>

###
[`v5.3.6`](https://github.com/square/wire/blob/HEAD/CHANGELOG.md#Version-536)

[Compare Source](square/wire@5.3.5...5.3.6)

*2025-08-05*

##### CLI

- New CLI option `--ignore_unused_roots_and_prunes`
([#&#8203;3354](square/wire#3354))

##### JVM

- Fix: Handle negative hexadecimal in default values
([#&#8203;3355](square/wire#3355))
- Optimization: Avoid copying of repeated and map types when
mutableTypes are being used
([#&#8203;3352](square/wire#3352) by \[Rahul
Ravikumar]\[tikurahul])

##### Swift

- Fix: Properly disambiguate OneOf enum if it has the same name as
enclosing type
([#&#8203;3350](square/wire#3350) by
\[Dimitris Koutsogiorgas]\[dnkoutso])

</details>

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.52.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.52.0):
1.52.0

### Components

#### Application Security Management (WAF)

- ✨ Only report ASM\_DD, ASM\_DATA and ASM capabilities when
AppSec is enabled
([#&#8203;9260](DataDog/dd-trace-java#9260) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- 🐛 Fix NPE in AppSecConfigServiceImpl
([#&#8203;9165](DataDog/dd-trace-java#9165) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6
([#&#8203;9160](DataDog/dd-trace-java#9160) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))

#### Build & Tooling

- ✨📖 Automatically register crashtracking via native
extensions
([#&#8203;8851](DataDog/dd-trace-java#8851) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Configuration at Runtime

- ✨ Create activation origin config for telemetry
([#&#8203;9064](DataDog/dd-trace-java#9064) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

#### Continuous Integration Visibility

- ✨ Update GitLab provided tags
([#&#8203;9275](DataDog/dd-trace-java#9275) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🐛 Fix base branch SHA usage in GitHub Actions
([#&#8203;9257](DataDog/dd-trace-java#9257) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add `ci.job.id` tag
([#&#8203;9256](DataDog/dd-trace-java#9256) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add new org to Weaver instrumentation
([#&#8203;9235](DataDog/dd-trace-java#9235) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano) - thanks
for the contribution!)
- ✨ Improve Git commit info building
([#&#8203;9210](DataDog/dd-trace-java#9210) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Update Attempt to Fix to v5
([#&#8203;9145](DataDog/dd-trace-java#9145) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

#### Crash tracking

- ✨📖 Automatically register crashtracking via native
extensions
([#&#8203;8851](DataDog/dd-trace-java#8851) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Data Streams Monitoring

- ✨ Reduce DSM CPU overheard
([#&#8203;9151](DataDog/dd-trace-java#9151) -
[@&#8203;kr-igor](https://github.com/kr-igor))
- ✨⚡ DSM optimizations for high throughput scenarios
([#&#8203;9137](DataDog/dd-trace-java#9137) -
[@&#8203;kr-igor](https://github.com/kr-igor))

#### Database Monitoring

- 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full
propagation mode
([#&#8203;9224](DataDog/dd-trace-java#9224) -
[@&#8203;lu-zhengda](https://github.com/lu-zhengda))

#### Dynamic Instrumentation

- 🐛 Add URI in string primitives
([#&#8203;9285](DataDog/dd-trace-java#9285) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Increase SourceFile tracking max queue size
([#&#8203;9271](DataDog/dd-trace-java#9271) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add capping on SourceFile tracking queue
([#&#8203;9245](DataDog/dd-trace-java#9245) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add third-party filtering in SourceFile tracking
([#&#8203;9205](DataDog/dd-trace-java#9205) -
[@&#8203;jpbempel](https://github.com/jpbempel))

#### ML Observability (LLMObs)

- ✨ Add methods to capture embedding and retrieval spans
([#&#8203;9297](DataDog/dd-trace-java#9297) -
[@&#8203;nayeem-kamal](https://github.com/nayeem-kamal))

#### Metrics

- ✨ Change primary client stats configuration key
([#&#8203;9196](DataDog/dd-trace-java#9196) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Calculate client stats also if the span kind is eligible
([#&#8203;9157](DataDog/dd-trace-java#9157) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Backpropagate peer tags
([#&#8203;9144](DataDog/dd-trace-java#9144) -
[@&#8203;bric3](https://github.com/bric3))
- 🐛 Make client stats reliable in case of downgrade
([#&#8203;9136](DataDog/dd-trace-java#9136) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Platform components

- 🐛 Fix VM options parsing from /proc/fs
([#&#8203;9255](DataDog/dd-trace-java#9255) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Profiling

- ✨ Switch profile compression to zstd default
([#&#8203;9293](DataDog/dd-trace-java#9293) -
[@&#8203;jbachorik](https://github.com/jbachorik))

- ✨ Bump ddprof to 1.29.0
([#&#8203;9262](DataDog/dd-trace-java#9262) -
[@&#8203;zhengyu123](https://github.com/zhengyu123))
- Potential memory leak and race with the JVMTI wallclock sampler by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#234
- Downport async-profiler no-allocation changes by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#245
- Adopt openjdk safefetch by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#246
- Safe fetch 64-bit value and pointer by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#247
- Rebase on Async-Profiler 4.1 by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#252
- Patch upstream stackWalker.cpp not to fail on unaligned access by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#218
- Remap thread id to avoid bitmap contention by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#229
- Improve performance using Unsafe to activate/deactivate thread filter
by [@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#230
- Unify context propagation by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#231

- 🐛 Fix the profiler stackdepth setting propagation in recent (22+)
Java versions
([#&#8203;9130](DataDog/dd-trace-java#9130) -
[@&#8203;jbachorik](https://github.com/jbachorik))

#### Realtime User Monitoring

- ✨ Wrap servlet original PrintWriter on rum injector
([#&#8203;9146](DataDog/dd-trace-java#9146) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Telemetry

- ✨ Create activation origin config for telemetry
([#&#8203;9064](DataDog/dd-trace-java#9064) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

#### Tracer core

- ✨⚡ Reduce span construction overhead by switching to
optimized TagMap
([#&#8203;8589](DataDog/dd-trace-java#8589) -
[@&#8203;dougqh](https://github.com/dougqh))
- 🐛 Match Hands Off Config selectors on process\_arguments value
([#&#8203;9201](DataDog/dd-trace-java#9201) -
[@&#8203;paullegranddc](https://github.com/paullegranddc))
- ✨ Move JSON generation to sender thread to improve startup
time.
([#&#8203;9197](DataDog/dd-trace-java#9197) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- ✨ Improve agent to avoid loading global config on main thread
([#&#8203;9190](DataDog/dd-trace-java#9190) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ add injection metadata fields to telemetry forwarder
([#&#8203;9185](DataDog/dd-trace-java#9185) -
[@&#8203;sydney-tung](https://github.com/sydney-tung))
- 🐛 Avoid race conditions on feature discovery during Writer
creation
([#&#8203;9173](DataDog/dd-trace-java#9173) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Surface potential root cause when agent initialization
errors
([#&#8203;9170](DataDog/dd-trace-java#9170) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- 💡 Support adding W3C baggage as span tags
([#&#8203;9169](DataDog/dd-trace-java#9169) -
[@&#8203;rachelyangdog](https://github.com/rachelyangdog))
- ✨⚡ Align our default classloader excludes with OTel
([#&#8203;9161](DataDog/dd-trace-java#9161) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Backpropagate container tags hash coming from the info
endpoint
([#&#8203;9156](DataDog/dd-trace-java#9156) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Avoid race conditions and multiple agent discovery feature
states
([#&#8203;9135](DataDog/dd-trace-java#9135) -
[@&#8203;amarziali](https://github.com/amarziali))

### Instrumentations

#### AWS SDK instrumentation

- ✨ Enhance Service Representation for Serverless
([#&#8203;9203](DataDog/dd-trace-java#9203) -
[@&#8203;zarirhamza](https://github.com/zarirhamza))

#### gRPC instrumentation

- 🐛 Add check to prevent injection of repeated GRPC headers
([#&#8203;9246](DataDog/dd-trace-java#9246) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### JDBC instrumentation

- 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full
propagation mode
([#&#8203;9224](DataDog/dd-trace-java#9224) -
[@&#8203;lu-zhengda](https://github.com/lu-zhengda))

#### Play Framework instrumentation

- 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6
([#&#8203;9160](DataDog/dd-trace-java#9160) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: 9da36329ffa552291a640381780b608ef6513e29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants