Skip to content

Conversation

mtoffl01
Copy link
Contributor

@mtoffl01 mtoffl01 commented Mar 7, 2025

What Does This Do

Apply configurations to processes based on target rules specified in stable configuration files.
Stable Configuration, Phase 2: RFC

Motivation

Configs were previously applied to all [compatible] processes running on the injected server; with Phase 2, you can apply configurations to specific processes, rather than across the server.

Additional Notes

Passing all system tests: DataDog/system-tests#4333

Contributor Checklist

Jira ticket: [PROJ-IDENT]

mtoffl01 and others added 5 commits March 10, 2025 14:57
…ider/VMArgsCache.java Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
…ider/VMArgsCache.java Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
…ider/VMArgsCache.java Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
@pr-commenter
Copy link

pr-commenter bot commented Mar 11, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/stable_cfg_2
git_commit_date 1743705303 1743712892
git_commit_sha 8adba3f 23f1013
release_version 1.48.0-SNAPSHOT~8adba3f8b4 1.48.0-SNAPSHOT~23f1013e88
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1743715934 1743715934
ci_job_id 880473414 880473414
ci_pipeline_id 61036396 61036396
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-gtma1pc4-project-304-concurrent-0-rzwfrtq7 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-gtma1pc4-project-304-concurrent-0-rzwfrtq7 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for insecure-bank
gantt title insecure-bank - global startup overhead: candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section tracing Agent [baseline] (1.065 s) : 0, 1064979 Total [baseline] (8.718 s) : 0, 8718335 Agent [candidate] (1.058 s) : 0, 1057675 Total [candidate] (8.701 s) : 0, 8700935 section iast Agent [baseline] (1.191 s) : 0, 1190611 Total [baseline] (9.286 s) : 0, 9286451 Agent [candidate] (1.206 s) : 0, 1205841 Total [candidate] (9.3 s) : 0, 9299707 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.184 s) : 0, 1183871 Total [baseline] (9.267 s) : 0, 9266881 Agent [candidate] (1.195 s) : 0, 1194628 Total [candidate] (9.247 s) : 0, 9246783 section iast_TELEMETRY_OFF Agent [baseline] (1.176 s) : 0, 1176197 Total [baseline] (9.285 s) : 0, 9284531 Agent [candidate] (1.187 s) : 0, 1186520 Total [candidate] (9.281 s) : 0, 9281035 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.065 s -
Agent iast 1.191 s 125.632 ms (11.8%)
Agent iast_HARDCODED_SECRET_DISABLED 1.184 s 118.892 ms (11.2%)
Agent iast_TELEMETRY_OFF 1.176 s 111.218 ms (10.4%)
Total tracing 8.718 s -
Total iast 9.286 s 568.117 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.267 s 548.546 ms (6.3%)
Total iast_TELEMETRY_OFF 9.285 s 566.196 ms (6.5%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.058 s -
Agent iast 1.206 s 148.167 ms (14.0%)
Agent iast_HARDCODED_SECRET_DISABLED 1.195 s 136.954 ms (12.9%)
Agent iast_TELEMETRY_OFF 1.187 s 128.845 ms (12.2%)
Total tracing 8.701 s -
Total iast 9.3 s 598.772 ms (6.9%)
Total iast_HARDCODED_SECRET_DISABLED 9.247 s 545.848 ms (6.3%)
Total iast_TELEMETRY_OFF 9.281 s 580.1 ms (6.7%)
gantt title insecure-bank - break down per module: candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (726.956 ms) : 0, 726956 BytebuddyAgent [candidate] (722.392 ms) : 0, 722392 GlobalTracer [baseline] (242.358 ms) : 0, 242358 GlobalTracer [candidate] (240.453 ms) : 0, 240453 AppSec [baseline] (57.516 ms) : 0, 57516 AppSec [candidate] (54.613 ms) : 0, 54613 Debugger [baseline] (4.445 ms) : 0, 4445 Debugger [candidate] (4.392 ms) : 0, 4392 Remote Config [baseline] (712.461 µs) : 0, 712 Remote Config [candidate] (691.579 µs) : 0, 692 Telemetry [baseline] (12.285 ms) : 0, 12285 Telemetry [candidate] (14.371 ms) : 0, 14371 section iast BytebuddyAgent [baseline] (845.8 ms) : 0, 845800 BytebuddyAgent [candidate] (857.472 ms) : 0, 857472 GlobalTracer [baseline] (231.085 ms) : 0, 231085 GlobalTracer [candidate] (233.611 ms) : 0, 233611 IAST [baseline] (23.613 ms) : 0, 23613 IAST [candidate] (23.208 ms) : 0, 23208 AppSec [baseline] (55.794 ms) : 0, 55794 AppSec [candidate] (56.681 ms) : 0, 56681 Debugger [baseline] (4.232 ms) : 0, 4232 Debugger [candidate] (4.194 ms) : 0, 4194 Remote Config [baseline] (626.721 µs) : 0, 627 Remote Config [candidate] (610.628 µs) : 0, 611 Telemetry [baseline] (8.895 ms) : 0, 8895 Telemetry [candidate] (8.951 ms) : 0, 8951 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (839.5 ms) : 0, 839500 BytebuddyAgent [candidate] (848.512 ms) : 0, 848512 GlobalTracer [baseline] (231.567 ms) : 0, 231567 GlobalTracer [candidate] (231.919 ms) : 0, 231919 IAST [baseline] (22.938 ms) : 0, 22938 IAST [candidate] (23.119 ms) : 0, 23119 AppSec [baseline] (55.772 ms) : 0, 55772 AppSec [candidate] (56.442 ms) : 0, 56442 Debugger [baseline] (4.161 ms) : 0, 4161 Debugger [candidate] (4.171 ms) : 0, 4171 Remote Config [baseline] (619.698 µs) : 0, 620 Remote Config [candidate] (601.703 µs) : 0, 602 Telemetry [baseline] (8.799 ms) : 0, 8799 Telemetry [candidate] (8.76 ms) : 0, 8760 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (835.063 ms) : 0, 835063 BytebuddyAgent [candidate] (843.471 ms) : 0, 843471 GlobalTracer [baseline] (229.315 ms) : 0, 229315 GlobalTracer [candidate] (230.489 ms) : 0, 230489 IAST [baseline] (22.255 ms) : 0, 22255 IAST [candidate] (22.222 ms) : 0, 22222 AppSec [baseline] (55.86 ms) : 0, 55860 AppSec [candidate] (56.047 ms) : 0, 56047 Debugger [baseline] (4.171 ms) : 0, 4171 Debugger [candidate] (4.135 ms) : 0, 4135 Remote Config [baseline] (602.08 µs) : 0, 602 Remote Config [candidate] (606.042 µs) : 0, 606 Telemetry [baseline] (8.539 ms) : 0, 8539 Telemetry [candidate] (8.634 ms) : 0, 8634 
Loading
Startup time reports for petclinic
gantt title petclinic - global startup overhead: candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section tracing Agent [baseline] (1.053 s) : 0, 1053041 Total [baseline] (10.5 s) : 0, 10500128 Agent [candidate] (1.057 s) : 0, 1056625 Total [candidate] (10.488 s) : 0, 10488334 section appsec Agent [baseline] (1.194 s) : 0, 1193540 Total [baseline] (10.725 s) : 0, 10724595 Agent [candidate] (1.203 s) : 0, 1203327 Total [candidate] (10.767 s) : 0, 10766857 section iast Agent [baseline] (1.182 s) : 0, 1182276 Total [baseline] (11.022 s) : 0, 11022487 Agent [candidate] (1.185 s) : 0, 1184636 Total [candidate] (11.074 s) : 0, 11074431 section profiling Agent [baseline] (1.284 s) : 0, 1283874 Total [baseline] (10.857 s) : 0, 10856990 Agent [candidate] (1.281 s) : 0, 1281414 Total [candidate] (10.92 s) : 0, 10919543 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.053 s -
Agent appsec 1.194 s 140.499 ms (13.3%)
Agent iast 1.182 s 129.235 ms (12.3%)
Agent profiling 1.284 s 230.833 ms (21.9%)
Total tracing 10.5 s -
Total appsec 10.725 s 224.467 ms (2.1%)
Total iast 11.022 s 522.359 ms (5.0%)
Total profiling 10.857 s 356.862 ms (3.4%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.057 s -
Agent appsec 1.203 s 146.701 ms (13.9%)
Agent iast 1.185 s 128.011 ms (12.1%)
Agent profiling 1.281 s 224.789 ms (21.3%)
Total tracing 10.488 s -
Total appsec 10.767 s 278.523 ms (2.7%)
Total iast 11.074 s 586.097 ms (5.6%)
Total profiling 10.92 s 431.21 ms (4.1%)
gantt title petclinic - break down per module: candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (720.437 ms) : 0, 720437 BytebuddyAgent [candidate] (721.864 ms) : 0, 721864 GlobalTracer [baseline] (239.701 ms) : 0, 239701 GlobalTracer [candidate] (239.787 ms) : 0, 239787 AppSec [baseline] (54.396 ms) : 0, 54396 AppSec [candidate] (55.284 ms) : 0, 55284 Debugger [baseline] (4.392 ms) : 0, 4392 Debugger [candidate] (4.423 ms) : 0, 4423 Remote Config [baseline] (698.924 µs) : 0, 699 Remote Config [candidate] (705.941 µs) : 0, 706 Telemetry [baseline] (12.896 ms) : 0, 12896 Telemetry [candidate] (13.665 ms) : 0, 13665 section appsec BytebuddyAgent [baseline] (737.337 ms) : 0, 737337 BytebuddyAgent [candidate] (743.569 ms) : 0, 743569 GlobalTracer [baseline] (235.685 ms) : 0, 235685 GlobalTracer [candidate] (237.619 ms) : 0, 237619 IAST [baseline] (21.64 ms) : 0, 21640 IAST [candidate] (21.655 ms) : 0, 21655 AppSec [baseline] (175.726 ms) : 0, 175726 AppSec [candidate] (176.076 ms) : 0, 176076 Debugger [baseline] (4.28 ms) : 0, 4280 Debugger [candidate] (4.316 ms) : 0, 4316 Remote Config [baseline] (640.648 µs) : 0, 641 Remote Config [candidate] (662.441 µs) : 0, 662 Telemetry [baseline] (8.631 ms) : 0, 8631 Telemetry [candidate] (9.347 ms) : 0, 9347 section iast BytebuddyAgent [baseline] (839.528 ms) : 0, 839528 BytebuddyAgent [candidate] (841.263 ms) : 0, 841263 GlobalTracer [baseline] (230.062 ms) : 0, 230062 GlobalTracer [candidate] (230.632 ms) : 0, 230632 IAST [baseline] (22.851 ms) : 0, 22851 IAST [candidate] (22.708 ms) : 0, 22708 AppSec [baseline] (55.992 ms) : 0, 55992 AppSec [candidate] (55.772 ms) : 0, 55772 Debugger [baseline] (4.1 ms) : 0, 4100 Debugger [candidate] (4.13 ms) : 0, 4130 Remote Config [baseline] (620.576 µs) : 0, 621 Remote Config [candidate] (597.693 µs) : 0, 598 Telemetry [baseline] (8.664 ms) : 0, 8664 Telemetry [candidate] (8.728 ms) : 0, 8728 section profiling BytebuddyAgent [baseline] (714.777 ms) : 0, 714777 BytebuddyAgent [candidate] (712.099 ms) : 0, 712099 GlobalTracer [baseline] (351.025 ms) : 0, 351025 GlobalTracer [candidate] (350.267 ms) : 0, 350267 AppSec [baseline] (54.599 ms) : 0, 54599 AppSec [candidate] (53.627 ms) : 0, 53627 Debugger [baseline] (4.338 ms) : 0, 4338 Debugger [candidate] (4.337 ms) : 0, 4337 Remote Config [baseline] (709.369 µs) : 0, 709 Remote Config [candidate] (706.588 µs) : 0, 707 Telemetry [baseline] (9.057 ms) : 0, 9057 Telemetry [candidate] (8.975 ms) : 0, 8975 ProfilingAgent [baseline] (103.242 ms) : 0, 103242 ProfilingAgent [candidate] (103.299 ms) : 0, 103299 Profiling [baseline] (103.269 ms) : 0, 103269 Profiling [candidate] (103.325 ms) : 0, 103325 
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-04-03T21:02:25 2025-04-03T21:10:10
git_branch master mtoff/stable_cfg_2
git_commit_date 1743705303 1743712892
git_commit_sha 8adba3f 23f1013
release_version 1.48.0-SNAPSHOT~8adba3f8b4 1.48.0-SNAPSHOT~23f1013e88
start_time 2025-04-03T21:02:10 2025-04-03T21:09:56
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1743715008 1743715008
ci_job_id 880473415 880473415
ci_pipeline_id 61036396 61036396
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-gtma1pc4-project-304-concurrent-1-mf6cgl0e 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-gtma1pc4-project-304-concurrent-1-mf6cgl0e 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant iast iast

Summary

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

Request duration reports for petclinic
gantt title petclinic - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section baseline no_agent (1.352 ms) : 1333, 1372 . : milestone, 1352, appsec (1.73 ms) : 1706, 1754 . : milestone, 1730, appsec_no_iast (1.738 ms) : 1714, 1762 . : milestone, 1738, code_origins (1.673 ms) : 1646, 1700 . : milestone, 1673, iast (1.527 ms) : 1503, 1552 . : milestone, 1527, profiling (1.523 ms) : 1499, 1547 . : milestone, 1523, tracing (1.497 ms) : 1471, 1522 . : milestone, 1497, section candidate no_agent (1.353 ms) : 1333, 1372 . : milestone, 1353, appsec (1.747 ms) : 1724, 1769 . : milestone, 1747, appsec_no_iast (1.737 ms) : 1714, 1759 . : milestone, 1737, code_origins (1.697 ms) : 1671, 1723 . : milestone, 1697, iast (1.516 ms) : 1491, 1541 . : milestone, 1516, profiling (1.526 ms) : 1502, 1550 . : milestone, 1526, tracing (1.486 ms) : 1461, 1511 . : milestone, 1486, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.352 ms [1.333 ms, 1.372 ms] -
appsec 1.73 ms [1.706 ms, 1.754 ms] 377.834 µs (27.9%)
appsec_no_iast 1.738 ms [1.714 ms, 1.762 ms] 385.646 µs (28.5%)
code_origins 1.673 ms [1.646 ms, 1.7 ms] 320.383 µs (23.7%)
iast 1.527 ms [1.503 ms, 1.552 ms] 175.06 µs (12.9%)
profiling 1.523 ms [1.499 ms, 1.547 ms] 170.545 µs (12.6%)
tracing 1.497 ms [1.471 ms, 1.522 ms] 144.162 µs (10.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.353 ms [1.333 ms, 1.372 ms] -
appsec 1.747 ms [1.724 ms, 1.769 ms] 393.746 µs (29.1%)
appsec_no_iast 1.737 ms [1.714 ms, 1.759 ms] 383.744 µs (28.4%)
code_origins 1.697 ms [1.671 ms, 1.723 ms] 343.947 µs (25.4%)
iast 1.516 ms [1.491 ms, 1.541 ms] 163.256 µs (12.1%)
profiling 1.526 ms [1.502 ms, 1.55 ms] 173.32 µs (12.8%)
tracing 1.486 ms [1.461 ms, 1.511 ms] 132.795 µs (9.8%)
Request duration reports for insecure-bank
gantt title insecure-bank - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section baseline no_agent (379.884 µs) : 360, 400 . : milestone, 380, iast (512.907 µs) : 491, 535 . : milestone, 513, iast_FULL (728.76 µs) : 706, 751 . : milestone, 729, iast_GLOBAL (559.055 µs) : 537, 581 . : milestone, 559, iast_HARDCODED_SECRET_DISABLED (512.776 µs) : 491, 535 . : milestone, 513, iast_INACTIVE (463.451 µs) : 442, 485 . : milestone, 463, iast_TELEMETRY_OFF (497.455 µs) : 476, 519 . : milestone, 497, tracing (453.181 µs) : 432, 474 . : milestone, 453, section candidate no_agent (379.133 µs) : 359, 399 . : milestone, 379, iast (514.609 µs) : 492, 537 . : milestone, 515, iast_FULL (732.832 µs) : 711, 755 . : milestone, 733, iast_GLOBAL (561.636 µs) : 539, 584 . : milestone, 562, iast_HARDCODED_SECRET_DISABLED (509.291 µs) : 488, 531 . : milestone, 509, iast_INACTIVE (465.462 µs) : 444, 487 . : milestone, 465, iast_TELEMETRY_OFF (491.772 µs) : 470, 514 . : milestone, 492, tracing (466.941 µs) : 446, 488 . : milestone, 467, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 379.884 µs [360.072 µs, 399.695 µs] -
iast 512.907 µs [491.281 µs, 534.533 µs] 133.023 µs (35.0%)
iast_FULL 728.76 µs [706.212 µs, 751.307 µs] 348.876 µs (91.8%)
iast_GLOBAL 559.055 µs [537.279 µs, 580.831 µs] 179.172 µs (47.2%)
iast_HARDCODED_SECRET_DISABLED 512.776 µs [490.824 µs, 534.727 µs] 132.892 µs (35.0%)
iast_INACTIVE 463.451 µs [442.339 µs, 484.563 µs] 83.567 µs (22.0%)
iast_TELEMETRY_OFF 497.455 µs [475.978 µs, 518.933 µs] 117.572 µs (30.9%)
tracing 453.181 µs [432.498 µs, 473.864 µs] 73.297 µs (19.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 379.133 µs [358.94 µs, 399.325 µs] -
iast 514.609 µs [492.351 µs, 536.868 µs] 135.477 µs (35.7%)
iast_FULL 732.832 µs [710.867 µs, 754.797 µs] 353.7 µs (93.3%)
iast_GLOBAL 561.636 µs [539.069 µs, 584.204 µs] 182.504 µs (48.1%)
iast_HARDCODED_SECRET_DISABLED 509.291 µs [487.744 µs, 530.837 µs] 130.158 µs (34.3%)
iast_INACTIVE 465.462 µs [443.764 µs, 487.16 µs] 86.329 µs (22.8%)
iast_TELEMETRY_OFF 491.772 µs [469.992 µs, 513.552 µs] 112.639 µs (29.7%)
tracing 466.941 µs [445.78 µs, 488.101 µs] 87.808 µs (23.2%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/stable_cfg_2
git_commit_date 1743705303 1743712892
git_commit_sha 8adba3f 23f1013
release_version 1.48.0-SNAPSHOT~8adba3f8b4 1.48.0-SNAPSHOT~23f1013e88
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1743715468 1743715468
ci_job_id 880473416 880473416
ci_pipeline_id 61036396 61036396
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-gtma1pc4-project-304-concurrent-2-qt1z9dhv 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-gtma1pc4-project-304-concurrent-2-qt1z9dhv 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant appsec appsec

Summary

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

Execution time for biojava
gantt title biojava - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section baseline no_agent (15.474 s) : 15474000, 15474000 . : milestone, 15474000, appsec (14.951 s) : 14951000, 14951000 . : milestone, 14951000, iast (19.054 s) : 19054000, 19054000 . : milestone, 19054000, iast_GLOBAL (18.117 s) : 18117000, 18117000 . : milestone, 18117000, profiling (15.021 s) : 15021000, 15021000 . : milestone, 15021000, tracing (15.021 s) : 15021000, 15021000 . : milestone, 15021000, section candidate no_agent (15.435 s) : 15435000, 15435000 . : milestone, 15435000, appsec (15.043 s) : 15043000, 15043000 . : milestone, 15043000, iast (18.445 s) : 18445000, 18445000 . : milestone, 18445000, iast_GLOBAL (17.95 s) : 17950000, 17950000 . : milestone, 17950000, profiling (14.948 s) : 14948000, 14948000 . : milestone, 14948000, tracing (15.021 s) : 15021000, 15021000 . : milestone, 15021000, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.474 s [15.474 s, 15.474 s] -
appsec 14.951 s [14.951 s, 14.951 s] -523.0 ms (-3.4%)
iast 19.054 s [19.054 s, 19.054 s] 3.58 s (23.1%)
iast_GLOBAL 18.117 s [18.117 s, 18.117 s] 2.643 s (17.1%)
profiling 15.021 s [15.021 s, 15.021 s] -453.0 ms (-2.9%)
tracing 15.021 s [15.021 s, 15.021 s] -453.0 ms (-2.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.435 s [15.435 s, 15.435 s] -
appsec 15.043 s [15.043 s, 15.043 s] -392.0 ms (-2.5%)
iast 18.445 s [18.445 s, 18.445 s] 3.01 s (19.5%)
iast_GLOBAL 17.95 s [17.95 s, 17.95 s] 2.515 s (16.3%)
profiling 14.948 s [14.948 s, 14.948 s] -487.0 ms (-3.2%)
tracing 15.021 s [15.021 s, 15.021 s] -414.0 ms (-2.7%)
Execution time for tomcat
gantt title tomcat - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~23f1013e88, baseline=1.48.0-SNAPSHOT~8adba3f8b4 dateFormat X axisFormat %s section baseline no_agent (1.472 ms) : 1460, 1483 . : milestone, 1472, appsec (2.368 ms) : 2321, 2414 . : milestone, 2368, iast (2.146 ms) : 2088, 2205 . : milestone, 2146, iast_GLOBAL (2.189 ms) : 2130, 2247 . : milestone, 2189, profiling (2.029 ms) : 1981, 2078 . : milestone, 2029, tracing (1.965 ms) : 1920, 2010 . : milestone, 1965, section candidate no_agent (1.473 ms) : 1461, 1484 . : milestone, 1473, appsec (2.362 ms) : 2316, 2408 . : milestone, 2362, iast (2.143 ms) : 2085, 2202 . : milestone, 2143, iast_GLOBAL (2.184 ms) : 2125, 2243 . : milestone, 2184, profiling (1.992 ms) : 1946, 2039 . : milestone, 1992, tracing (1.972 ms) : 1927, 2017 . : milestone, 1972, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.472 ms [1.46 ms, 1.483 ms] -
appsec 2.368 ms [2.321 ms, 2.414 ms] 895.931 µs (60.9%)
iast 2.146 ms [2.088 ms, 2.205 ms] 674.367 µs (45.8%)
iast_GLOBAL 2.189 ms [2.13 ms, 2.247 ms] 716.699 µs (48.7%)
profiling 2.029 ms [1.981 ms, 2.078 ms] 557.504 µs (37.9%)
tracing 1.965 ms [1.92 ms, 2.01 ms] 493.2 µs (33.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.473 ms [1.461 ms, 1.484 ms] -
appsec 2.362 ms [2.316 ms, 2.408 ms] 889.163 µs (60.4%)
iast 2.143 ms [2.085 ms, 2.202 ms] 670.408 µs (45.5%)
iast_GLOBAL 2.184 ms [2.125 ms, 2.243 ms] 710.558 µs (48.2%)
profiling 1.992 ms [1.946 ms, 2.039 ms] 519.274 µs (35.3%)
tracing 1.972 ms [1.927 ms, 2.017 ms] 499.509 µs (33.9%)
Comment on lines 9 to 11
public ConfigurationMap() {
return;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Code Quality Violation

Consider adding super() or this() to your constructor (...read more)

In Java, it is suggested to call super() in an extended class. This rule will report a violation if both a call to super() and an overloaded constructor are absent.

View in Datadog  Leave us feedback  Documentation

// as not to re-run this query
return true;
case "tags":
// TODO: Determine where tags are sourced from
Copy link
Contributor Author

Choose a reason for hiding this comment

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

TODO: We may not fully flesh out tags in time, but this should not be a blocker, so this should return false for now and be marked with a TODO to support it and a link to the spec.

Comment on lines 9 to 11
public ConfigurationMap() {
return;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Code Quality Violation

Consider adding super() or this() to your constructor (...read more)

In Java, it is suggested to call super() in an extended class. This rule will report a violation if both a call to super() and an overloaded constructor are absent.

View in Datadog  Leave us feedback  Documentation

relocate 'okhttp3', 'datadog.okhttp3'
relocate 'okio', 'datadog.okio'
// Include the YAML config classes in bootstrap
relocate 'datadog.trace.bootstrap.config.provider.StableConfigYaml', 'datadog.trace.bootstrap.config.provider.stableconfigyaml'
Copy link
Contributor Author

Choose a reason for hiding this comment

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

heads up @mcculls - I had to add this entry after encountering a NoClassDefException error at runtime for line 34 of StableConfigParser.java (which invokes StableConfigYaml.class). After adding this line, Java is now passing all system tests. I'm not sure if there are any concerns with this approach.

@mtoffl01 mtoffl01 changed the title [WIP] Support targeting services with configurations in stable configuration file Support targeting services with configurations in stable configuration file Mar 19, 2025
@mtoffl01 mtoffl01 changed the base branch from master to mtoff/jvm-args March 21, 2025 15:43
@mtoffl01 mtoffl01 requested review from a team as code owners March 31, 2025 13:55
injectEnvConfig("DD_PROFILING_ENABLED", "true")
injectEnvConfig("DD_SERVICE", "mysvc")
injectEnvConfig("DD_TAGS", "team:apm,component:web")
// injectSysConfig("--DCustomKey", "value")
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@mcculls ,
I tried to use this method to test against jvm args, but did not work. Do you know of alternatives?

Copy link
Contributor

Choose a reason for hiding this comment

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

You'd need a test that forks a new JVM and is able to add JVM arguments.

You could use IntegrationTestUtils.runOnSeparateJvm to do that, you would need to create a simple Java main class that prints out something to show the JVM arguments have been processed (i.e. the configuration reflects the JVM arguments)

There's an example of this in https://github.com/DataDog/dd-trace-java/blob/master/dd-java-agent/src/test/groovy/datadog/trace/agent/CustomLogManagerTest.groovy

However, it might make more sense to have this covered in a system test...

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Agreed. Working on a system test for this now.

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.

LGTM - I'd like to get a second review from @amarziali since I'm co-author here

@mcculls mcculls requested a review from amarziali April 2, 2025 12:14
mtoffl01 and others added 2 commits April 2, 2025 11:46
…ider/stableconfigyaml/ConfigurationMap.java Co-authored-by: Stuart McCulloch <stuart.mcculloch@datadoghq.com>
…ider/StableConfigSource.java Co-authored-by: Stuart McCulloch <stuart.mcculloch@datadoghq.com>
@mtoffl01 mtoffl01 force-pushed the mtoff/stable_cfg_2 branch from b7806c6 to dd40811 Compare April 2, 2025 15:51
Copy link
Contributor

@amarziali amarziali left a comment

Choose a reason for hiding this comment

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

lgtm cursory review for IDM

@mtoffl01
Copy link
Contributor Author

mtoffl01 commented Apr 3, 2025

(April 3 10:00am): Marking with do not marge while we await the system tests
UPDATE (April 3 2:00pm): Passing process_arguments system test! Good to merge.

See test_process_arguments test here.

@mtoffl01 mtoffl01 added tag: do not merge Do not merge changes and removed tag: do not merge Do not merge changes labels Apr 3, 2025
@mtoffl01 mtoffl01 enabled auto-merge (squash) April 3, 2025 20:15
@mcculls mcculls disabled auto-merge April 4, 2025 10:36
@mcculls mcculls merged commit 2dfc8ee into master Apr 4, 2025
246 of 250 checks passed
@mcculls mcculls deleted the mtoff/stable_cfg_2 branch April 4, 2025 11:02
@github-actions github-actions bot added this to the 1.48.0 milestone Apr 4, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Apr 11, 2025
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | org.flywaydb.flyway | plugin | misk/gradle/libs.versions.toml | gradle | minor | `11.6.0` -> `11.7.0` | | [com.squareup.okio:okio-fakefilesystem](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.squareup.okio:okio](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.autonomousapps.dependency-analysis](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin) | plugin | misk/gradle/libs.versions.toml | gradle | minor | `2.15.0` -> `2.16.0` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | --- ### Release Notes <details> <summary>square/okio (com.squareup.okio:okio-fakefilesystem)</summary> ### [`v3.11.0`](https://github.com/square/okio/blob/HEAD/CHANGELOG.md#Version-3110) *2025-04-09* - Fix: Clear the deflater's byte array reference - New: Faster implementation of `String.decodeHex()` on Kotlin/JS. - New: Declare `EXACTLY_ONCE` execution for blocks like `Closeable.use {}` and `FileSystem.read {}`. - Upgrade: \[Kotlin 2.1.20]\[kotlin\_2\_1\_20]. </details> <details> <summary>autonomousapps/dependency-analysis-android-gradle-plugin (com.autonomousapps.dependency-analysis)</summary> ### [`v2.16.0`](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/blob/HEAD/CHANGELOG.md#Version-2160) - \[Feat]: support `com.android.test` projects. - \[Feat]: support typesafe project accessors with opt-in. ```kotlin dependencyAnalysis { useTypesafeProjectAccessors(true) // false by default } ``` </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.48.1`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.1): 1.48.1 ### Components #### Tracer internal logging - 🐛 Remove print line causing unnecessary logs ([#&#8203;8687](DataDog/dd-trace-java#8687) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) ### [`v1.48.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.0): 1.48.0 ### Known Bugs > \[!NOTE] > If you are experiencing issues with spamming timeout logs, please update to the [latest version](https://github.com/DataDog/dd-trace-java/releases/latest) or set [JDK_SOCKET_ENABLED](https://github.com/DataDog/dd-trace-java/blob/33fc3c9a9b7cda3beda88b8b3e5224ae2b10764a/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java#L98) to false. ### Components #### Application Security Management (IAST) - ✨ Fix vulnerability location org.jose4j.lang.HashUtil ([#&#8203;8610](DataDog/dd-trace-java#8610) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Fix weak randomness in oracle.ucp.util.OpaqueString ([#&#8203;8609](DataDog/dd-trace-java#8609) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Fix weak hash false positive in oracle.security.o5logon.O5Logon ([#&#8203;8608](DataDog/dd-trace-java#8608) - [@&#8203;jandro996](https://github.com/jandro996)) - 🐛 Prevent before callsites targeting constructors in super calls ([#&#8203;8549](DataDog/dd-trace-java#8549) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Application Security Management (WAF) - ✨ Update login events public SDK to V2 ([#&#8203;8620](DataDog/dd-trace-java#8620) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#&#8203;8573](DataDog/dd-trace-java#8573) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Improve detection of missing request end events ([#&#8203;8510](DataDog/dd-trace-java#8510) - [@&#8203;smola](https://github.com/smola)) - 🧹 Remove remote configuration for API Security sampling rate ([#&#8203;8486](DataDog/dd-trace-java#8486) - [@&#8203;smola](https://github.com/smola)) - ✨ Add setUser to user monitoring SDK ([#&#8203;8482](DataDog/dd-trace-java#8482) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add missing address for signup event ([#&#8203;8469](DataDog/dd-trace-java#8469) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Allow login events SDK to be used with appsec disabled ([#&#8203;8464](DataDog/dd-trace-java#8464) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add support for endpoint discovery in spring mvc ([#&#8203;8352](DataDog/dd-trace-java#8352) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ New API Security sampling algorithm ([#&#8203;8178](DataDog/dd-trace-java#8178) - [@&#8203;ValentinZakharov](https://github.com/ValentinZakharov)) #### Build & Tooling - ✨ Add buffer size customizability to JDK UDS support ([#&#8203;8629](DataDog/dd-trace-java#8629) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) - ✨ Add JDK built-in support for UDS on Java 16+ ([#&#8203;8314](DataDog/dd-trace-java#8314) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) #### Configuration at Runtime - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#&#8203;8573](DataDog/dd-trace-java#8573) - [@&#8203;jandro996](https://github.com/jandro996)) #### Continuous Integration Visibility - 🐛 Prevent double reporting of Scalatest events when using SBT with test forking ([#&#8203;8682](DataDog/dd-trace-java#8682) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Shutdown CI Visibility test event handlers before tracer ([#&#8203;8677](DataDog/dd-trace-java#8677) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Do not apply JUnit 4 instrumentation to MUnit runners ([#&#8203;8675](DataDog/dd-trace-java#8675), [#&#8203;8683](DataDog/dd-trace-java#8683) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Remove error log when source path resolution fails on isModified check ([#&#8203;8663](DataDog/dd-trace-java#8663) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement tests reordering for JUnit 4 ([#&#8203;8650](DataDog/dd-trace-java#8650) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Set default Attempt to Fix retries if none provided from the backend ([#&#8203;8615](DataDog/dd-trace-java#8615) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Allow to manually set PR info ([#&#8203;8566](DataDog/dd-trace-java#8566) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Test Optimization init when repo root cannot be determined ([#&#8203;8533](DataDog/dd-trace-java#8533) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add capabilities tagging ([#&#8203;8499](DataDog/dd-trace-java#8499), [#&#8203;8540](DataDog/dd-trace-java#8540) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) #### Crash tracking - 🐛 Remove dependency on bash from crash/oome uploder scripts ([#&#8203;8652](DataDog/dd-trace-java#8652) - [@&#8203;jbachorik](https://github.com/jbachorik)) #### Data Streams Monitoring - ✨ e2e pipeline configuration when data jobs is enabled ([#&#8203;8553](DataDog/dd-trace-java#8553) - [@&#8203;kr-igor](https://github.com/kr-igor)) #### Dynamic Instrumentation - 🐛 Fix In-Product when config is empty ([#&#8203;8679](DataDog/dd-trace-java#8679) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨ Add support for filtering shaded third-party libs ([#&#8203;8612](DataDog/dd-trace-java#8612) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨ Add In-Product Enablement ([#&#8203;8587](DataDog/dd-trace-java#8587) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨⚡ Reduce footprint of SourceFile tracking ([#&#8203;8524](DataDog/dd-trace-java#8524) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨⚡ Optimize the SourceFile tracking ([#&#8203;8520](DataDog/dd-trace-java#8520) - [@&#8203;jpbempel](https://github.com/jpbempel)) #### OpenTracing - 🧹 Remove activeScope() use in OpenTracing shim ([#&#8203;8478](DataDog/dd-trace-java#8478) - [@&#8203;mcculls](https://github.com/mcculls)) #### Profiling - ✨ Add profiler env check command to AgentCLI ([#&#8203;8671](DataDog/dd-trace-java#8671) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.23.0 ([#&#8203;8668](DataDog/dd-trace-java#8668) - [@&#8203;jbachorik](https://github.com/jbachorik)) - Fix a crash related to ElfParser::loadSymbolTable ([#&#8203;191](DataDog/dd-trace-java#191)) by [@&#8203;yanglong1010](https://github.com/yanglong1010) in DataDog/java-profiler#192 - Unwind String.indexOf intrinsic on AArch64 by [@&#8203;MattAlp](https://github.com/MattAlp) in DataDog/java-profiler#193 - Fix Java 24 support by [@&#8203;jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#194 - A set of fixes related to clang, aarch64 and musl pecularities of vmstructs stack unwinder by [@&#8203;jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#199 - 🐛 Remove process information from JFR recording ([#&#8203;8661](DataDog/dd-trace-java#8661) - [@&#8203;r1viollet](https://github.com/r1viollet)) - 🐛 Make TempLocationManager USER aware ([#&#8203;8605](DataDog/dd-trace-java#8605) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#&#8203;8561](DataDog/dd-trace-java#8561) - [@&#8203;wmouchere](https://github.com/wmouchere)) #### Telemetry - 🐛 Fix appsec.rasp.error and appsec.waf.error telemetry metrics ([#&#8203;8624](DataDog/dd-trace-java#8624) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Create metric: appsec.rasp.rule.skipped ([#&#8203;8618](DataDog/dd-trace-java#8618) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#&#8203;8561](DataDog/dd-trace-java#8561) - [@&#8203;wmouchere](https://github.com/wmouchere)) #### Testing - 🧹 Simplify ssi tests one-pipeline ([#&#8203;8558](DataDog/dd-trace-java#8558) - [@&#8203;robertomonteromiguel](https://github.com/robertomonteromiguel)) - ✨ Add smoke tests for java's concurrent API ([#&#8203;8438](DataDog/dd-trace-java#8438) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) #### Trace context propagation - ✨ Adding Support for `TRACE_PROPAGATION_BEHAVIOR_EXTRACT` ([#&#8203;8535](DataDog/dd-trace-java#8535) - [@&#8203;mhlidd](https://github.com/mhlidd)) #### Tracer core - 🐛 Ensure shaded helpers have unique names ([#&#8203;8559](DataDog/dd-trace-java#8559) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Support common config sources for user-provided git info ([#&#8203;8547](DataDog/dd-trace-java#8547) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Make the default config sources more robust when a security manager is installed ([#&#8203;8544](DataDog/dd-trace-java#8544) - [@&#8203;mcculls](https://github.com/mcculls)) - ✨ Support targeting services with configurations in stable configuration file ([#&#8203;8526](DataDog/dd-trace-java#8526) - [@&#8203;mtoffl01](https://github.com/mtoffl01)) - ✨ Add new parser for `DD_TAGS` and prioritizing `DD_SERVICE` ([#&#8203;8296](DataDog/dd-trace-java#8296) - [@&#8203;mhlidd](https://github.com/mhlidd)) #### Tracer internal logging - 🐛 Add missing debug log for the cloudPayloadTaggingServices config ([#&#8203;8600](DataDog/dd-trace-java#8600) - [@&#8203;ygree](https://github.com/ygree)) - ✨ Add the possibility to output the logs of the Java tracer in JSON ([#&#8203;8083](DataDog/dd-trace-java#8083) - [@&#8203;cecile75](https://github.com/cecile75)) #### Tracer public API - ✨ Introducing `DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED` Config ([#&#8203;8536](DataDog/dd-trace-java#8536) - [@&#8203;mhlidd](https://github.com/mhlidd)) - ✨ Config Consistency Round 2 ([#&#8203;8489](DataDog/dd-trace-java#8489) - [@&#8203;mhlidd](https://github.com/mhlidd)) ### Instrumentations #### - 🐛 Fix NPE in getMdcCopy of LoggingEventInstrumentation ([#&#8203;8599](DataDog/dd-trace-java#8599) - [@&#8203;ygree](https://github.com/ygree)) #### Apache Spark instrumentation - ✨ Instrument Runtime.exit() to finish spark application spans ([#&#8203;8572](DataDog/dd-trace-java#8572) - [@&#8203;paul-laffon-dd](https://github.com/paul-laffon-dd)) - ✨ Configure OpenLineage if present in Spark instrumentation ([#&#8203;8541](DataDog/dd-trace-java#8541) - [@&#8203;mobuchowski](https://github.com/mobuchowski)) #### Armeria Instrumentation - ✨ Support armeria grpc 1.32.3 ([#&#8203;8606](DataDog/dd-trace-java#8606) - [@&#8203;github-actions](https://github.com/github-actions)\[bot]) #### AWS DynamoDB Instrumentation - ✨ Create DynamoDB instrumentation + add span pointers for `updateItem` and `deleteItem` ([#&#8203;8490](DataDog/dd-trace-java#8490) - [@&#8203;nhulston](https://github.com/nhulston)) #### AWS SDK instrumentation - ✨ Add DynamoDB in DEFAULT_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES ([#&#8203;8595](DataDog/dd-trace-java#8595) - [@&#8203;joeyzhao2018](https://github.com/joeyzhao2018)) #### Azure Functions instrumentation - ✨ Enable tracer computed trace metrics by default for Azure Functions ([#&#8203;8518](DataDog/dd-trace-java#8518) - [@&#8203;duncanpharvey](https://github.com/duncanpharvey)) - 💡 Add azure-functions instrumentation ([#&#8203;8432](DataDog/dd-trace-java#8432) - [@&#8203;duncanpharvey](https://github.com/duncanpharvey)) #### Core Java language instrumentation - 🐛 Fix ForkJoinPool.execute() instrumentation on Java 21+ ([#&#8203;8560](DataDog/dd-trace-java#8560) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) #### Eclipse Vert.x instrumentation - ✨ Add vertx postgresql client instrumentation ([#&#8203;8471](DataDog/dd-trace-java#8471) - [@&#8203;vandonr](https://github.com/vandonr) - thanks for the contribution!) #### Kafka instrumentation - ✨ Support and test kafka-clients 4 ([#&#8203;8581](DataDog/dd-trace-java#8581) - [@&#8203;amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - ✨ Avoid disconnected traces when using Kotlin flowOn ([#&#8203;8651](DataDog/dd-trace-java#8651) - [@&#8203;mcculls](https://github.com/mcculls)) #### OpenTelemetry instrumentation - 🧹 Migrate OtelContext wrapper to new internal Context API ([#&#8203;8645](DataDog/dd-trace-java#8645) - [@&#8203;mcculls](https://github.com/mcculls)) #### Spring instrumentation - 🐛 Support CompletableFuture on spring webmvc controllers ([#&#8203;8659](DataDog/dd-trace-java#8659) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Add support for endpoint discovery in spring mvc ([#&#8203;8352](DataDog/dd-trace-java#8352) - [@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### WebSocket Instrumentation - ✨ Instrument Jetty websocket pojo ([#&#8203;8562](DataDog/dd-trace-java#8562) - [@&#8203;amarziali](https://github.com/amarziali)) - 💡 Instrument Java Websocket API (JSR356) ([#&#8203;8440](DataDog/dd-trace-java#8440) - [@&#8203;amarziali](https://github.com/amarziali)) #### All other instrumentations - ✨ Introduce cache for peer.hostname lookup ([#&#8203;8601](DataDog/dd-trace-java#8601) - [@&#8203;mcculls](https://github.com/mcculls)) - ✨ Support pekko http 1.1 ([#&#8203;8532](DataDog/dd-trace-java#8532) - [@&#8203;amarziali](https://github.com/amarziali)) </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**: Disabled by config. Please merge this manually once you are satisfied. ♻ **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: 331314f71acaced3adc75ea5d7e855c248d593fc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: core Tracer core type: enhancement Enhancements and improvements