-
Notifications
You must be signed in to change notification settings - Fork 302
Add span propagation for Pekko scheduled tasks #8765
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
Add span propagation for Pekko scheduled tasks #8765
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 65 metrics, 6 unstable metrics. Startup time reports for petclinicgantt
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
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
Startup time reports for insecure-bankgantt
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
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
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 13 metrics, 17 unstable metrics. Request duration reports for petclinicgantt
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,
Request duration reports for insecure-bankgantt
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,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for tomcatgantt
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,
Execution time for biojavagantt
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,
|
There was a problem hiding this 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?
Done |
| 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 ([#​1801](googleapis/java-logging#1801)) ([d7aa7bc](googleapis/java-logging@d7aa7bc)) - Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0 ([#​1803](googleapis/java-logging#1803)) ([5967ffe](googleapis/java-logging@5967ffe)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#​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 ([#​1841](googleapis/java-datastore#1841)) ([ac393e6](googleapis/java-datastore@ac393e6)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#​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 ([#​8705](DataDog/dd-trace-java#8705) - [@​amarziali](https://github.com/amarziali)) #### Continuous Integration Visibility - 🐛 Add span propagation for Pekko scheduled tasks ([#​8765](DataDog/dd-trace-java#8765) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Update test.retry_reason to use full name of the feature ([#​8689](DataDog/dd-trace-java#8689) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🧹 Remove unused TestEventsHandler methods ([#​8674](DataDog/dd-trace-java#8674) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) #### Dynamic Instrumentation - 🐛 Fix exclude identifiers normalization ([#​8742](DataDog/dd-trace-java#8742) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Make source file tracking asynchronous ([#​8684](DataDog/dd-trace-java#8684) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add scope filtering for symbol extraction ([#​8676](DataDog/dd-trace-java#8676) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add support for [@​key](https://github.com/key) and [@​value](https://github.com/value) for Map filtering ([#​8669](DataDog/dd-trace-java#8669) - [@​jpbempel](https://github.com/jpbempel)) #### Library Injection - ✨ Add system property to force injection of the tracing library even though multiple javaagents have been detected ([#​8697](DataDog/dd-trace-java#8697) - [@​cecile75](https://github.com/cecile75)) #### Metrics - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#​8693](DataDog/dd-trace-java#8693) - [@​randomanderson](https://github.com/randomanderson)) #### Profiling - ✨ Bump ddprof-java to 1.25.1 ([#​8750](DataDog/dd-trace-java#8750) - [@​jbachorik](https://github.com/jbachorik)) - 🐛 Remove cleanup-on-shutdown for temporary files ([#​8746](DataDog/dd-trace-java#8746) - [@​jbachorik](https://github.com/jbachorik)) - ✨⚡ Replace a regex-based SMAP parser with a hand-crafted one ([#​8730](DataDog/dd-trace-java#8730) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Improve error reporting on profiler startup ([#​8714](DataDog/dd-trace-java#8714) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Exclude ProxyLeakTask exception from exception profiling ([#​8666](DataDog/dd-trace-java#8666) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#​8641](DataDog/dd-trace-java#8641) - [@​MattAlp](https://github.com/MattAlp)) #### Telemetry - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#​8693](DataDog/dd-trace-java#8693) - [@​randomanderson](https://github.com/randomanderson)) - 🐛 Fix appsec.waf.requests telemetry metric ([#​8644](DataDog/dd-trace-java#8644) - [@​jandro996](https://github.com/jandro996)) #### Tracer core - ✨ Exclude jackson afterburner dynamic classes from instrumentation ([#​8747](DataDog/dd-trace-java#8747) - [@​amarziali](https://github.com/amarziali)) - ✨ Introduce Java 8 bytecode bridge for instrumentation API ([#​8736](DataDog/dd-trace-java#8736) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ⚡🧹 Use byte-buddy classes optimized for Java8+ ([#​8735](DataDog/dd-trace-java#8735) - [@​mcculls](https://github.com/mcculls)) - 🐛 Do not set the hibernate or datanucleus span service name when disabled ([#​8727](DataDog/dd-trace-java#8727) - [@​ygree](https://github.com/ygree)) - ✨ Update bytebuddy and ASM to support JDK 24 ([#​8720](DataDog/dd-trace-java#8720) - [@​sarahchen6](https://github.com/sarahchen6)) - 🐛 Turn off JDK socket support by default ([#​8715](DataDog/dd-trace-java#8715) - [@​mcculls](https://github.com/mcculls)) - 🐛 Log warning when trace buffer overflow occurs ([#​8712](DataDog/dd-trace-java#8712) - [@​ygree](https://github.com/ygree)) - ✨🧪 Introducing an internal integration name ([#​8708](DataDog/dd-trace-java#8708) - [@​amarziali](https://github.com/amarziali)) - ✨ Add process tags to client stats payload ([#​8704](DataDog/dd-trace-java#8704) - [@​amarziali](https://github.com/amarziali)) - ✨ Collect process tags for tracing ([#​8698](DataDog/dd-trace-java#8698) - [@​amarziali](https://github.com/amarziali)) - ✨ Stable Config file: target system properties in process_arguments and support template variables in YamlParser ([#​8690](DataDog/dd-trace-java#8690) - [@​mtoffl01](https://github.com/mtoffl01)) - ✨⚡ Use prefix trie for proxy ignores ([#​8678](DataDog/dd-trace-java#8678) - [@​amarziali](https://github.com/amarziali)) - ✨ Allow agent to be automatically injected when running aside Log4J patch agent ([#​8648](DataDog/dd-trace-java#8648) - [@​paullegranddc](https://github.com/paullegranddc)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#​8641](DataDog/dd-trace-java#8641) - [@​MattAlp](https://github.com/MattAlp)) #### Tracer internal logging - 🐛 Delete print line ([#​8686](DataDog/dd-trace-java#8686) - [@​sarahchen6](https://github.com/sarahchen6)) ### Instrumentations #### Akka instrumentation - 🐛 Handle reentrant scope cleanup in Akka/Pekko actor instrumentations ([#​8722](DataDog/dd-trace-java#8722) - [@​mcculls](https://github.com/mcculls)) #### Apache Spark instrumentation - ✨ Use OpenLineage root parent information to generate trace id ([#​8726](DataDog/dd-trace-java#8726) - [@​mobuchowski](https://github.com/mobuchowski)) - ✨ Spark job cancellation no longer marks application as failed ([#​8701](DataDog/dd-trace-java#8701) - [@​paul-laffon-dd](https://github.com/paul-laffon-dd)) #### JDBC instrumentation - 💡 Add support for sybase tds jdbc driver ([#​8764](DataDog/dd-trace-java#8764) - [@​amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - 🐛 Take defensive copy of parent scope stack when closing nested coroutines ([#​8749](DataDog/dd-trace-java#8749) - [@​mcculls](https://github.com/mcculls)) #### Reactor instrumentation - ✨⚡ Do not inspect reactor context when not needed ([#​8745](DataDog/dd-trace-java#8745) - [@​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
What Does This Do
Implements propagation of span context for Pekko's asynchronous scheduled tasks.
The new instrumentation plugs into
LightArrayRevolverScheduler#schedule
method: when aRunnable
is scheduled, the context of currently active span is captured and attached to thatRunnable
.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
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: SDTEST-1957