Skip to content

Conversation

@nikita-tkachenko-datadog
Copy link
Contributor

@nikita-tkachenko-datadog nikita-tkachenko-datadog commented May 5, 2025

What Does This Do

Implements propagation of span context for Pekko's asynchronous scheduled tasks.
The new instrumentation plugs into LightArrayRevolverScheduler#schedule method: when a Runnable is scheduled, the context of currently active span is captured and attached to that Runnable.
Later the existing runnable instrumentation activates this context when the task is executed (potentially in a different thread).

Activating a continuation of a span is one-time only, meaning that a context that was captured can only be activated once. For this reason this specific method is instrumented, because it works by re-scheduling periodic tasks after they finish executing (so a new continuation is captured every time a periodic task is triggered).

Motivation

CI Visibility's per-test code coverage relies on spans propagation to capture coverage data from different threads.
Without this instrumentation coverage data for test cases that use Pekko's scheduled tasks is incomplete.

Additional Notes

For now the new instrumentation is disabled by default and has to be enabled explicitly with a config property.
This is done to reduce possible negative impact.

Contributor Checklist

Jira ticket: SDTEST-1957

@nikita-tkachenko-datadog nikita-tkachenko-datadog added comp: ci visibility Continuous Integration Visibility type: bug Bug report and fix labels May 5, 2025
@nikita-tkachenko-datadog nikita-tkachenko-datadog marked this pull request as ready for review May 5, 2025 11:02
@nikita-tkachenko-datadog nikita-tkachenko-datadog requested a review from a team as a code owner May 5, 2025 11:02
@pr-commenter
Copy link

pr-commenter bot commented May 5, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master nikita-tkachenko/pekko-scheduler-instrumentation
git_commit_date 1746516330 1746520049
git_commit_sha 0e18e0e 2ce5ed4
release_version 1.49.0-SNAPSHOT~0e18e0e887 1.49.0-SNAPSHOT~2ce5ed4064
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1746523418 1746523418
ci_job_id 925006416 925006416
ci_pipeline_id 64211741 64211741
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-drymq1by-project-304-concurrent-0-18is7160 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-drymq1by-project-304-concurrent-0-18is7160 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 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 petclinic
gantt title petclinic - global startup overhead: candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section tracing Agent [baseline] (1.007 s) : 0, 1007163 Total [baseline] (10.516 s) : 0, 10516407 Agent [candidate] (1.006 s) : 0, 1005886 Total [candidate] (10.519 s) : 0, 10518843 section appsec Agent [baseline] (1.151 s) : 0, 1151272 Total [baseline] (10.71 s) : 0, 10709847 Agent [candidate] (1.155 s) : 0, 1155321 Total [candidate] (10.685 s) : 0, 10684596 section iast Agent [baseline] (1.137 s) : 0, 1137343 Total [baseline] (10.799 s) : 0, 10798853 Agent [candidate] (1.137 s) : 0, 1136719 Total [candidate] (10.834 s) : 0, 10834103 section profiling Agent [baseline] (1.261 s) : 0, 1260746 Total [baseline] (10.856 s) : 0, 10855576 Agent [candidate] (1.254 s) : 0, 1254370 Total [candidate] (10.752 s) : 0, 10751706 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.007 s -
Agent appsec 1.151 s 144.108 ms (14.3%)
Agent iast 1.137 s 130.179 ms (12.9%)
Agent profiling 1.261 s 253.583 ms (25.2%)
Total tracing 10.516 s -
Total appsec 10.71 s 193.44 ms (1.8%)
Total iast 10.799 s 282.445 ms (2.7%)
Total profiling 10.856 s 339.169 ms (3.2%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.006 s -
Agent appsec 1.155 s 149.435 ms (14.9%)
Agent iast 1.137 s 130.833 ms (13.0%)
Agent profiling 1.254 s 248.484 ms (24.7%)
Total tracing 10.519 s -
Total appsec 10.685 s 165.753 ms (1.6%)
Total iast 10.834 s 315.26 ms (3.0%)
Total profiling 10.752 s 232.863 ms (2.2%)
gantt title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (670.513 ms) : 0, 670513 BytebuddyAgent [candidate] (670.837 ms) : 0, 670837 GlobalTracer [baseline] (240.232 ms) : 0, 240232 GlobalTracer [candidate] (239.564 ms) : 0, 239564 AppSec [baseline] (54.77 ms) : 0, 54770 AppSec [candidate] (54.515 ms) : 0, 54515 Debugger [baseline] (6.146 ms) : 0, 6146 Debugger [candidate] (6.149 ms) : 0, 6149 Remote Config [baseline] (694.791 µs) : 0, 695 Remote Config [candidate] (704.954 µs) : 0, 705 Telemetry [baseline] (11.413 ms) : 0, 11413 Telemetry [candidate] (10.657 ms) : 0, 10657 section appsec BytebuddyAgent [baseline] (690.224 ms) : 0, 690224 BytebuddyAgent [candidate] (693.26 ms) : 0, 693260 GlobalTracer [baseline] (236.687 ms) : 0, 236687 GlobalTracer [candidate] (237.845 ms) : 0, 237845 AppSec [baseline] (175.19 ms) : 0, 175190 AppSec [candidate] (175.358 ms) : 0, 175358 Debugger [baseline] (5.889 ms) : 0, 5889 Debugger [candidate] (5.882 ms) : 0, 5882 Remote Config [baseline] (643.278 µs) : 0, 643 Remote Config [candidate] (630.785 µs) : 0, 631 Telemetry [baseline] (8.151 ms) : 0, 8151 Telemetry [candidate] (7.78 ms) : 0, 7780 IAST [baseline] (21.854 ms) : 0, 21854 IAST [candidate] (22.017 ms) : 0, 22017 section iast BytebuddyAgent [baseline] (790.015 ms) : 0, 790015 BytebuddyAgent [candidate] (788.986 ms) : 0, 788986 GlobalTracer [baseline] (230.359 ms) : 0, 230359 GlobalTracer [candidate] (230.484 ms) : 0, 230484 AppSec [baseline] (56.202 ms) : 0, 56202 AppSec [candidate] (56.559 ms) : 0, 56559 Debugger [baseline] (5.92 ms) : 0, 5920 Debugger [candidate] (5.971 ms) : 0, 5971 Remote Config [baseline] (589.248 µs) : 0, 589 Remote Config [candidate] (596.381 µs) : 0, 596 Telemetry [baseline] (7.968 ms) : 0, 7968 Telemetry [candidate] (7.971 ms) : 0, 7971 IAST [baseline] (22.824 ms) : 0, 22824 IAST [candidate] (22.726 ms) : 0, 22726 section profiling BytebuddyAgent [baseline] (662.136 ms) : 0, 662136 BytebuddyAgent [candidate] (661.115 ms) : 0, 661115 GlobalTracer [baseline] (380.227 ms) : 0, 380227 GlobalTracer [candidate] (378.28 ms) : 0, 378280 AppSec [baseline] (55.296 ms) : 0, 55296 AppSec [candidate] (53.488 ms) : 0, 53488 Debugger [baseline] (6.184 ms) : 0, 6184 Debugger [candidate] (6.11 ms) : 0, 6110 Remote Config [baseline] (669.768 µs) : 0, 670 Remote Config [candidate] (650.246 µs) : 0, 650 Telemetry [baseline] (8.29 ms) : 0, 8290 Telemetry [candidate] (8.115 ms) : 0, 8115 ProfilingAgent [baseline] (97.649 ms) : 0, 97649 ProfilingAgent [candidate] (96.452 ms) : 0, 96452 Profiling [baseline] (97.674 ms) : 0, 97674 Profiling [candidate] (96.475 ms) : 0, 96475 
Loading
Startup time reports for insecure-bank
gantt title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section tracing Agent [baseline] (1.016 s) : 0, 1016350 Total [baseline] (8.665 s) : 0, 8665379 Agent [candidate] (1.003 s) : 0, 1003472 Total [candidate] (8.604 s) : 0, 8603955 section iast Agent [baseline] (1.145 s) : 0, 1144953 Total [baseline] (9.224 s) : 0, 9223889 Agent [candidate] (1.136 s) : 0, 1136445 Total [candidate] (9.209 s) : 0, 9208890 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.136 s) : 0, 1135993 Total [baseline] (9.168 s) : 0, 9167617 Agent [candidate] (1.139 s) : 0, 1139334 Total [candidate] (9.159 s) : 0, 9159491 section iast_TELEMETRY_OFF Agent [baseline] (1.131 s) : 0, 1130890 Total [baseline] (9.182 s) : 0, 9181618 Agent [candidate] (1.146 s) : 0, 1145755 Total [candidate] (9.223 s) : 0, 9223204 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.016 s -
Agent iast 1.145 s 128.603 ms (12.7%)
Agent iast_HARDCODED_SECRET_DISABLED 1.136 s 119.643 ms (11.8%)
Agent iast_TELEMETRY_OFF 1.131 s 114.539 ms (11.3%)
Total tracing 8.665 s -
Total iast 9.224 s 558.51 ms (6.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.168 s 502.238 ms (5.8%)
Total iast_TELEMETRY_OFF 9.182 s 516.24 ms (6.0%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.003 s -
Agent iast 1.136 s 132.973 ms (13.3%)
Agent iast_HARDCODED_SECRET_DISABLED 1.139 s 135.861 ms (13.5%)
Agent iast_TELEMETRY_OFF 1.146 s 142.283 ms (14.2%)
Total tracing 8.604 s -
Total iast 9.209 s 604.936 ms (7.0%)
Total iast_HARDCODED_SECRET_DISABLED 9.159 s 555.536 ms (6.5%)
Total iast_TELEMETRY_OFF 9.223 s 619.25 ms (7.2%)
gantt title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (674.954 ms) : 0, 674954 BytebuddyAgent [candidate] (668.362 ms) : 0, 668362 GlobalTracer [baseline] (241.086 ms) : 0, 241086 GlobalTracer [candidate] (238.712 ms) : 0, 238712 AppSec [baseline] (54.85 ms) : 0, 54850 AppSec [candidate] (54.287 ms) : 0, 54287 Debugger [baseline] (8.39 ms) : 0, 8390 Debugger [candidate] (8.254 ms) : 0, 8254 Remote Config [baseline] (708.713 µs) : 0, 709 Remote Config [candidate] (684.968 µs) : 0, 685 Telemetry [baseline] (12.71 ms) : 0, 12710 Telemetry [candidate] (9.655 ms) : 0, 9655 section iast BytebuddyAgent [baseline] (795.414 ms) : 0, 795414 BytebuddyAgent [candidate] (788.98 ms) : 0, 788980 GlobalTracer [baseline] (231.577 ms) : 0, 231577 GlobalTracer [candidate] (230.401 ms) : 0, 230401 AppSec [baseline] (56.718 ms) : 0, 56718 AppSec [candidate] (56.454 ms) : 0, 56454 Debugger [baseline] (6.027 ms) : 0, 6027 Debugger [candidate] (5.921 ms) : 0, 5921 Remote Config [baseline] (608.962 µs) : 0, 609 Remote Config [candidate] (610.919 µs) : 0, 611 Telemetry [baseline] (8.079 ms) : 0, 8079 Telemetry [candidate] (7.884 ms) : 0, 7884 IAST [baseline] (22.928 ms) : 0, 22928 IAST [candidate] (22.752 ms) : 0, 22752 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (789.092 ms) : 0, 789092 BytebuddyAgent [candidate] (792.014 ms) : 0, 792014 GlobalTracer [baseline] (229.824 ms) : 0, 229824 GlobalTracer [candidate] (230.345 ms) : 0, 230345 AppSec [baseline] (56.416 ms) : 0, 56416 AppSec [candidate] (56.361 ms) : 0, 56361 Debugger [baseline] (5.935 ms) : 0, 5935 Debugger [candidate] (5.872 ms) : 0, 5872 Remote Config [baseline] (582.916 µs) : 0, 583 Remote Config [candidate] (589.792 µs) : 0, 590 Telemetry [baseline] (7.887 ms) : 0, 7887 Telemetry [candidate] (7.882 ms) : 0, 7882 IAST [baseline] (22.837 ms) : 0, 22837 IAST [candidate] (22.824 ms) : 0, 22824 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (785.117 ms) : 0, 785117 BytebuddyAgent [candidate] (793.821 ms) : 0, 793821 GlobalTracer [baseline] (229.488 ms) : 0, 229488 GlobalTracer [candidate] (233.748 ms) : 0, 233748 AppSec [baseline] (56.408 ms) : 0, 56408 AppSec [candidate] (57.386 ms) : 0, 57386 Debugger [baseline] (5.923 ms) : 0, 5923 Debugger [candidate] (6.016 ms) : 0, 6016 Remote Config [baseline] (584.579 µs) : 0, 585 Remote Config [candidate] (615.97 µs) : 0, 616 Telemetry [baseline] (7.749 ms) : 0, 7749 Telemetry [candidate] (7.783 ms) : 0, 7783 IAST [baseline] (22.288 ms) : 0, 22288 IAST [candidate] (22.849 ms) : 0, 22849 
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-05-06T08:54:08 2025-05-06T09:01:52
git_branch master nikita-tkachenko/pekko-scheduler-instrumentation
git_commit_date 1746516330 1746520049
git_commit_sha 0e18e0e 2ce5ed4
release_version 1.49.0-SNAPSHOT~0e18e0e887 1.49.0-SNAPSHOT~2ce5ed4064
start_time 2025-05-06T08:53:54 2025-05-06T09:01:38
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1746522510 1746522510
ci_job_id 925006417 925006417
ci_pipeline_id 64211741 64211741
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-16jikxse-project-304-concurrent-0-jw1942ih 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-16jikxse-project-304-concurrent-0-jw1942ih 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 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 13 metrics, 17 unstable metrics.

Request duration reports for petclinic
gantt title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section baseline no_agent (1.365 ms) : 1346, 1384 . : milestone, 1365, appsec (1.739 ms) : 1715, 1762 . : milestone, 1739, appsec_no_iast (1.754 ms) : 1731, 1777 . : milestone, 1754, code_origins (1.672 ms) : 1645, 1699 . : milestone, 1672, iast (1.521 ms) : 1497, 1546 . : milestone, 1521, profiling (1.528 ms) : 1504, 1551 . : milestone, 1528, tracing (1.484 ms) : 1459, 1510 . : milestone, 1484, section candidate no_agent (1.365 ms) : 1345, 1384 . : milestone, 1365, appsec (1.751 ms) : 1728, 1775 . : milestone, 1751, appsec_no_iast (1.735 ms) : 1712, 1758 . : milestone, 1735, code_origins (1.688 ms) : 1662, 1715 . : milestone, 1688, iast (1.52 ms) : 1495, 1544 . : milestone, 1520, profiling (1.516 ms) : 1493, 1539 . : milestone, 1516, tracing (1.497 ms) : 1471, 1522 . : milestone, 1497, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.365 ms [1.346 ms, 1.384 ms] -
appsec 1.739 ms [1.715 ms, 1.762 ms] 373.928 µs (27.4%)
appsec_no_iast 1.754 ms [1.731 ms, 1.777 ms] 389.305 µs (28.5%)
code_origins 1.672 ms [1.645 ms, 1.699 ms] 306.883 µs (22.5%)
iast 1.521 ms [1.497 ms, 1.546 ms] 156.345 µs (11.5%)
profiling 1.528 ms [1.504 ms, 1.551 ms] 163.035 µs (11.9%)
tracing 1.484 ms [1.459 ms, 1.51 ms] 119.626 µs (8.8%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.365 ms [1.345 ms, 1.384 ms] -
appsec 1.751 ms [1.728 ms, 1.775 ms] 386.43 µs (28.3%)
appsec_no_iast 1.735 ms [1.712 ms, 1.758 ms] 370.566 µs (27.2%)
code_origins 1.688 ms [1.662 ms, 1.715 ms] 323.518 µs (23.7%)
iast 1.52 ms [1.495 ms, 1.544 ms] 154.82 µs (11.3%)
profiling 1.516 ms [1.493 ms, 1.539 ms] 151.314 µs (11.1%)
tracing 1.497 ms [1.471 ms, 1.522 ms] 131.945 µs (9.7%)
Request duration reports for insecure-bank
gantt title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section baseline no_agent (386.792 µs) : 367, 407 . : milestone, 387, iast (515.092 µs) : 492, 538 . : milestone, 515, iast_FULL (733.733 µs) : 710, 757 . : milestone, 734, iast_GLOBAL (575.787 µs) : 552, 600 . : milestone, 576, iast_HARDCODED_SECRET_DISABLED (531.206 µs) : 508, 554 . : milestone, 531, iast_INACTIVE (467.789 µs) : 445, 490 . : milestone, 468, iast_TELEMETRY_OFF (515.135 µs) : 492, 538 . : milestone, 515, tracing (470.192 µs) : 448, 492 . : milestone, 470, section candidate no_agent (385.915 µs) : 366, 405 . : milestone, 386, iast (520.042 µs) : 497, 543 . : milestone, 520, iast_FULL (745.264 µs) : 722, 769 . : milestone, 745, iast_GLOBAL (570.204 µs) : 547, 593 . : milestone, 570, iast_HARDCODED_SECRET_DISABLED (526.215 µs) : 503, 549 . : milestone, 526, iast_INACTIVE (470.462 µs) : 449, 492 . : milestone, 470, iast_TELEMETRY_OFF (518.388 µs) : 495, 541 . : milestone, 518, tracing (460.684 µs) : 440, 482 . : milestone, 461, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 386.792 µs [366.81 µs, 406.774 µs] -
iast 515.092 µs [492.222 µs, 537.962 µs] 128.3 µs (33.2%)
iast_FULL 733.733 µs [710.21 µs, 757.256 µs] 346.941 µs (89.7%)
iast_GLOBAL 575.787 µs [552.037 µs, 599.536 µs] 188.995 µs (48.9%)
iast_HARDCODED_SECRET_DISABLED 531.206 µs [508.484 µs, 553.929 µs] 144.414 µs (37.3%)
iast_INACTIVE 467.789 µs [445.43 µs, 490.149 µs] 80.997 µs (20.9%)
iast_TELEMETRY_OFF 515.135 µs [491.964 µs, 538.305 µs] 128.343 µs (33.2%)
tracing 470.192 µs [448.041 µs, 492.343 µs] 83.4 µs (21.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 385.915 µs [366.453 µs, 405.377 µs] -
iast 520.042 µs [497.175 µs, 542.91 µs] 134.127 µs (34.8%)
iast_FULL 745.264 µs [722.025 µs, 768.504 µs] 359.349 µs (93.1%)
iast_GLOBAL 570.204 µs [547.038 µs, 593.371 µs] 184.289 µs (47.8%)
iast_HARDCODED_SECRET_DISABLED 526.215 µs [503.122 µs, 549.309 µs] 140.3 µs (36.4%)
iast_INACTIVE 470.462 µs [448.949 µs, 491.974 µs] 84.546 µs (21.9%)
iast_TELEMETRY_OFF 518.388 µs [495.302 µs, 541.475 µs] 132.473 µs (34.3%)
tracing 460.684 µs [439.648 µs, 481.719 µs] 74.768 µs (19.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master nikita-tkachenko/pekko-scheduler-instrumentation
git_commit_date 1746516330 1746520049
git_commit_sha 0e18e0e 2ce5ed4
release_version 1.49.0-SNAPSHOT~0e18e0e887 1.49.0-SNAPSHOT~2ce5ed4064
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1746523019 1746523019
ci_job_id 925006418 925006418
ci_pipeline_id 64211741 64211741
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-df2tp9k5-project-304-concurrent-0-mntpkoai 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-df2tp9k5-project-304-concurrent-0-mntpkoai 6.8.0-1027-aws #29~22.04.1-Ubuntu SMP Sun Mar 30 07:45:38 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 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt title tomcat - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section baseline no_agent (1.469 ms) : 1458, 1481 . : milestone, 1469, appsec (2.405 ms) : 2355, 2455 . : milestone, 2405, iast (2.194 ms) : 2132, 2256 . : milestone, 2194, iast_GLOBAL (2.225 ms) : 2163, 2287 . : milestone, 2225, profiling (2.03 ms) : 1980, 2079 . : milestone, 2030, tracing (2.003 ms) : 1955, 2051 . : milestone, 2003, section candidate no_agent (1.471 ms) : 1460, 1483 . : milestone, 1471, appsec (2.406 ms) : 2356, 2455 . : milestone, 2406, iast (2.184 ms) : 2122, 2246 . : milestone, 2184, iast_GLOBAL (2.219 ms) : 2157, 2282 . : milestone, 2219, profiling (2.482 ms) : 2237, 2726 . : milestone, 2482, tracing (2.002 ms) : 1954, 2050 . : milestone, 2002, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.469 ms [1.458 ms, 1.481 ms] -
appsec 2.405 ms [2.355 ms, 2.455 ms] 935.728 µs (63.7%)
iast 2.194 ms [2.132 ms, 2.256 ms] 724.545 µs (49.3%)
iast_GLOBAL 2.225 ms [2.163 ms, 2.287 ms] 755.762 µs (51.4%)
profiling 2.03 ms [1.98 ms, 2.079 ms] 560.511 µs (38.2%)
tracing 2.003 ms [1.955 ms, 2.051 ms] 533.599 µs (36.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.471 ms [1.46 ms, 1.483 ms] -
appsec 2.406 ms [2.356 ms, 2.455 ms] 934.297 µs (63.5%)
iast 2.184 ms [2.122 ms, 2.246 ms] 713.009 µs (48.5%)
iast_GLOBAL 2.219 ms [2.157 ms, 2.282 ms] 748.17 µs (50.9%)
profiling 2.482 ms [2.237 ms, 2.726 ms] 1.01 ms (68.7%)
tracing 2.002 ms [1.954 ms, 2.05 ms] 530.745 µs (36.1%)
Execution time for biojava
gantt title biojava - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~2ce5ed4064, baseline=1.49.0-SNAPSHOT~0e18e0e887 dateFormat X axisFormat %s section baseline no_agent (15.28 s) : 15280000, 15280000 . : milestone, 15280000, appsec (15.241 s) : 15241000, 15241000 . : milestone, 15241000, iast (18.803 s) : 18803000, 18803000 . : milestone, 18803000, iast_GLOBAL (18.034 s) : 18034000, 18034000 . : milestone, 18034000, profiling (15.262 s) : 15262000, 15262000 . : milestone, 15262000, tracing (14.937 s) : 14937000, 14937000 . : milestone, 14937000, section candidate no_agent (15.214 s) : 15214000, 15214000 . : milestone, 15214000, appsec (14.99 s) : 14990000, 14990000 . : milestone, 14990000, iast (18.93 s) : 18930000, 18930000 . : milestone, 18930000, iast_GLOBAL (18.246 s) : 18246000, 18246000 . : milestone, 18246000, profiling (15.145 s) : 15145000, 15145000 . : milestone, 15145000, tracing (15.171 s) : 15171000, 15171000 . : milestone, 15171000, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.28 s [15.28 s, 15.28 s] -
appsec 15.241 s [15.241 s, 15.241 s] -39.0 ms (-0.3%)
iast 18.803 s [18.803 s, 18.803 s] 3.523 s (23.1%)
iast_GLOBAL 18.034 s [18.034 s, 18.034 s] 2.754 s (18.0%)
profiling 15.262 s [15.262 s, 15.262 s] -18.0 ms (-0.1%)
tracing 14.937 s [14.937 s, 14.937 s] -343.0 ms (-2.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.214 s [15.214 s, 15.214 s] -
appsec 14.99 s [14.99 s, 14.99 s] -224.0 ms (-1.5%)
iast 18.93 s [18.93 s, 18.93 s] 3.716 s (24.4%)
iast_GLOBAL 18.246 s [18.246 s, 18.246 s] 3.032 s (19.9%)
profiling 15.145 s [15.145 s, 15.145 s] -69.0 ms (-0.5%)
tracing 15.171 s [15.171 s, 15.171 s] -43.0 ms (-0.3%)
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. Is it possible to add a specific test for it?

@nikita-tkachenko-datadog nikita-tkachenko-datadog requested a review from a team as a code owner May 5, 2025 14:09
@nikita-tkachenko-datadog nikita-tkachenko-datadog enabled auto-merge (squash) May 5, 2025 14:09
@nikita-tkachenko-datadog
Copy link
Contributor Author

LGTM. Is it possible to add a specific test for it?

Done

@nikita-tkachenko-datadog nikita-tkachenko-datadog merged commit 07d1350 into master May 6, 2025
454 checks passed
@nikita-tkachenko-datadog nikita-tkachenko-datadog deleted the nikita-tkachenko/pekko-scheduler-instrumentation branch May 6, 2025 10:19
@github-actions github-actions bot added this to the 1.49.0 milestone May 6, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request May 7, 2025
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-logging](https://github.com/googleapis/java-logging) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `3.22.2` -> `3.22.3` | | [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.28.0` -> `2.28.1` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.48.2` -> `1.49.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | --- ### Release Notes <details> <summary>googleapis/java-logging (com.google.cloud:google-cloud-logging)</summary> ### [`v3.22.3`](https://github.com/googleapis/java-logging/blob/HEAD/CHANGELOG.md#3223-2025-05-06) ##### Bug Fixes - **deps:** Update the Java code generator (gapic-generator-java) to 2.56.3 ([844f4fa](googleapis/java-logging@844f4fa)) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.46.3 ([#&#8203;1801](googleapis/java-logging#1801)) ([d7aa7bc](googleapis/java-logging@d7aa7bc)) - Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0 ([#&#8203;1803](googleapis/java-logging#1803)) ([5967ffe](googleapis/java-logging@5967ffe)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#&#8203;1804](googleapis/java-logging#1804)) ([e9a27ec](googleapis/java-logging@e9a27ec)) </details> <details> <summary>googleapis/java-datastore (com.google.cloud:google-cloud-datastore)</summary> ### [`v2.28.1`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2281-2025-05-06) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0 ([#&#8203;1841](googleapis/java-datastore#1841)) ([ac393e6](googleapis/java-datastore@ac393e6)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#&#8203;1842](googleapis/java-datastore#1842)) ([0745906](googleapis/java-datastore@0745906)) </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.49.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.49.0): 1.49.0 ### Components #### Configuration at Runtime - ✨ Add process tags as list to remote config payload ([#&#8203;8705](DataDog/dd-trace-java#8705) - [@&#8203;amarziali](https://github.com/amarziali)) #### Continuous Integration Visibility - 🐛 Add span propagation for Pekko scheduled tasks ([#&#8203;8765](DataDog/dd-trace-java#8765) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Update test.retry_reason to use full name of the feature ([#&#8203;8689](DataDog/dd-trace-java#8689) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - 🧹 Remove unused TestEventsHandler methods ([#&#8203;8674](DataDog/dd-trace-java#8674) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) #### Dynamic Instrumentation - 🐛 Fix exclude identifiers normalization ([#&#8203;8742](DataDog/dd-trace-java#8742) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨ Make source file tracking asynchronous ([#&#8203;8684](DataDog/dd-trace-java#8684) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨ Add scope filtering for symbol extraction ([#&#8203;8676](DataDog/dd-trace-java#8676) - [@&#8203;jpbempel](https://github.com/jpbempel)) - ✨ Add support for [@&#8203;key](https://github.com/key) and [@&#8203;value](https://github.com/value) for Map filtering ([#&#8203;8669](DataDog/dd-trace-java#8669) - [@&#8203;jpbempel](https://github.com/jpbempel)) #### Library Injection - ✨ Add system property to force injection of the tracing library even though multiple javaagents have been detected ([#&#8203;8697](DataDog/dd-trace-java#8697) - [@&#8203;cecile75](https://github.com/cecile75)) #### Metrics - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#&#8203;8693](DataDog/dd-trace-java#8693) - [@&#8203;randomanderson](https://github.com/randomanderson)) #### Profiling - ✨ Bump ddprof-java to 1.25.1 ([#&#8203;8750](DataDog/dd-trace-java#8750) - [@&#8203;jbachorik](https://github.com/jbachorik)) - 🐛 Remove cleanup-on-shutdown for temporary files ([#&#8203;8746](DataDog/dd-trace-java#8746) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨⚡ Replace a regex-based SMAP parser with a hand-crafted one ([#&#8203;8730](DataDog/dd-trace-java#8730) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨ Improve error reporting on profiler startup ([#&#8203;8714](DataDog/dd-trace-java#8714) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨ Exclude ProxyLeakTask exception from exception profiling ([#&#8203;8666](DataDog/dd-trace-java#8666) - [@&#8203;jbachorik](https://github.com/jbachorik)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#&#8203;8641](DataDog/dd-trace-java#8641) - [@&#8203;MattAlp](https://github.com/MattAlp)) #### Telemetry - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#&#8203;8693](DataDog/dd-trace-java#8693) - [@&#8203;randomanderson](https://github.com/randomanderson)) - 🐛 Fix appsec.waf.requests telemetry metric ([#&#8203;8644](DataDog/dd-trace-java#8644) - [@&#8203;jandro996](https://github.com/jandro996)) #### Tracer core - ✨ Exclude jackson afterburner dynamic classes from instrumentation ([#&#8203;8747](DataDog/dd-trace-java#8747) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Introduce Java 8 bytecode bridge for instrumentation API ([#&#8203;8736](DataDog/dd-trace-java#8736) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) - ⚡🧹 Use byte-buddy classes optimized for Java8+ ([#&#8203;8735](DataDog/dd-trace-java#8735) - [@&#8203;mcculls](https://github.com/mcculls)) - 🐛 Do not set the hibernate or datanucleus span service name when disabled ([#&#8203;8727](DataDog/dd-trace-java#8727) - [@&#8203;ygree](https://github.com/ygree)) - ✨ Update bytebuddy and ASM to support JDK 24 ([#&#8203;8720](DataDog/dd-trace-java#8720) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) - 🐛 Turn off JDK socket support by default ([#&#8203;8715](DataDog/dd-trace-java#8715) - [@&#8203;mcculls](https://github.com/mcculls)) - 🐛 Log warning when trace buffer overflow occurs ([#&#8203;8712](DataDog/dd-trace-java#8712) - [@&#8203;ygree](https://github.com/ygree)) - ✨🧪 Introducing an internal integration name ([#&#8203;8708](DataDog/dd-trace-java#8708) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Add process tags to client stats payload ([#&#8203;8704](DataDog/dd-trace-java#8704) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Collect process tags for tracing ([#&#8203;8698](DataDog/dd-trace-java#8698) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Stable Config file: target system properties in process_arguments and support template variables in YamlParser ([#&#8203;8690](DataDog/dd-trace-java#8690) - [@&#8203;mtoffl01](https://github.com/mtoffl01)) - ✨⚡ Use prefix trie for proxy ignores ([#&#8203;8678](DataDog/dd-trace-java#8678) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Allow agent to be automatically injected when running aside Log4J patch agent ([#&#8203;8648](DataDog/dd-trace-java#8648) - [@&#8203;paullegranddc](https://github.com/paullegranddc)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#&#8203;8641](DataDog/dd-trace-java#8641) - [@&#8203;MattAlp](https://github.com/MattAlp)) #### Tracer internal logging - 🐛 Delete print line ([#&#8203;8686](DataDog/dd-trace-java#8686) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) ### Instrumentations #### Akka instrumentation - 🐛 Handle reentrant scope cleanup in Akka/Pekko actor instrumentations ([#&#8203;8722](DataDog/dd-trace-java#8722) - [@&#8203;mcculls](https://github.com/mcculls)) #### Apache Spark instrumentation - ✨ Use OpenLineage root parent information to generate trace id ([#&#8203;8726](DataDog/dd-trace-java#8726) - [@&#8203;mobuchowski](https://github.com/mobuchowski)) - ✨ Spark job cancellation no longer marks application as failed ([#&#8203;8701](DataDog/dd-trace-java#8701) - [@&#8203;paul-laffon-dd](https://github.com/paul-laffon-dd)) #### JDBC instrumentation - 💡 Add support for sybase tds jdbc driver ([#&#8203;8764](DataDog/dd-trace-java#8764) - [@&#8203;amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - 🐛 Take defensive copy of parent scope stack when closing nested coroutines ([#&#8203;8749](DataDog/dd-trace-java#8749) - [@&#8203;mcculls](https://github.com/mcculls)) #### Reactor instrumentation - ✨⚡ Do not inspect reactor context when not needed ([#&#8203;8745](DataDog/dd-trace-java#8745) - [@&#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**: 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: 795f347ae34d056efc1194c2f606cee7bca1beea
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: ci visibility Continuous Integration Visibility type: bug Bug report and fix

3 participants