-
Notifications
You must be signed in to change notification settings - Fork 311
Migrate context extraction calls to context-first APIs #8368
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
Conversation
@@ -40,7 +35,11 @@ interface Setter<C> extends CarrierSetter<C> { | |||
void set(C carrier, String key, String value); | |||
} | |||
|
|||
<C> AgentSpanContext.Extracted extract(C carrier, ContextVisitor<C> getter); | |||
default <C> AgentSpanContext.Extracted extract(final C carrier, final ContextVisitor<C> getter) { |
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.
⚪ Code Quality Violation
default <C> AgentSpanContext.Extracted extract(final C carrier, final ContextVisitor<C> getter) { | |
default <C> AgentSpanContext.Extracted extract(C carrier, final ContextVisitor<C> getter) { |
Avoid declaring as final as it may not be used (...read more)
The rule "Avoid useless final type in interface method" advises against the unnecessary use of the final
keyword in the method parameters of an interface. In Java, the final
keyword is used to denote that a variable cannot be changed once assigned. However, in the context of an interface method, this is redundant as the value of the parameter cannot be changed within the method anyway.
The importance of this rule lies in the clarity and simplicity of code. Unnecessary use of final
in this context can lead to confusion for those reading the code, as it suggests that there may be a specific reason for its use when there is not. It can also clutter the code, making it less readable.
Good coding practices to avoid this rule violation include simply not using the final
keyword in the method parameters of an interface. This does not affect the functionality of the code, but it makes it cleaner and easier to understand. For example, instead of writing void process(final Object arg);
, you can write void process(Object arg);
. This maintains the same functionality but improves the readability of the code.
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 6 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.054 s) : 0, 1054394
Total [baseline] (8.675 s) : 0, 8674858
Agent [candidate] (1.043 s) : 0, 1042954
Total [candidate] (8.629 s) : 0, 8628801
section iast
Agent [baseline] (1.173 s) : 0, 1173231
Total [baseline] (9.23 s) : 0, 9229802
Agent [candidate] (1.174 s) : 0, 1173612
Total [candidate] (9.228 s) : 0, 9227998
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.183 s) : 0, 1183364
Total [baseline] (9.335 s) : 0, 9334778
Agent [candidate] (1.181 s) : 0, 1180942
Total [candidate] (9.236 s) : 0, 9236017
section iast_TELEMETRY_OFF
Agent [baseline] (1.173 s) : 0, 1172918
Total [baseline] (9.237 s) : 0, 9236801
Agent [candidate] (1.166 s) : 0, 1165664
Total [candidate] (9.234 s) : 0, 9233776
gantt
title insecure-bank - break down per module: candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (725.064 ms) : 0, 725064
BytebuddyAgent [candidate] (717.919 ms) : 0, 717919
GlobalTracer [baseline] (246.047 ms) : 0, 246047
GlobalTracer [candidate] (240.724 ms) : 0, 240724
AppSec [baseline] (55.672 ms) : 0, 55672
AppSec [candidate] (56.202 ms) : 0, 56202
Remote Config [baseline] (715.732 µs) : 0, 716
Remote Config [candidate] (709.507 µs) : 0, 710
Telemetry [baseline] (11.548 ms) : 0, 11548
Telemetry [candidate] (12.108 ms) : 0, 12108
section iast
BytebuddyAgent [baseline] (834.792 ms) : 0, 834792
BytebuddyAgent [candidate] (836.328 ms) : 0, 836328
GlobalTracer [baseline] (233.825 ms) : 0, 233825
GlobalTracer [candidate] (232.143 ms) : 0, 232143
AppSec [baseline] (57.181 ms) : 0, 57181
AppSec [candidate] (57.615 ms) : 0, 57615
Remote Config [baseline] (616.121 µs) : 0, 616
Remote Config [candidate] (645.078 µs) : 0, 645
Telemetry [baseline] (8.669 ms) : 0, 8669
Telemetry [candidate] (8.763 ms) : 0, 8763
IAST [baseline] (22.887 ms) : 0, 22887
IAST [candidate] (22.834 ms) : 0, 22834
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (842.209 ms) : 0, 842209
BytebuddyAgent [candidate] (843.056 ms) : 0, 843056
GlobalTracer [baseline] (236.03 ms) : 0, 236030
GlobalTracer [candidate] (233.008 ms) : 0, 233008
AppSec [baseline] (57.192 ms) : 0, 57192
AppSec [candidate] (57.184 ms) : 0, 57184
Remote Config [baseline] (620.347 µs) : 0, 620
Remote Config [candidate] (616.62 µs) : 0, 617
Telemetry [baseline] (8.83 ms) : 0, 8830
Telemetry [candidate] (8.698 ms) : 0, 8698
IAST [baseline] (23.123 ms) : 0, 23123
IAST [candidate] (22.974 ms) : 0, 22974
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (834.34 ms) : 0, 834340
BytebuddyAgent [candidate] (831.233 ms) : 0, 831233
GlobalTracer [baseline] (234.441 ms) : 0, 234441
GlobalTracer [candidate] (230.686 ms) : 0, 230686
AppSec [baseline] (55.694 ms) : 0, 55694
AppSec [candidate] (55.518 ms) : 0, 55518
Remote Config [baseline] (623.973 µs) : 0, 624
Remote Config [candidate] (608.67 µs) : 0, 609
Telemetry [baseline] (8.505 ms) : 0, 8505
Telemetry [candidate] (8.605 ms) : 0, 8605
IAST [baseline] (23.991 ms) : 0, 23991
IAST [candidate] (23.758 ms) : 0, 23758
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.043 s) : 0, 1042533
Total [baseline] (10.49 s) : 0, 10489777
Agent [candidate] (1.051 s) : 0, 1050983
Total [candidate] (10.619 s) : 0, 10619199
section appsec
Agent [baseline] (1.19 s) : 0, 1189578
Total [baseline] (10.793 s) : 0, 10793417
Agent [candidate] (1.185 s) : 0, 1185432
Total [candidate] (10.775 s) : 0, 10774548
section iast
Agent [baseline] (1.175 s) : 0, 1175058
Total [baseline] (10.978 s) : 0, 10978004
Agent [candidate] (1.17 s) : 0, 1169780
Total [candidate] (11.105 s) : 0, 11104601
section profiling
Agent [baseline] (1.267 s) : 0, 1267360
Total [baseline] (10.884 s) : 0, 10884017
Agent [candidate] (1.262 s) : 0, 1262214
Total [candidate] (10.865 s) : 0, 10865146
gantt
title petclinic - break down per module: candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (714.922 ms) : 0, 714922
BytebuddyAgent [candidate] (722.291 ms) : 0, 722291
GlobalTracer [baseline] (242.926 ms) : 0, 242926
GlobalTracer [candidate] (242.902 ms) : 0, 242902
AppSec [baseline] (55.064 ms) : 0, 55064
AppSec [candidate] (56.005 ms) : 0, 56005
Remote Config [baseline] (718.729 µs) : 0, 719
Remote Config [candidate] (723.464 µs) : 0, 723
Telemetry [baseline] (13.696 ms) : 0, 13696
Telemetry [candidate] (13.797 ms) : 0, 13797
section appsec
BytebuddyAgent [baseline] (736.689 ms) : 0, 736689
BytebuddyAgent [candidate] (735.177 ms) : 0, 735177
GlobalTracer [baseline] (241.53 ms) : 0, 241530
GlobalTracer [candidate] (238.398 ms) : 0, 238398
AppSec [baseline] (176.261 ms) : 0, 176261
AppSec [candidate] (176.075 ms) : 0, 176075
Remote Config [baseline] (665.688 µs) : 0, 666
Remote Config [candidate] (664.43 µs) : 0, 664
Telemetry [baseline] (8.339 ms) : 0, 8339
Telemetry [candidate] (8.997 ms) : 0, 8997
IAST [baseline] (21.664 ms) : 0, 21664
IAST [candidate] (21.772 ms) : 0, 21772
section iast
BytebuddyAgent [baseline] (836.515 ms) : 0, 836515
BytebuddyAgent [candidate] (834.054 ms) : 0, 834054
GlobalTracer [baseline] (234.326 ms) : 0, 234326
GlobalTracer [candidate] (231.176 ms) : 0, 231176
AppSec [baseline] (56.894 ms) : 0, 56894
AppSec [candidate] (57.125 ms) : 0, 57125
Remote Config [baseline] (615.654 µs) : 0, 616
Remote Config [candidate] (623.492 µs) : 0, 623
Telemetry [baseline] (8.628 ms) : 0, 8628
Telemetry [candidate] (8.715 ms) : 0, 8715
IAST [baseline] (22.819 ms) : 0, 22819
IAST [candidate] (22.792 ms) : 0, 22792
section profiling
BytebuddyAgent [baseline] (709.132 ms) : 0, 709132
BytebuddyAgent [candidate] (706.955 ms) : 0, 706955
GlobalTracer [baseline] (354.926 ms) : 0, 354926
GlobalTracer [candidate] (352.436 ms) : 0, 352436
AppSec [baseline] (55.312 ms) : 0, 55312
AppSec [candidate] (54.486 ms) : 0, 54486
Remote Config [baseline] (703.565 µs) : 0, 704
Remote Config [candidate] (703.151 µs) : 0, 703
Telemetry [baseline] (8.898 ms) : 0, 8898
Telemetry [candidate] (8.919 ms) : 0, 8919
ProfilingAgent [baseline] (96.059 ms) : 0, 96059
ProfilingAgent [candidate] (96.494 ms) : 0, 96494
Profiling [baseline] (96.085 ms) : 0, 96085
Profiling [candidate] (96.522 ms) : 0, 96522
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 18 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section baseline
no_agent (380.766 µs) : 361, 400
. : milestone, 381,
iast (505.144 µs) : 484, 527
. : milestone, 505,
iast_FULL (743.852 µs) : 722, 766
. : milestone, 744,
iast_GLOBAL (550.511 µs) : 529, 572
. : milestone, 551,
iast_HARDCODED_SECRET_DISABLED (507.487 µs) : 486, 529
. : milestone, 507,
iast_INACTIVE (457.593 µs) : 436, 479
. : milestone, 458,
iast_TELEMETRY_OFF (496.278 µs) : 473, 520
. : milestone, 496,
tracing (456.031 µs) : 432, 480
. : milestone, 456,
section candidate
no_agent (391.791 µs) : 371, 412
. : milestone, 392,
iast (511.424 µs) : 490, 533
. : milestone, 511,
iast_FULL (747.586 µs) : 726, 770
. : milestone, 748,
iast_GLOBAL (548.469 µs) : 527, 570
. : milestone, 548,
iast_HARDCODED_SECRET_DISABLED (513.186 µs) : 491, 536
. : milestone, 513,
iast_INACTIVE (460.629 µs) : 439, 482
. : milestone, 461,
iast_TELEMETRY_OFF (501.77 µs) : 479, 525
. : milestone, 502,
tracing (451.311 µs) : 431, 472
. : milestone, 451,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section baseline
no_agent (1.353 ms) : 1334, 1372
. : milestone, 1353,
appsec (1.75 ms) : 1727, 1773
. : milestone, 1750,
appsec_no_iast (1.767 ms) : 1742, 1792
. : milestone, 1767,
iast (1.507 ms) : 1482, 1532
. : milestone, 1507,
profiling (1.498 ms) : 1474, 1523
. : milestone, 1498,
tracing (1.496 ms) : 1473, 1520
. : milestone, 1496,
section candidate
no_agent (1.346 ms) : 1326, 1365
. : milestone, 1346,
appsec (1.749 ms) : 1725, 1773
. : milestone, 1749,
appsec_no_iast (1.745 ms) : 1720, 1769
. : milestone, 1745,
iast (1.503 ms) : 1479, 1526
. : milestone, 1503,
profiling (1.52 ms) : 1497, 1543
. : milestone, 1520,
tracing (1.484 ms) : 1459, 1508
. : milestone, 1484,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section baseline
no_agent (1.475 ms) : 1464, 1487
. : milestone, 1475,
appsec (2.372 ms) : 2329, 2415
. : milestone, 2372,
iast (2.105 ms) : 2051, 2160
. : milestone, 2105,
iast_GLOBAL (2.152 ms) : 2097, 2207
. : milestone, 2152,
profiling (1.994 ms) : 1949, 2040
. : milestone, 1994,
tracing (1.949 ms) : 1907, 1991
. : milestone, 1949,
section candidate
no_agent (1.471 ms) : 1460, 1483
. : milestone, 1471,
appsec (2.371 ms) : 2327, 2414
. : milestone, 2371,
iast (2.119 ms) : 2064, 2174
. : milestone, 2119,
iast_GLOBAL (2.158 ms) : 2102, 2213
. : milestone, 2158,
profiling (1.983 ms) : 1939, 2027
. : milestone, 1983,
tracing (1.95 ms) : 1908, 1992
. : milestone, 1950,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~9f13521b29, baseline=1.47.0-SNAPSHOT~cb0dcc4de9
dateFormat X
axisFormat %s
section baseline
no_agent (15.614 s) : 15614000, 15614000
. : milestone, 15614000,
appsec (15.012 s) : 15012000, 15012000
. : milestone, 15012000,
iast (18.43 s) : 18430000, 18430000
. : milestone, 18430000,
iast_GLOBAL (18.022 s) : 18022000, 18022000
. : milestone, 18022000,
profiling (14.889 s) : 14889000, 14889000
. : milestone, 14889000,
tracing (15.048 s) : 15048000, 15048000
. : milestone, 15048000,
section candidate
no_agent (15.557 s) : 15557000, 15557000
. : milestone, 15557000,
appsec (15.133 s) : 15133000, 15133000
. : milestone, 15133000,
iast (19.075 s) : 19075000, 19075000
. : milestone, 19075000,
iast_GLOBAL (18.041 s) : 18041000, 18041000
. : milestone, 18041000,
profiling (15.743 s) : 15743000, 15743000
. : milestone, 15743000,
tracing (15.093 s) : 15093000, 15093000
. : milestone, 15093000,
|
import javax.annotation.Nullable; | ||
import javax.annotation.ParametersAreNonnullByDefault; | ||
|
||
// TODO Javadoc |
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.
This will be documented as part of the next PR, which will be dedicated to DSM migration.
|
||
@Override | ||
public <C> void inject(Context context, C carrier, CarrierSetter<C> setter) { | ||
// TODO Still in CorePropagation, not migrated yet |
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.
Similarly, this will be completed in the next PR
7945b33
to
9f13521
Compare
@@ -40,7 +39,11 @@ interface Setter<C> extends CarrierSetter<C> { | |||
void set(C carrier, String key, String value); | |||
} | |||
|
|||
<C> AgentSpanContext.Extracted extract(C carrier, ContextVisitor<C> getter); | |||
default <C> AgentSpanContext.Extracted extract(final C carrier, final ContextVisitor<C> getter) { |
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.
This methods will become static as soon as DSM is migrated as there will be no more need of AgentPropagation
/ CorePropagation
instances.
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.
Looks good, we should run this past DSM so they're aware
I will let them know and include them as part of the next step as it will be focused on DSM refactoring. |
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.46.1` -> `1.47.0` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.46.1` -> `1.47.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | --- ### Release Notes <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.47.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.47.0): 1.47.0 ##### Components ##### Application Security Management (IAST) - 🐛 Exclude com.stripe.net.HttpURLConnectionClient to solve IAST SSRF vulnerability false positives ([#​8483](DataDog/dd-trace-java#8483) - [@​jandro996](https://github.com/jandro996)) - 🐛 Add exclusion to solve IAST weak randomness vulnerability false positives ([#​8462](DataDog/dd-trace-java#8462) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak randomness false positive in Kafka client ([#​8408](DataDog/dd-trace-java#8408) - [@​smola](https://github.com/smola)) - ✨ Fix location for SSRF with Kong Unirest ([#​8407](DataDog/dd-trace-java#8407) - [@​smola](https://github.com/smola)) - ✨ Exclude IBM Instana from IAST ([#​8406](DataDog/dd-trace-java#8406) - [@​smola](https://github.com/smola)) - 🐛 Fix org.json iast instrumentation test for latest dependency ([#​8347](DataDog/dd-trace-java#8347) - [@​jandro996](https://github.com/jandro996)) - ✨ Configuration to Disable APM Tracing ([#​8219](DataDog/dd-trace-java#8219) - [@​jandro996](https://github.com/jandro996)) - ✨ Address cookie vulnerability cardinality issues ([#​8210](DataDog/dd-trace-java#8210) - [@​jandro996](https://github.com/jandro996)) - ✨ Email HTML Injection detection in IAST ([#​8205](DataDog/dd-trace-java#8205) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Application Security Management (WAF) - 🐛✨ Ensure usr.exists tag is not overridden when UsernameNotFoundException is thrown ([#​8376](DataDog/dd-trace-java#8376) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛✨ Ensure usr.exists tag is not overridden by auto instrumentation ([#​8374](DataDog/dd-trace-java#8374) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Update appsec metrics with event_rules_version tag ([#​8354](DataDog/dd-trace-java#8354) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Update metrics: appsec.waf.requests ([#​8353](DataDog/dd-trace-java#8353) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Improve ASM support in vert.x 5.0 ([#​8285](DataDog/dd-trace-java#8285) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Update metrics: appsec.waf.updates and appsec.waf.init ([#​8280](DataDog/dd-trace-java#8280) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Configuration to Disable APM Tracing ([#​8219](DataDog/dd-trace-java#8219) - [@​jandro996](https://github.com/jandro996)) ##### Build & Tooling - 🐛 Do not generate Muzzle references for primitive arrays in method body ([#​8361](DataDog/dd-trace-java#8361) - [@​amarziali](https://github.com/amarziali)) - 📖 Improve dev env setup documentation for Windows ([#​8180](DataDog/dd-trace-java#8180) - [@​lucaspimentel](https://github.com/lucaspimentel)) ##### Continuous Integration Visibility - ✨ Add support for skip-EFD tagging ([#​8487](DataDog/dd-trace-java#8487) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix an NPE in Gradle Android instrumentation ([#​8484](DataDog/dd-trace-java#8484) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Consider modified tests when applying fail-fast tests ordering ([#​8474](DataDog/dd-trace-java#8474) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement tests reordering for TestNG ([#​8467](DataDog/dd-trace-java#8467) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Gradle Launcher instrumentation to not interfere with Gradle Test Kit ([#​8465](DataDog/dd-trace-java#8465) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Use separate TestEventHandlers per framework in CI Vis instrumentations ([#​8451](DataDog/dd-trace-java#8451) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Remove warning log when JUnit 4 test method cannot be retrieved ([#​8445](DataDog/dd-trace-java#8445) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Scalatest tracing for tests that are reported asynchronously ([#​8444](DataDog/dd-trace-java#8444) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement attempt to fix tests ([#​8393](DataDog/dd-trace-java#8393) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement test disabling ([#​8377](DataDog/dd-trace-java#8377) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Update CODEOWNERS parser to not log errors on comments with leading whitespace ([#​8349](DataDog/dd-trace-java#8349) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Request Test Management tests list ([#​8345](DataDog/dd-trace-java#8345) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Receive test management settings from CIVis settings request ([#​8331](DataDog/dd-trace-java#8331) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement quarantined tests tagging ([#​8326](DataDog/dd-trace-java#8326) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement tests quarantining ([#​8320](DataDog/dd-trace-java#8320) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add tag to specify if the user is setting DD_SERVICE ([#​8318](DataDog/dd-trace-java#8318) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) ##### Crash tracking - ✨ Only fork jps when required ([#​8419](DataDog/dd-trace-java#8419) - [@​mcculls](https://github.com/mcculls)) - 🐛 Use Java home of the crashed process to launch crash uploader ([#​8348](DataDog/dd-trace-java#8348) - [@​jbachorik](https://github.com/jbachorik)) ##### Data Streams Monitoring - 🐛 Fix error happening when sqs message attributes are readonly ([#​8473](DataDog/dd-trace-java#8473) - [@​vandonr](https://github.com/vandonr)) - 🐛 Fix bug on proto schema extraction ([#​8403](DataDog/dd-trace-java#8403) - [@​vandonr](https://github.com/vandonr)) - 🐛 Fix service name overrides in consumers ([#​8387](DataDog/dd-trace-java#8387) - [@​piochelepiotr](https://github.com/piochelepiotr)) ##### Database Monitoring - ✨ Add DBMTracePreparedStatements to tracer configuration log ([#​8508](DataDog/dd-trace-java#8508) - [@​cecile75](https://github.com/cecile75)) ##### Dynamic Instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Fix Exception Replay with Lambda proxy classes ([#​8452](DataDog/dd-trace-java#8452) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add code origin support for spring-webmvc ([#​8416](DataDog/dd-trace-java#8416) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add support for scanning jar from loaded class ([#​8370](DataDog/dd-trace-java#8370) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Disable capture of entry values ([#​8369](DataDog/dd-trace-java#8369) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix CodeOrigin for `@Trace` annotation ([#​8344](DataDog/dd-trace-java#8344) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix equals/hashCode for CodeOrigin probe ([#​8319](DataDog/dd-trace-java#8319) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add code origin support to kafka message listeners ([#​8301](DataDog/dd-trace-java#8301) - [@​evanchooly](https://github.com/evanchooly)) ##### Metrics - ✨ Create metric: appsec.waf.error ([#​8381](DataDog/dd-trace-java#8381) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Create metric: appsec.rasp.error ([#​8364](DataDog/dd-trace-java#8364) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Profiling - ✨ Bump ddprof library to 1.22.0 ([#​8463](DataDog/dd-trace-java#8463) - [@​jbachorik](https://github.com/jbachorik)) - IBM J9 8u361 corresponds to OpenJDK 8u362 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#187 - Fix compatibility with musl libc 1.2.4 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#189 - Modify version extraction by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#179 - Do not write null values to jvminfo event by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#184 - Productize VMStructs-based stack walker by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#177 - A few minor downport issues by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#180 - Enable ASGCT by default on fairly safe J9 JDK versions by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#181 - 🐛 Exclude OrderedThreadPoolExecutor from queue-time measurements ([#​8456](DataDog/dd-trace-java#8456) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Record JVM info on JVMs without JFR ([#​8431](DataDog/dd-trace-java#8431) - [@​jbachorik](https://github.com/jbachorik)) - 🐛 Actually use CleanupTask in TempLocationManager ([#​8420](DataDog/dd-trace-java#8420) - [@​mcculls](https://github.com/mcculls)) - ✨ Only fork jps when required ([#​8419](DataDog/dd-trace-java#8419) - [@​mcculls](https://github.com/mcculls)) - 🐛 Adjust JFR checks for J9 ([#​8405](DataDog/dd-trace-java#8405) - [@​jbachorik](https://github.com/jbachorik)) - 🧹 Disable smap RSS parsing by default ([#​8342](DataDog/dd-trace-java#8342) - [@​MattAlp](https://github.com/MattAlp)) ##### Telemetry - 🐛 Add support for JBoss jar:file format to DependencyResolver ([#​8428](DataDog/dd-trace-java#8428) - [@​jandro996](https://github.com/jandro996)) - ✨ Update metrics: appsec.waf.requests ([#​8353](DataDog/dd-trace-java#8353) - [@​Mariovido](https://github.com/Mariovido)) ##### Trace context propagation - ✨ Introduce tracing propagator ([#​8313](DataDog/dd-trace-java#8313) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Tracer core - 🐛 Fix Stable Config telemetry source names ([#​8460](DataDog/dd-trace-java#8460) - [@​BaptisteFoy](https://github.com/BaptisteFoy)) - ✨ Probe trace endpoints with a valid payload of empty arrays ([#​8414](DataDog/dd-trace-java#8414) - [@​mcculls](https://github.com/mcculls)) - ✨ Add 1 minute fail-safe to JUL/JMX class-loading callback ([#​8399](DataDog/dd-trace-java#8399) - [@​mcculls](https://github.com/mcculls)) - ✨ Migrate DSM injection calls to context-first APIs ([#​8383](DataDog/dd-trace-java#8383) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 🧹 Move continuation capture methods from scope to tracer ([#​8371](DataDog/dd-trace-java#8371) - [@​mcculls](https://github.com/mcculls)) - ✨ Migrate context extraction calls to context-first APIs ([#​8368](DataDog/dd-trace-java#8368) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 🧹 Migrate context injection calls to context-first APIs ([#​8358](DataDog/dd-trace-java#8358) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 💡 Support reading configurations from files ([#​8338](DataDog/dd-trace-java#8338) - [@​mtoffl01](https://github.com/mtoffl01)) - 💡 Implementation of BaggagePropagator and BaggageContext ([#​8330](DataDog/dd-trace-java#8330) - [@​mhlidd](https://github.com/mhlidd)) - 🧹 Combine continuation implementations into one which supports multiple activations ([#​8324](DataDog/dd-trace-java#8324) - [@​mcculls](https://github.com/mcculls)) - ✨ Introduce tracing propagator ([#​8313](DataDog/dd-trace-java#8313) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Remove old context propagation API ([#​8271](DataDog/dd-trace-java#8271) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Instrumentations ##### AWS Lambda instrumentation - 🐛 Send error message and stack to Lambda extension ([#​8417](DataDog/dd-trace-java#8417) - [@​nhulston](https://github.com/nhulston)) ##### AWS SDK instrumentation - 🐛 Fix error happening when sqs message attributes are readonly ([#​8473](DataDog/dd-trace-java#8473) - [@​vandonr](https://github.com/vandonr)) - 💡 Inject trace context into AWS Step Functions input ([#​7585](DataDog/dd-trace-java#7585) - [@​DylanLovesCoffee](https://github.com/DylanLovesCoffee)) ##### Core Java language instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add code origin support for spring-webmvc ([#​8416](DataDog/dd-trace-java#8416) - [@​evanchooly](https://github.com/evanchooly)) - 💡 Implementation of BaggagePropagator and BaggageContext ([#​8330](DataDog/dd-trace-java#8330) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Add code origin support to kafka message listeners ([#​8301](DataDog/dd-trace-java#8301) - [@​evanchooly](https://github.com/evanchooly)) ##### gRPC instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) ##### Kafka instrumentation - ✨ Add messaging.destination.name tag to kafka integrations ([#​8366](DataDog/dd-trace-java#8366) - [@​rarguelloF](https://github.com/rarguelloF)) ##### Protocol Buffer instrumentation - 🐛 Fix bug on proto schema extraction ([#​8403](DataDog/dd-trace-java#8403) - [@​vandonr](https://github.com/vandonr)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am every weekday" in timezone Australia/Melbourne, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). GitOrigin-RevId: 108a0f86aa59ab4c938cbac0688dd4c19cb301fa
What Does This Do
This PR continue migrating the context propagation using the new Context API:
Motivation
Additional Notes
Most
CorePropagationTest
is commented and will be deleted in the next related PR.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: LANGPLAT-295