- Notifications
You must be signed in to change notification settings - Fork 319
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,
|
amarziali left a comment
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#schedulemethod: when aRunnableis 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,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: SDTEST-1957