Skip to content
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

Only decorate spans without code origin information #8105

Merged
merged 1 commit into from
Dec 20, 2024

Conversation

evanchooly
Copy link
Contributor

@evanchooly evanchooly commented Dec 17, 2024

What Does This Do

There are scenarios where multiple code origin probes might want to decorate the local root span, e.g., with information. This PR ensures this only happens once.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: DEBUG-3212

@evanchooly evanchooly added the comp: debugger Dynamic Instrumentation label Dec 17, 2024
@evanchooly evanchooly requested a review from a team as a code owner December 17, 2024 17:43
Copy link
Contributor

github-actions bot commented Dec 17, 2024

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.

1 similar comment
Copy link
Contributor

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.

Copy link
Member

@jpbempel jpbempel left a comment

Choose a reason for hiding this comment

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

LGTM
just want a unit test to cover this case, please

@pr-commenter
Copy link

pr-commenter bot commented Dec 17, 2024

Debugger benchmarks

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
ci_job_date 1734712014 1734712394
end_time 2024-12-20T16:28:10 2024-12-20T16:34:31
git_branch master evanchooly/DEBUG-3212
git_commit_sha a3e9bda ab5a29a
start_time 2024-12-20T16:26:55 2024-12-20T16:33:15
See matching parameters
Baseline Candidate
ci_job_id 747220129 747220129
ci_pipeline_id 51664909 51664909
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
git_commit_date 1734711306 1734711306

Summary

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

scenario Δ mean agg_http_req_duration_min Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p75 Δ mean agg_http_req_duration_p99 Δ mean throughput
scenario:loop better
[-201.304µs; -123.786µs] or [-1.944%; -1.196%]
better
[-217.017µs; -120.035µs] or [-2.062%; -1.141%]
better
[-247.310µs; -119.017µs] or [-2.329%; -1.121%]
same unsure
[+0.210op/s; +2.472op/s] or [+0.224%; +2.633%]
See unchanged results
scenario Δ mean agg_http_req_duration_min Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p75 Δ mean agg_http_req_duration_p99 Δ mean throughput
scenario:noprobe unstable
[-20.975µs; +34.094µs] or [-7.841%; +12.745%]
unstable
[-31.713µs; +48.676µs] or [-10.363%; +15.906%]
unstable
[-43.160µs; +62.852µs] or [-13.484%; +19.636%]
unstable
[-84.744µs; +130.898µs] or [-14.293%; +22.078%]
same
scenario:basic same same same unstable
[-39.009µs; +61.904µs] or [-7.313%; +11.606%]
unstable
[-250.918op/s; +122.713op/s] or [-9.786%; +4.786%]
Request duration reports for reports
gantt
    title reports - request duration [CI 0.99] : candidate=None, baseline=None
    dateFormat X
    axisFormat %s
section baseline
noprobe (306.014 µs) : 275, 337
.   : milestone, 306,
basic (303.156 µs) : 294, 312
.   : milestone, 303,
loop (10.523 ms) : 10465, 10581
.   : milestone, 10523,
section candidate
noprobe (314.495 µs) : 270, 359
.   : milestone, 314,
basic (306.963 µs) : 296, 318
.   : milestone, 307,
loop (10.354 ms) : 10329, 10380
.   : milestone, 10354,
Loading
  • baseline results
Scenario Request median duration [CI 0.99]
noprobe 306.014 µs [275.301 µs, 336.726 µs]
basic 303.156 µs [294.075 µs, 312.236 µs]
loop 10.523 ms [10.465 ms, 10.581 ms]
  • candidate results
Scenario Request median duration [CI 0.99]
noprobe 314.495 µs [269.85 µs, 359.14 µs]
basic 306.963 µs [295.658 µs, 318.269 µs]
loop 10.354 ms [10.329 ms, 10.38 ms]

@evanchooly
Copy link
Contributor Author

LGTM just want a unit test to cover this case, please

I tried to build one but the case where I ran in to it with the demo app was using @Trace. I suppose I could force another entry span probe in a subsequent method call. I'll give that a shot.

@pr-commenter
Copy link

pr-commenter bot commented Dec 17, 2024

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master evanchooly/DEBUG-3212
git_commit_date 1734694675 1734711306
git_commit_sha a3e9bda ab5a29a
release_version 1.45.0-SNAPSHOT~a3e9bda406 1.45.0-SNAPSHOT~ab5a29a408
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1734713817 1734713817
ci_job_id 747220123 747220123
ci_pipeline_id 51664909 51664909
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
module Agent Agent
parent None None
variant iast iast

Summary

Found 3 performance improvements and 16 performance regressions! Performance is the same for 40 metrics, 4 unstable metrics.

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:startup:insecure-bank:iast:Agent.start worse
[+52.585ms; +83.311ms] or [+4.473%; +7.086%]
1.244s 1.176s
scenario:startup:insecure-bank:iast:GlobalTracer worse
[+60.929ms; +66.180ms] or [+24.785%; +26.921%]
309.386ms 245.831ms
scenario:startup:insecure-bank:iast:Remote Config better
[-72.241µs; -24.434µs] or [-11.161%; -3.775%]
598.950µs 647.287µs
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:Agent.start worse
[+54.366ms; +64.438ms] or [+4.620%; +5.476%]
1.236s 1.177s
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:GlobalTracer worse
[+61.417ms; +65.660ms] or [+24.906%; +26.626%]
310.137ms 246.599ms
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:Remote Config better
[-75.459µs; -40.625µs] or [-11.486%; -6.184%]
598.918µs 656.960µs
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:Agent.start worse
[+54.795ms; +83.929ms] or [+4.679%; +7.167%]
1.240s 1.171s
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:GlobalTracer worse
[+61.153ms; +67.176ms] or [+24.917%; +27.370%]
309.598ms 245.434ms
scenario:startup:insecure-bank:tracing:Agent.start worse
[+47.812ms; +64.872ms] or [+4.531%; +6.148%]
1.111s 1.055s
scenario:startup:insecure-bank:tracing:GlobalTracer worse
[+60.722ms; +63.026ms] or [+23.714%; +24.613%]
317.938ms 256.064ms
scenario:startup:petclinic:appsec:Agent.start worse
[+48.661ms; +68.446ms] or [+4.101%; +5.769%]
1.245s 1.187s
scenario:startup:petclinic:appsec:GlobalTracer worse
[+59.304ms; +64.506ms] or [+23.403%; +25.456%]
315.310ms 253.405ms
scenario:startup:petclinic:iast:Agent.start worse
[+50.220ms; +86.225ms] or [+4.267%; +7.327%]
1.245s 1.177s
scenario:startup:petclinic:iast:GlobalTracer worse
[+59.726ms; +67.577ms] or [+24.234%; +27.419%]
310.111ms 246.459ms
scenario:startup:petclinic:iast:Remote Config better
[-59.968µs; -23.328µs] or [-9.249%; -3.598%]
606.706µs 648.354µs
scenario:startup:petclinic:profiling:Agent.start worse
[+47.495ms; +74.669ms] or [+3.715%; +5.840%]
1.340s 1.279s
scenario:startup:petclinic:profiling:GlobalTracer worse
[+62.623ms; +70.652ms] or [+16.776%; +18.926%]
439.935ms 373.297ms
scenario:startup:petclinic:tracing:Agent.start worse
[+53.870ms; +81.932ms] or [+5.123%; +7.792%]
1.119s 1.051s
scenario:startup:petclinic:tracing:GlobalTracer worse
[+62.298ms; +70.079ms] or [+24.392%; +27.439%]
321.589ms 255.400ms
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.051 s) : 0, 1051479
Total [baseline] (10.348 s) : 0, 10347950
Agent [candidate] (1.119 s) : 0, 1119380
Total [candidate] (10.441 s) : 0, 10441293
section appsec
Agent [baseline] (1.187 s) : 0, 1186524
Total [baseline] (10.682 s) : 0, 10681528
Agent [candidate] (1.245 s) : 0, 1245078
Total [candidate] (10.717 s) : 0, 10717175
section iast
Agent [baseline] (1.177 s) : 0, 1176827
Total [baseline] (10.998 s) : 0, 10997802
Agent [candidate] (1.245 s) : 0, 1245050
Total [candidate] (11.04 s) : 0, 11040482
section profiling
Agent [baseline] (1.279 s) : 0, 1278545
Total [baseline] (10.773 s) : 0, 10773227
Agent [candidate] (1.34 s) : 0, 1339627
Total [candidate] (10.846 s) : 0, 10846090
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.051 s -
Agent appsec 1.187 s 135.045 ms (12.8%)
Agent iast 1.177 s 125.348 ms (11.9%)
Agent profiling 1.279 s 227.066 ms (21.6%)
Total tracing 10.348 s -
Total appsec 10.682 s 333.577 ms (3.2%)
Total iast 10.998 s 649.852 ms (6.3%)
Total profiling 10.773 s 425.276 ms (4.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.119 s -
Agent appsec 1.245 s 125.698 ms (11.2%)
Agent iast 1.245 s 125.67 ms (11.2%)
Agent profiling 1.34 s 220.248 ms (19.7%)
Total tracing 10.441 s -
Total appsec 10.717 s 275.882 ms (2.6%)
Total iast 11.04 s 599.189 ms (5.7%)
Total profiling 10.846 s 404.797 ms (3.9%)
gantt
    title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (710.365 ms) : 0, 710365
BytebuddyAgent [candidate] (717.654 ms) : 0, 717654
GlobalTracer [baseline] (255.4 ms) : 0, 255400
GlobalTracer [candidate] (321.589 ms) : 0, 321589
AppSec [baseline] (58.293 ms) : 0, 58293
AppSec [candidate] (55.409 ms) : 0, 55409
Remote Config [baseline] (681.697 µs) : 0, 682
Remote Config [candidate] (673.126 µs) : 0, 673
Telemetry [baseline] (11.813 ms) : 0, 11813
Telemetry [candidate] (8.958 ms) : 0, 8958
section appsec
BytebuddyAgent [baseline] (728.986 ms) : 0, 728986
BytebuddyAgent [candidate] (727.596 ms) : 0, 727596
GlobalTracer [baseline] (253.405 ms) : 0, 253405
GlobalTracer [candidate] (315.31 ms) : 0, 315310
AppSec [baseline] (170.671 ms) : 0, 170671
AppSec [candidate] (169.097 ms) : 0, 169097
IAST [baseline] (19.331 ms) : 0, 19331
IAST [candidate] (19.163 ms) : 0, 19163
Remote Config [baseline] (655.087 µs) : 0, 655
Remote Config [candidate] (646.575 µs) : 0, 647
Telemetry [baseline] (8.268 ms) : 0, 8268
Telemetry [candidate] (7.933 ms) : 0, 7933
section iast
BytebuddyAgent [baseline] (827.479 ms) : 0, 827479
BytebuddyAgent [candidate] (832.271 ms) : 0, 832271
GlobalTracer [baseline] (246.459 ms) : 0, 246459
GlobalTracer [candidate] (310.111 ms) : 0, 310111
AppSec [baseline] (57.871 ms) : 0, 57871
AppSec [candidate] (57.547 ms) : 0, 57547
IAST [baseline] (21.045 ms) : 0, 21045
IAST [candidate] (21.168 ms) : 0, 21168
Remote Config [baseline] (648.354 µs) : 0, 648
Remote Config [candidate] (606.706 µs) : 0, 607
Telemetry [baseline] (8.458 ms) : 0, 8458
Telemetry [candidate] (8.33 ms) : 0, 8330
section profiling
BytebuddyAgent [baseline] (705.293 ms) : 0, 705293
BytebuddyAgent [candidate] (700.466 ms) : 0, 700466
GlobalTracer [baseline] (373.297 ms) : 0, 373297
GlobalTracer [candidate] (439.935 ms) : 0, 439935
AppSec [baseline] (53.811 ms) : 0, 53811
AppSec [candidate] (54.184 ms) : 0, 54184
Remote Config [baseline] (655.922 µs) : 0, 656
Remote Config [candidate] (649.906 µs) : 0, 650
Telemetry [baseline] (7.825 ms) : 0, 7825
Telemetry [candidate] (7.882 ms) : 0, 7882
ProfilingAgent [baseline] (95.729 ms) : 0, 95729
ProfilingAgent [candidate] (94.98 ms) : 0, 94980
Profiling [baseline] (95.753 ms) : 0, 95753
Profiling [candidate] (95.003 ms) : 0, 95003
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.055 s) : 0, 1055124
Total [baseline] (8.594 s) : 0, 8594146
Agent [candidate] (1.111 s) : 0, 1111466
Total [candidate] (8.655 s) : 0, 8655345
section iast
Agent [baseline] (1.176 s) : 0, 1175668
Total [baseline] (9.22 s) : 0, 9219595
Agent [candidate] (1.244 s) : 0, 1243616
Total [candidate] (9.239 s) : 0, 9239325
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.177 s) : 0, 1176816
Total [baseline] (9.146 s) : 0, 9145551
Agent [candidate] (1.236 s) : 0, 1236218
Total [candidate] (9.232 s) : 0, 9231977
section iast_TELEMETRY_OFF
Agent [baseline] (1.171 s) : 0, 1171127
Total [baseline] (9.177 s) : 0, 9177121
Agent [candidate] (1.24 s) : 0, 1240489
Total [candidate] (9.291 s) : 0, 9290554
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.055 s -
Agent iast 1.176 s 120.544 ms (11.4%)
Agent iast_HARDCODED_SECRET_DISABLED 1.177 s 121.692 ms (11.5%)
Agent iast_TELEMETRY_OFF 1.171 s 116.003 ms (11.0%)
Total tracing 8.594 s -
Total iast 9.22 s 625.449 ms (7.3%)
Total iast_HARDCODED_SECRET_DISABLED 9.146 s 551.405 ms (6.4%)
Total iast_TELEMETRY_OFF 9.177 s 582.975 ms (6.8%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.111 s -
Agent iast 1.244 s 132.15 ms (11.9%)
Agent iast_HARDCODED_SECRET_DISABLED 1.236 s 124.752 ms (11.2%)
Agent iast_TELEMETRY_OFF 1.24 s 129.023 ms (11.6%)
Total tracing 8.655 s -
Total iast 9.239 s 583.981 ms (6.7%)
Total iast_HARDCODED_SECRET_DISABLED 9.232 s 576.632 ms (6.7%)
Total iast_TELEMETRY_OFF 9.291 s 635.209 ms (7.3%)
gantt
    title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (712.155 ms) : 0, 712155
BytebuddyAgent [candidate] (714.127 ms) : 0, 714127
GlobalTracer [baseline] (256.064 ms) : 0, 256064
GlobalTracer [candidate] (317.938 ms) : 0, 317938
AppSec [baseline] (57.241 ms) : 0, 57241
AppSec [candidate] (54.938 ms) : 0, 54938
Remote Config [baseline] (693.8 µs) : 0, 694
Remote Config [candidate] (677.302 µs) : 0, 677
Telemetry [baseline] (14.068 ms) : 0, 14068
Telemetry [candidate] (8.829 ms) : 0, 8829
section iast
BytebuddyAgent [baseline] (827.143 ms) : 0, 827143
BytebuddyAgent [candidate] (832.208 ms) : 0, 832208
GlobalTracer [baseline] (245.831 ms) : 0, 245831
GlobalTracer [candidate] (309.386 ms) : 0, 309386
AppSec [baseline] (57.514 ms) : 0, 57514
AppSec [candidate] (57.411 ms) : 0, 57411
IAST [baseline] (21.227 ms) : 0, 21227
IAST [candidate] (20.867 ms) : 0, 20867
Remote Config [baseline] (647.287 µs) : 0, 647
Remote Config [candidate] (598.95 µs) : 0, 599
Telemetry [baseline] (8.421 ms) : 0, 8421
Telemetry [candidate] (8.232 ms) : 0, 8232
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (827.467 ms) : 0, 827467
BytebuddyAgent [candidate] (825.67 ms) : 0, 825670
GlobalTracer [baseline] (246.599 ms) : 0, 246599
GlobalTracer [candidate] (310.137 ms) : 0, 310137
AppSec [baseline] (57.651 ms) : 0, 57651
AppSec [candidate] (55.816 ms) : 0, 55816
IAST [baseline] (21.104 ms) : 0, 21104
IAST [candidate] (20.941 ms) : 0, 20941
Remote Config [baseline] (656.96 µs) : 0, 657
Remote Config [candidate] (598.918 µs) : 0, 599
Telemetry [baseline] (8.472 ms) : 0, 8472
Telemetry [candidate] (8.204 ms) : 0, 8204
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (823.309 ms) : 0, 823309
BytebuddyAgent [candidate] (828.661 ms) : 0, 828661
GlobalTracer [baseline] (245.434 ms) : 0, 245434
GlobalTracer [candidate] (309.598 ms) : 0, 309598
AppSec [baseline] (57.654 ms) : 0, 57654
AppSec [candidate] (57.952 ms) : 0, 57952
IAST [baseline] (20.791 ms) : 0, 20791
IAST [candidate] (20.642 ms) : 0, 20642
Remote Config [baseline] (640.299 µs) : 0, 640
Remote Config [candidate] (599.512 µs) : 0, 600
Telemetry [baseline] (8.384 ms) : 0, 8384
Telemetry [candidate] (8.227 ms) : 0, 8227
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2024-12-20T16:27:06 2024-12-20T16:34:06
git_branch master evanchooly/DEBUG-3212
git_commit_date 1734694675 1734711306
git_commit_sha a3e9bda ab5a29a
release_version 1.45.0-SNAPSHOT~a3e9bda406 1.45.0-SNAPSHOT~ab5a29a408
start_time 2024-12-20T16:26:52 2024-12-20T16:33:53
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1734712802 1734712802
ci_job_id 747220124 747220124
ci_pipeline_id 51664909 51664909
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant iast iast

Summary

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

Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.337 ms) : 1318, 1356
.   : milestone, 1337,
appsec (1.744 ms) : 1720, 1768
.   : milestone, 1744,
appsec_no_iast (1.769 ms) : 1745, 1793
.   : milestone, 1769,
iast (1.516 ms) : 1493, 1539
.   : milestone, 1516,
profiling (1.55 ms) : 1525, 1575
.   : milestone, 1550,
tracing (1.476 ms) : 1451, 1501
.   : milestone, 1476,
section candidate
no_agent (1.367 ms) : 1347, 1387
.   : milestone, 1367,
appsec (1.773 ms) : 1749, 1796
.   : milestone, 1773,
appsec_no_iast (1.782 ms) : 1759, 1806
.   : milestone, 1782,
iast (1.49 ms) : 1466, 1513
.   : milestone, 1490,
profiling (1.554 ms) : 1530, 1579
.   : milestone, 1554,
tracing (1.494 ms) : 1469, 1518
.   : milestone, 1494,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.337 ms [1.318 ms, 1.356 ms] -
appsec 1.744 ms [1.72 ms, 1.768 ms] 406.852 µs (30.4%)
appsec_no_iast 1.769 ms [1.745 ms, 1.793 ms] 432.387 µs (32.3%)
iast 1.516 ms [1.493 ms, 1.539 ms] 178.584 µs (13.4%)
profiling 1.55 ms [1.525 ms, 1.575 ms] 213.099 µs (15.9%)
tracing 1.476 ms [1.451 ms, 1.501 ms] 139.203 µs (10.4%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.367 ms [1.347 ms, 1.387 ms] -
appsec 1.773 ms [1.749 ms, 1.796 ms] 405.524 µs (29.7%)
appsec_no_iast 1.782 ms [1.759 ms, 1.806 ms] 415.226 µs (30.4%)
iast 1.49 ms [1.466 ms, 1.513 ms] 122.476 µs (9.0%)
profiling 1.554 ms [1.53 ms, 1.579 ms] 187.258 µs (13.7%)
tracing 1.494 ms [1.469 ms, 1.518 ms] 126.278 µs (9.2%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406
    dateFormat X
    axisFormat %s
section baseline
no_agent (379.567 µs) : 360, 400
.   : milestone, 380,
iast (495.941 µs) : 474, 517
.   : milestone, 496,
iast_FULL (664.114 µs) : 642, 686
.   : milestone, 664,
iast_GLOBAL (527.34 µs) : 505, 550
.   : milestone, 527,
iast_HARDCODED_SECRET_DISABLED (492.671 µs) : 471, 514
.   : milestone, 493,
iast_INACTIVE (463.835 µs) : 443, 485
.   : milestone, 464,
iast_TELEMETRY_OFF (489.503 µs) : 468, 511
.   : milestone, 490,
tracing (461.083 µs) : 440, 482
.   : milestone, 461,
section candidate
no_agent (384.131 µs) : 363, 405
.   : milestone, 384,
iast (497.096 µs) : 475, 519
.   : milestone, 497,
iast_FULL (663.558 µs) : 642, 685
.   : milestone, 664,
iast_GLOBAL (519.209 µs) : 498, 541
.   : milestone, 519,
iast_HARDCODED_SECRET_DISABLED (489.376 µs) : 468, 511
.   : milestone, 489,
iast_INACTIVE (455.134 µs) : 434, 476
.   : milestone, 455,
iast_TELEMETRY_OFF (489.836 µs) : 468, 511
.   : milestone, 490,
tracing (458.562 µs) : 438, 480
.   : milestone, 459,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 379.567 µs [359.632 µs, 399.503 µs] -
iast 495.941 µs [474.465 µs, 517.417 µs] 116.374 µs (30.7%)
iast_FULL 664.114 µs [642.23 µs, 685.997 µs] 284.547 µs (75.0%)
iast_GLOBAL 527.34 µs [504.939 µs, 549.742 µs] 147.773 µs (38.9%)
iast_HARDCODED_SECRET_DISABLED 492.671 µs [471.351 µs, 513.991 µs] 113.103 µs (29.8%)
iast_INACTIVE 463.835 µs [442.709 µs, 484.961 µs] 84.268 µs (22.2%)
iast_TELEMETRY_OFF 489.503 µs [468.089 µs, 510.918 µs] 109.936 µs (29.0%)
tracing 461.083 µs [439.674 µs, 482.491 µs] 81.516 µs (21.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 384.131 µs [363.446 µs, 404.816 µs] -
iast 497.096 µs [475.387 µs, 518.805 µs] 112.965 µs (29.4%)
iast_FULL 663.558 µs [641.899 µs, 685.216 µs] 279.427 µs (72.7%)
iast_GLOBAL 519.209 µs [497.646 µs, 540.771 µs] 135.077 µs (35.2%)
iast_HARDCODED_SECRET_DISABLED 489.376 µs [468.111 µs, 510.641 µs] 105.245 µs (27.4%)
iast_INACTIVE 455.134 µs [434.368 µs, 475.9 µs] 71.003 µs (18.5%)
iast_TELEMETRY_OFF 489.836 µs [468.223 µs, 511.45 µs] 105.705 µs (27.5%)
tracing 458.562 µs [437.585 µs, 479.54 µs] 74.431 µs (19.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master evanchooly/DEBUG-3212
git_commit_date 1734694675 1734711306
git_commit_sha a3e9bda ab5a29a
release_version 1.45.0-SNAPSHOT~a3e9bda406 1.45.0-SNAPSHOT~ab5a29a408
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1734713364 1734713364
ci_job_id 747220125 747220125
ci_pipeline_id 51664909 51664909
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant appsec appsec

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.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.474 ms) : 1463, 1486
.   : milestone, 1474,
appsec (2.36 ms) : 2318, 2402
.   : milestone, 2360,
iast (2.103 ms) : 2050, 2157
.   : milestone, 2103,
iast_GLOBAL (2.141 ms) : 2087, 2194
.   : milestone, 2141,
profiling (1.973 ms) : 1930, 2016
.   : milestone, 1973,
tracing (1.938 ms) : 1897, 1978
.   : milestone, 1938,
section candidate
no_agent (1.475 ms) : 1464, 1487
.   : milestone, 1475,
appsec (2.354 ms) : 2312, 2396
.   : milestone, 2354,
iast (2.1 ms) : 2048, 2153
.   : milestone, 2100,
iast_GLOBAL (2.135 ms) : 2082, 2188
.   : milestone, 2135,
profiling (2.466 ms) : 2278, 2655
.   : milestone, 2466,
tracing (1.932 ms) : 1892, 1973
.   : milestone, 1932,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.474 ms [1.463 ms, 1.486 ms] -
appsec 2.36 ms [2.318 ms, 2.402 ms] 885.625 µs (60.1%)
iast 2.103 ms [2.05 ms, 2.157 ms] 629.32 µs (42.7%)
iast_GLOBAL 2.141 ms [2.087 ms, 2.194 ms] 666.658 µs (45.2%)
profiling 1.973 ms [1.93 ms, 2.016 ms] 499.056 µs (33.9%)
tracing 1.938 ms [1.897 ms, 1.978 ms] 463.479 µs (31.4%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.475 ms [1.464 ms, 1.487 ms] -
appsec 2.354 ms [2.312 ms, 2.396 ms] 878.598 µs (59.6%)
iast 2.1 ms [2.048 ms, 2.153 ms] 625.338 µs (42.4%)
iast_GLOBAL 2.135 ms [2.082 ms, 2.188 ms] 660.052 µs (44.7%)
profiling 2.466 ms [2.278 ms, 2.655 ms] 991.176 µs (67.2%)
tracing 1.932 ms [1.892 ms, 1.973 ms] 457.151 µs (31.0%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~ab5a29a408, baseline=1.45.0-SNAPSHOT~a3e9bda406
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.447 s) : 15447000, 15447000
.   : milestone, 15447000,
appsec (15.118 s) : 15118000, 15118000
.   : milestone, 15118000,
iast (18.81 s) : 18810000, 18810000
.   : milestone, 18810000,
iast_GLOBAL (17.592 s) : 17592000, 17592000
.   : milestone, 17592000,
profiling (15.525 s) : 15525000, 15525000
.   : milestone, 15525000,
tracing (14.947 s) : 14947000, 14947000
.   : milestone, 14947000,
section candidate
no_agent (15.413 s) : 15413000, 15413000
.   : milestone, 15413000,
appsec (14.95 s) : 14950000, 14950000
.   : milestone, 14950000,
iast (18.546 s) : 18546000, 18546000
.   : milestone, 18546000,
iast_GLOBAL (18.129 s) : 18129000, 18129000
.   : milestone, 18129000,
profiling (15.526 s) : 15526000, 15526000
.   : milestone, 15526000,
tracing (15.167 s) : 15167000, 15167000
.   : milestone, 15167000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.447 s [15.447 s, 15.447 s] -
appsec 15.118 s [15.118 s, 15.118 s] -329.0 ms (-2.1%)
iast 18.81 s [18.81 s, 18.81 s] 3.363 s (21.8%)
iast_GLOBAL 17.592 s [17.592 s, 17.592 s] 2.145 s (13.9%)
profiling 15.525 s [15.525 s, 15.525 s] 78.0 ms (0.5%)
tracing 14.947 s [14.947 s, 14.947 s] -500.0 ms (-3.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.413 s [15.413 s, 15.413 s] -
appsec 14.95 s [14.95 s, 14.95 s] -463.0 ms (-3.0%)
iast 18.546 s [18.546 s, 18.546 s] 3.133 s (20.3%)
iast_GLOBAL 18.129 s [18.129 s, 18.129 s] 2.716 s (17.6%)
profiling 15.526 s [15.526 s, 15.526 s] 113.0 ms (0.7%)
tracing 15.167 s [15.167 s, 15.167 s] -246.0 ms (-1.6%)

@evanchooly evanchooly force-pushed the evanchooly/DEBUG-3212 branch 2 times, most recently from 23e06ee to 4f7b32d Compare December 19, 2024 22:32
Copy link
Member

@jpbempel jpbempel left a comment

Choose a reason for hiding this comment

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

just a println left

@evanchooly evanchooly force-pushed the evanchooly/DEBUG-3212 branch from 4f7b32d to ab5a29a Compare December 20, 2024 16:15
@evanchooly evanchooly requested a review from jpbempel December 20, 2024 16:20
@evanchooly
Copy link
Contributor Author

this is the final form.

@evanchooly evanchooly merged commit e8e9292 into master Dec 20, 2024
149 checks passed
@evanchooly evanchooly deleted the evanchooly/DEBUG-3212 branch December 20, 2024 17:00
@github-actions github-actions bot added this to the 1.45.0 milestone Dec 20, 2024
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jan 9, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.50.0` -> `2.50.1` |
|
[com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.49.0` -> `2.49.1` |
|
[com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.49.0` -> `2.49.1` |
| [com.google.api:gax](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.59.0` -> `2.59.1` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.44.1` -> `1.45.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.44.1` -> `1.45.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |

---

### Release Notes

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

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

##### Breaking changes

> \[!WARNING]\
> Support for custom scope manager using OpenTelemetry tracer artifact
(`dd-trace-ot`) is dropped.
> Tracing with OpenTracing API and custom scope manager will continue to
work on 1.44.x releases.

##### Components

##### Application Security Management (IAST)

- ✨ Add propagation to URI#toURL method
([#&#8203;8146](DataDog/dd-trace-java#8146) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Increase IAST propagation to StringBuilder setLength
([#&#8203;8119](DataDog/dd-trace-java#8119) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Increase IAST propagation to StringBuffer append
([#&#8203;8082](DataDog/dd-trace-java#8082) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Handle IAST security controls custom validation and
sanitization methods
([#&#8203;7997](DataDog/dd-trace-java#7997) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Application Security Management (WAF)

- ✨ Update user lifecycle tracking to V3
([#&#8203;8108](DataDog/dd-trace-java#8108) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Exploit prevention for Shell Injection / Command Injection
([#&#8203;7615](DataDog/dd-trace-java#7615) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Build & Tooling

- 💡 Support instrumentation of repackaged libraries
([#&#8203;8153](DataDog/dd-trace-java#8153) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Configure native image build setting for JDK-22 based
GraalVM
([#&#8203;8092](DataDog/dd-trace-java#8092) -
[@&#8203;MattAlp](https://github.com/MattAlp))

##### Database Monitoring

- ✨ Add full APM/DBM mode for Oracle
([#&#8203;8090](DataDog/dd-trace-java#8090) -
[@&#8203;nenadnoveljic](https://github.com/nenadnoveljic))

##### Dynamic Instrumentation

- 🐛 make local var hoisting disabled by default
([#&#8203;8158](DataDog/dd-trace-java#8158) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix var hoisting issue when no previous store
([#&#8203;8122](DataDog/dd-trace-java#8122) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Only decorate spans without code origin information
([#&#8203;8105](DataDog/dd-trace-java#8105) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Fix suspend Kotlin methods instrumentation
([#&#8203;8080](DataDog/dd-trace-java#8080) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix class file version detection
([#&#8203;8057](DataDog/dd-trace-java#8057) -
[@&#8203;jpbempel](https://github.com/jpbempel))

##### GraalVM native-image

- ✨ Configure native image build setting for JDK-22 based
GraalVM
([#&#8203;8092](DataDog/dd-trace-java#8092) -
[@&#8203;MattAlp](https://github.com/MattAlp))

##### ML Observability (LLMObs)

- ✨🧪 Add LLMObs configuration
([#&#8203;8076](DataDog/dd-trace-java#8076) -
[@&#8203;gary-huang](https://github.com/gary-huang))

##### Metrics

- Bump integrations-core submodule to 7.60.0
([#&#8203;8098](DataDog/dd-trace-java#8098) -
[@&#8203;mcculls](https://github.com/mcculls))
- Upgrade to java-dogstatsd-client v4.4.3
([#&#8203;8096](DataDog/dd-trace-java#8096) -
[@&#8203;mcculls](https://github.com/mcculls))

##### OpenTracing

- ⚠️🧹 Remove custom scope manager support
([#&#8203;8164](DataDog/dd-trace-java#8164) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Telemetry

- ✨ Retry telemetry requests if CI Visibility is enabled
([#&#8203;8147](DataDog/dd-trace-java#8147) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add configurable Dependency service resolution period
([#&#8203;8079](DataDog/dd-trace-java#8079) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Testing

- 🐛 Remove restriction to not run vertx4 latest tests on java 17
([#&#8203;8133](DataDog/dd-trace-java#8133) -
[@&#8203;vandonr](https://github.com/vandonr))

##### Tracer core

- ✨ Defer remote components to avoid OkHttp class-loading
side-effects
([#&#8203;8131](DataDog/dd-trace-java#8131) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Improve Context API null handling and Javadoc
([#&#8203;8129](DataDog/dd-trace-java#8129) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- 🐛⚡ Avoid performing blocking I/O operation on application
thread
([#&#8203;8120](DataDog/dd-trace-java#8120) -
[@&#8203;mcculls](https://github.com/mcculls))
- 💡 Introduce a shared context component, independent of tracing
([#&#8203;8117](DataDog/dd-trace-java#8117) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Improves ServiceNameCollector
([#&#8203;8109](DataDog/dd-trace-java#8109) -
[@&#8203;amarziali](https://github.com/amarziali))
- Upgrade to ASM 9.7.1 (adds new constant for Java 24)
([#&#8203;8097](DataDog/dd-trace-java#8097) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🐛 Dynamically evaluate service name for message consumers
([#&#8203;8088](DataDog/dd-trace-java#8088) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Serverless

- 🐛 Add avoid double instrumenting lambda non-streaming handlers.
([#&#8203;8073](DataDog/dd-trace-java#8073) -
[@&#8203;purple4reina](https://github.com/purple4reina))

##### Instrumentations

##### AWS SDK instrumentation

- 💡 Instrument EMR's relocated AWS SDK
([#&#8203;8157](DataDog/dd-trace-java#8157) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Eclipse Vert.x instrumentation

- 🐛 Remove restriction to not run vertx4 latest tests on java 17
([#&#8203;8133](DataDog/dd-trace-java#8133) -
[@&#8203;vandonr](https://github.com/vandonr))

##### JDBC instrumentation

- ✨ Add full APM/DBM mode for Oracle
([#&#8203;8090](DataDog/dd-trace-java#8090) -
[@&#8203;nenadnoveljic](https://github.com/nenadnoveljic))

##### Jetty instrumentation

- 🐛 Ensure jetty 12 has servlet.path starting with /
([#&#8203;8093](DataDog/dd-trace-java#8093) -
[@&#8203;github-actions](https://github.com/github-actions)\[bot])

##### JMS instrumentation

- 🧹 Re-use `javax` JMS module for `jakarta` namespace
([#&#8203;8155](DataDog/dd-trace-java#8155) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🧹 Group `javax.jms` instrumentations under a single module
([#&#8203;8154](DataDog/dd-trace-java#8154) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Reactor instrumentation

- 🐛 Reactor: early propagate span in context when subscribing
([#&#8203;8166](DataDog/dd-trace-java#8166) -
[@&#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**: Whenever PR becomes conflicted, 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: ba2355aa4e2e39ab1fee27319cc4176238efd90b
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.

2 participants