-
Notifications
You must be signed in to change notification settings - Fork 306
Track the source of installation #8956
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
Follow up: https://github.com/DataDog/dd-go/pull/187441 |
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java
Outdated
Show resolved
Hide resolved
if (getConfig(LIB_INJECTION_ENABLED_ENV_VAR)) { | ||
System.setProperty(LIB_INSTRUMENTATION_SOURCE_SYS_PROP, "ssi"); | ||
} else { | ||
System.setProperty(LIB_INSTRUMENTATION_SOURCE_SYS_PROP, "cmd_line"); | ||
} |
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.
Please move to a dedicated fonction and gives it a meaningful name
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.
As part of that could you add a trySetProperty
method to the SystemUtils
utility class like this:
public static void trySetProperty(String property, String value) {
try {
System.setProperty(property, value);
} catch (SecurityException e) {
// ignore
}
}
This is just in case the user has a strict security manager installed - if so then this catches the security exception early and avoids having any side-effect on startup.
Then your dedicated function might look something like:
private static void recordInstrumentationSource(String source) {
SystemUtils.trySetProperty(LIB_INSTRUMENTATION_SOURCE_SYS_PROP, source);
}
and the above code would become:
if (getConfig(LIB_INJECTION_ENABLED_ENV_VAR)) {
recordInstrumentationSource("ssi");
} else {
recordInstrumentationSource("cmd_line");
}
@@ -240,6 +240,10 @@ public final class ConfigDefaults { | |||
static final boolean DEFAULT_TELEMETRY_LOG_COLLECTION_ENABLED = true; | |||
static final int DEFAULT_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE = 100000; | |||
|
|||
static final boolean DEFAULT_SSI_INJECTION_FORCE = false; | |||
static final String DEFAULT_SSI_INJECTION_ENABLED = null; |
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.
Default should not be null. Consider using enum
instead if the values have limited options
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.
If there's no default (i.e. null
) then we usually omit an entry here and use the simpler method, i.e. configProvider.getString(SSI_INJECTION_ENABLED);
Enums are quite weighty in terms of class-loading, so I prefer to avoid them in the tracer unless they add lots of value.
// Used to report telemetry on SSI injection | ||
ssiInjectionEnabled = | ||
configProvider.getString(SSI_INJECTION_ENABLED, DEFAULT_SSI_INJECTION_ENABLED); | ||
ssiInjectionForce = | ||
configProvider.getBoolean(SSI_INJECTION_FORCE, DEFAULT_SSI_INJECTION_FORCE); | ||
instrumentationSource = | ||
configProvider.getString(INSTRUMENTATION_SOURCE, DEFAULT_INSTRUMENTATION_SOURCE); |
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.
Are those config only "get" to leverage the side effect of config telemetry?
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.
Correct - if we want to make this even more explicit in the code we could introduce some reportConfig
methods which just delegate to configProvider.getXYZ
and always return void
but IMHO the leading comment here is enough.
We could also call ConfigCollector.get().put(....)
directly to report but we'd still need to fetch the config.
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 60 metrics, 11 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.035 s) : 0, 1034736
Total [baseline] (10.477 s) : 0, 10476794
Agent [candidate] (1.023 s) : 0, 1023058
Total [candidate] (10.452 s) : 0, 10451813
section appsec
Agent [baseline] (1.172 s) : 0, 1172411
Total [baseline] (10.598 s) : 0, 10598054
Agent [candidate] (1.173 s) : 0, 1172665
Total [candidate] (10.625 s) : 0, 10624581
section iast
Agent [baseline] (1.161 s) : 0, 1161214
Total [baseline] (10.869 s) : 0, 10868944
Agent [candidate] (1.158 s) : 0, 1158325
Total [candidate] (10.848 s) : 0, 10848369
section profiling
Agent [baseline] (1.267 s) : 0, 1266860
Total [baseline] (10.929 s) : 0, 10929354
Agent [candidate] (1.266 s) : 0, 1266248
Total [candidate] (10.775 s) : 0, 10775075
gantt
title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (692.181 ms) : 0, 692181
BytebuddyAgent [candidate] (683.094 ms) : 0, 683094
GlobalTracer [baseline] (242.398 ms) : 0, 242398
GlobalTracer [candidate] (240.972 ms) : 0, 240972
AppSec [baseline] (57.352 ms) : 0, 57352
AppSec [candidate] (57.108 ms) : 0, 57108
Debugger [baseline] (6.194 ms) : 0, 6194
Debugger [candidate] (6.117 ms) : 0, 6117
Remote Config [baseline] (727.626 µs) : 0, 728
Remote Config [candidate] (748.803 µs) : 0, 749
Telemetry [baseline] (12.086 ms) : 0, 12086
Telemetry [candidate] (11.386 ms) : 0, 11386
section appsec
BytebuddyAgent [baseline] (703.719 ms) : 0, 703719
BytebuddyAgent [candidate] (703.87 ms) : 0, 703870
GlobalTracer [baseline] (234.178 ms) : 0, 234178
GlobalTracer [candidate] (234.057 ms) : 0, 234057
AppSec [baseline] (175.353 ms) : 0, 175353
AppSec [candidate] (175.502 ms) : 0, 175502
Debugger [baseline] (5.912 ms) : 0, 5912
Debugger [candidate] (5.971 ms) : 0, 5971
Remote Config [baseline] (608.061 µs) : 0, 608
Remote Config [candidate] (618.424 µs) : 0, 618
Telemetry [baseline] (7.36 ms) : 0, 7360
Telemetry [candidate] (7.349 ms) : 0, 7349
IAST [baseline] (21.833 ms) : 0, 21833
IAST [candidate] (21.832 ms) : 0, 21832
section iast
BytebuddyAgent [baseline] (810.144 ms) : 0, 810144
BytebuddyAgent [candidate] (807.757 ms) : 0, 807757
GlobalTracer [baseline] (231.971 ms) : 0, 231971
GlobalTracer [candidate] (232.05 ms) : 0, 232050
AppSec [baseline] (55.771 ms) : 0, 55771
AppSec [candidate] (52.925 ms) : 0, 52925
Debugger [baseline] (6.012 ms) : 0, 6012
Debugger [candidate] (6.013 ms) : 0, 6013
Remote Config [baseline] (598.345 µs) : 0, 598
Remote Config [candidate] (621.512 µs) : 0, 622
Telemetry [baseline] (7.918 ms) : 0, 7918
Telemetry [candidate] (7.95 ms) : 0, 7950
IAST [baseline] (24.98 ms) : 0, 24980
IAST [candidate] (27.247 ms) : 0, 27247
section profiling
BytebuddyAgent [baseline] (676.075 ms) : 0, 676075
BytebuddyAgent [candidate] (675.101 ms) : 0, 675101
GlobalTracer [baseline] (361.157 ms) : 0, 361157
GlobalTracer [candidate] (359.998 ms) : 0, 359998
AppSec [baseline] (61.4 ms) : 0, 61400
AppSec [candidate] (62.031 ms) : 0, 62031
Debugger [baseline] (6.028 ms) : 0, 6028
Debugger [candidate] (6.101 ms) : 0, 6101
Remote Config [baseline] (658.337 µs) : 0, 658
Remote Config [candidate] (639.873 µs) : 0, 640
Telemetry [baseline] (8.139 ms) : 0, 8139
Telemetry [candidate] (8.172 ms) : 0, 8172
ProfilingAgent [baseline] (102.54 ms) : 0, 102540
ProfilingAgent [candidate] (103.348 ms) : 0, 103348
Profiling [baseline] (102.566 ms) : 0, 102566
Profiling [candidate] (103.372 ms) : 0, 103372
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.027 s) : 0, 1027390
Total [baseline] (8.535 s) : 0, 8535464
Agent [candidate] (1.023 s) : 0, 1023363
Total [candidate] (8.537 s) : 0, 8536949
section iast
Agent [baseline] (1.149 s) : 0, 1149352
Total [baseline] (9.181 s) : 0, 9181094
Agent [candidate] (1.151 s) : 0, 1150858
Total [candidate] (9.19 s) : 0, 9190058
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.147 s) : 0, 1147471
Total [baseline] (9.153 s) : 0, 9153073
Agent [candidate] (1.148 s) : 0, 1148462
Total [candidate] (9.128 s) : 0, 9128195
section iast_TELEMETRY_OFF
Agent [baseline] (1.148 s) : 0, 1148065
Total [baseline] (9.236 s) : 0, 9235815
Agent [candidate] (1.145 s) : 0, 1144659
Total [candidate] (9.163 s) : 0, 9163077
gantt
title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (686.638 ms) : 0, 686638
BytebuddyAgent [candidate] (682.757 ms) : 0, 682757
GlobalTracer [baseline] (241.184 ms) : 0, 241184
GlobalTracer [candidate] (240.48 ms) : 0, 240480
AppSec [baseline] (55.993 ms) : 0, 55993
AppSec [candidate] (56.855 ms) : 0, 56855
Debugger [baseline] (6.192 ms) : 0, 6192
Debugger [candidate] (6.164 ms) : 0, 6164
Remote Config [baseline] (736.536 µs) : 0, 737
Remote Config [candidate] (719.241 µs) : 0, 719
Telemetry [baseline] (12.978 ms) : 0, 12978
Telemetry [candidate] (12.853 ms) : 0, 12853
section iast
BytebuddyAgent [baseline] (801.745 ms) : 0, 801745
BytebuddyAgent [candidate] (803.011 ms) : 0, 803011
GlobalTracer [baseline] (230.629 ms) : 0, 230629
GlobalTracer [candidate] (230.715 ms) : 0, 230715
AppSec [baseline] (52.155 ms) : 0, 52155
AppSec [candidate] (50.537 ms) : 0, 50537
Debugger [baseline] (5.953 ms) : 0, 5953
Debugger [candidate] (5.972 ms) : 0, 5972
Remote Config [baseline] (608.336 µs) : 0, 608
Remote Config [candidate] (597.804 µs) : 0, 598
Telemetry [baseline] (7.9 ms) : 0, 7900
Telemetry [candidate] (7.903 ms) : 0, 7903
IAST [baseline] (26.87 ms) : 0, 26870
IAST [candidate] (27.874 ms) : 0, 27874
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (799.948 ms) : 0, 799948
BytebuddyAgent [candidate] (800.817 ms) : 0, 800817
GlobalTracer [baseline] (230.135 ms) : 0, 230135
GlobalTracer [candidate] (230.27 ms) : 0, 230270
AppSec [baseline] (52.352 ms) : 0, 52352
AppSec [candidate] (51.16 ms) : 0, 51160
Debugger [baseline] (5.967 ms) : 0, 5967
Debugger [candidate] (5.95 ms) : 0, 5950
Remote Config [baseline] (589.487 µs) : 0, 589
Remote Config [candidate] (581.462 µs) : 0, 581
Telemetry [baseline] (7.944 ms) : 0, 7944
Telemetry [candidate] (7.923 ms) : 0, 7923
IAST [baseline] (27.08 ms) : 0, 27080
IAST [candidate] (28.262 ms) : 0, 28262
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (799.716 ms) : 0, 799716
BytebuddyAgent [candidate] (797.546 ms) : 0, 797546
GlobalTracer [baseline] (231.123 ms) : 0, 231123
GlobalTracer [candidate] (230.818 ms) : 0, 230818
AppSec [baseline] (48.723 ms) : 0, 48723
AppSec [candidate] (49.264 ms) : 0, 49264
Debugger [baseline] (5.973 ms) : 0, 5973
Debugger [candidate] (5.933 ms) : 0, 5933
Remote Config [baseline] (578.114 µs) : 0, 578
Remote Config [candidate] (596.899 µs) : 0, 597
Telemetry [baseline] (7.848 ms) : 0, 7848
Telemetry [candidate] (7.815 ms) : 0, 7815
IAST [baseline] (30.543 ms) : 0, 30543
IAST [candidate] (29.236 ms) : 0, 29236
LoadDacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section baseline
no_agent (15.527 s) : 15527000, 15527000
. : milestone, 15527000,
appsec (14.907 s) : 14907000, 14907000
. : milestone, 14907000,
iast (18.493 s) : 18493000, 18493000
. : milestone, 18493000,
iast_GLOBAL (17.81 s) : 17810000, 17810000
. : milestone, 17810000,
profiling (15.266 s) : 15266000, 15266000
. : milestone, 15266000,
tracing (14.965 s) : 14965000, 14965000
. : milestone, 14965000,
section candidate
no_agent (15.748 s) : 15748000, 15748000
. : milestone, 15748000,
appsec (14.876 s) : 14876000, 14876000
. : milestone, 14876000,
iast (18.661 s) : 18661000, 18661000
. : milestone, 18661000,
iast_GLOBAL (18.014 s) : 18014000, 18014000
. : milestone, 18014000,
profiling (15.322 s) : 15322000, 15322000
. : milestone, 15322000,
tracing (14.901 s) : 14901000, 14901000
. : milestone, 14901000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~1463cd91b5, baseline=1.50.0-SNAPSHOT~1a9af7b785
dateFormat X
axisFormat %s
section baseline
no_agent (1.482 ms) : 1470, 1494
. : milestone, 1482,
appsec (2.411 ms) : 2363, 2460
. : milestone, 2411,
iast (2.196 ms) : 2135, 2257
. : milestone, 2196,
iast_GLOBAL (2.241 ms) : 2178, 2303
. : milestone, 2241,
profiling (2.024 ms) : 1975, 2072
. : milestone, 2024,
tracing (2.006 ms) : 1959, 2054
. : milestone, 2006,
section candidate
no_agent (1.484 ms) : 1473, 1496
. : milestone, 1484,
appsec (2.406 ms) : 2358, 2455
. : milestone, 2406,
iast (2.194 ms) : 2133, 2255
. : milestone, 2194,
iast_GLOBAL (2.236 ms) : 2175, 2298
. : milestone, 2236,
profiling (2.048 ms) : 1998, 2098
. : milestone, 2048,
tracing (2.018 ms) : 1971, 2066
. : milestone, 2018,
|
dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java
Outdated
Show resolved
Hide resolved
7b13237
to
eca4678
Compare
79e53e7
to
51a4a9d
Compare
internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy
Outdated
Show resolved
Hide resolved
| 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.49.0` -> `1.50.0` | --- ### Release Notes <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.50.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.50.0): 1.50.0 ### Deprecation Notice > \[!NOTE] > `DD_RUNTIME_ID_ENABLED` has been deprecated and will be removed in future releases. Please use `DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED` instead. ### Components #### Application Security Management (WAF) - 🐛 Add String length truncation limit to ObjectIntrospector and update truncation metrics ([#​8825](DataDog/dd-trace-java#8825) - [@​jandro996](https://github.com/jandro996)) - 🐛 Adapt standalone ASM to support API Security ([#​8804](DataDog/dd-trace-java#8804) - [@​jandro996](https://github.com/jandro996)) - ✨ Add appsec.waf.input\_truncated metric ([#​8791](DataDog/dd-trace-java#8791) - [@​jandro996](https://github.com/jandro996)) - ✨ Extended appsec request body collection ([#​8748](DataDog/dd-trace-java#8748) - [@​jandro996](https://github.com/jandro996)) - ✨ Extended appsec request/response headers collection ([#​8724](DataDog/dd-trace-java#8724) - [@​jandro996](https://github.com/jandro996)) #### Build & Tooling - ✨ Add artifacts to public s3 bucket ([#​8947](DataDog/dd-trace-java#8947) - [@​randomanderson](https://github.com/randomanderson)) #### Continuous Integration Visibility - ✨ Improve PR information building ([#​8908](DataDog/dd-trace-java#8908) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Truncate span stack traces when Test Optimization is enabled ([#​8903](DataDog/dd-trace-java#8903) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Ensure auto-detected service name is the same for every process in the same build ([#​8902](DataDog/dd-trace-java#8902) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Use tag as fallback in api requests if no branch is available ([#​8876](DataDog/dd-trace-java#8876) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add support for JUnit 5.13-RC1 ([#​8865](DataDog/dd-trace-java#8865), [#​8871](DataDog/dd-trace-java#8871) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement attempt to fix v3 and v4 and bump capability version ([#​8824](DataDog/dd-trace-java#8824) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🧹 Align retry logic for all test framework instrumentations ([#​8803](DataDog/dd-trace-java#8803) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Always build ci workspace without trailing separator ([#​8788](DataDog/dd-trace-java#8788) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add commit discrepancies telemetry when building repository git information ([#​8763](DataDog/dd-trace-java#8763) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Data Streams Monitoring - 💡 Surface process tags in dsm payloads and use them for base hash calculation ([#​8836](DataDog/dd-trace-java#8836) - [@​amarziali](https://github.com/amarziali)) #### Dynamic Instrumentation - ✨ Optimized allocations for collection filter functions ([#​8896](DataDog/dd-trace-java#8896) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix SymDB upload size check ([#​8887](DataDog/dd-trace-java#8887) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Add support for Set in filter function ([#​8873](DataDog/dd-trace-java#8873) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Add support for isDefined in log template ([#​8859](DataDog/dd-trace-java#8859) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix Max captured frames for Exception Replay ([#​8856](DataDog/dd-trace-java#8856) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Remove static inherited fields collection ([#​8832](DataDog/dd-trace-java#8832) - [@​jpbempel](https://github.com/jpbempel)) - 💡 Add process tags to dynamic instrumentation intake payload ([#​8779](DataDog/dd-trace-java#8779) - [@​amarziali](https://github.com/amarziali)) #### GraalVM native-image - ✨ Add support for GraalVM Native GC metrics ([#​8913](DataDog/dd-trace-java#8913) - [@​ygree](https://github.com/ygree)) - ✨ Add JMXFetch support for GraalVM Native ([#​8569](DataDog/dd-trace-java#8569) - [@​ygree](https://github.com/ygree)) #### JMX fetch - ✨ Add support for GraalVM Native GC metrics ([#​8913](DataDog/dd-trace-java#8913) - [@​ygree](https://github.com/ygree)) #### Library Injection - ✨ Deny oracle db jvm based tools ([#​8909](DataDog/dd-trace-java#8909) - [@​bric3](https://github.com/bric3)) #### OpenTracing - 🐛 Fix OT packaging for exception replay ([#​8912](DataDog/dd-trace-java#8912) - [@​jpbempel](https://github.com/jpbempel)) #### Profiling - ✨ Bump ddprof to 1.27.0 ([#​8893](DataDog/dd-trace-java#8893) - [@​jbachorik](https://github.com/jbachorik)) - Properly handle the adaptive sampling interval overflow by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#213 - Fix [#​200](DataDog/dd-trace-java#200) Crash related to aligned\_alloc and free in context by [@​yanglong1010](https://github.com/yanglong1010) in DataDog/java-profiler#208 - Explicitly initialize empty context page by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#210 - Re-connect crash recursion protection with VM stackwalker by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#214 - ✨ Enable ZSTD compression for profiling ([#​8862](DataDog/dd-trace-java#8862) - [@​MattAlp](https://github.com/MattAlp)) - ✨ Extend JPS re-implementation to J9 family ([#​8813](DataDog/dd-trace-java#8813) - [@​MattAlp](https://github.com/MattAlp)) - 💡 Collect process tags for profiling upload requests ([#​8780](DataDog/dd-trace-java#8780) - [@​amarziali](https://github.com/amarziali)) #### Telemetry - 💡 Surface process tags on telemetry payloads ([#​8837](DataDog/dd-trace-java#8837) - [@​amarziali](https://github.com/amarziali)) #### Trace context propagation - ✨ Migrating all HttpClient Instrumentations to Inject Full Context ([#​8826](DataDog/dd-trace-java#8826) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Migrating all HttpServer Instrumentations to Extract full Context ([#​8820](DataDog/dd-trace-java#8820) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Add context API support OTel propagators ([#​8770](DataDog/dd-trace-java#8770) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Tracer core - ✨⚡ Skip JAXB generated classes classloader ([#​9003](DataDog/dd-trace-java#9003) - [@​bric3](https://github.com/bric3)) - ✨ Add DD\_RUNTIME\_METRICS\_RUNTIME\_ID\_ENABLED alias for runtime id generation ([#​8981](DataDog/dd-trace-java#8981) - [@​amarziali](https://github.com/amarziali)) - 🐛 Use resolved address for peer.hostname when available without hitting the cache ([#​8915](DataDog/dd-trace-java#8915) - [@​amarziali](https://github.com/amarziali)) - 💡 Surface server name process tag for tomcat ([#​8894](DataDog/dd-trace-java#8894) - [@​amarziali](https://github.com/amarziali)) - 💡 Surface websphere cell and server name on process tags ([#​8880](DataDog/dd-trace-java#8880) - [@​amarziali](https://github.com/amarziali)) - ✨ Added special lightweight pre-main class that skips installation on incompatible JVMs. ([#​8855](DataDog/dd-trace-java#8855) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - 💡 Add entrypoint type to process tags ([#​8839](DataDog/dd-trace-java#8839) - [@​amarziali](https://github.com/amarziali)) - ✨ Extend JPS re-implementation to J9 family ([#​8813](DataDog/dd-trace-java#8813) - [@​MattAlp](https://github.com/MattAlp)) - ✨ Notify listeners when the scope top changes after switching scope stacks ([#​8797](DataDog/dd-trace-java#8797) - [@​mcculls](https://github.com/mcculls)) - ✨ Read hsperfdata for Java PIDs if jvmstat is unavailable ([#​8792](DataDog/dd-trace-java#8792) - [@​MattAlp](https://github.com/MattAlp)) - 🐛 Turn JDK socket support on by default ([#​8752](DataDog/dd-trace-java#8752) - [@​sarahchen6](https://github.com/sarahchen6)) - ✨ Simplify context propagation ([#​8719](DataDog/dd-trace-java#8719) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Add JSON parsing support ([#​8579](DataDog/dd-trace-java#8579) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Tracer internal logging - ✨ Fix printing format of span identifiers ([#​8897](DataDog/dd-trace-java#8897) - [@​vandonr](https://github.com/vandonr)) #### Tracer public API - 💡 Track the source of installation ([#​8956](DataDog/dd-trace-java#8956) - [@​mabdinur](https://github.com/mabdinur)) - ✨ Enforce size limit on application\_monitoring.yaml files ([#​8789](DataDog/dd-trace-java#8789) - [@​mtoffl01](https://github.com/mtoffl01)) - ✨ Enabling baggage cache to support limits and non-ascii characters ([#​8713](DataDog/dd-trace-java#8713) - [@​mhlidd](https://github.com/mhlidd)) ### Instrumentations #### AWS Lambda instrumentation - ✨ Pass Lambda Request ID to Extension ([#​8814](DataDog/dd-trace-java#8814) - [@​nhulston](https://github.com/nhulston)) #### Core Java language instrumentation - ✨ Ensure ClassloadingInstrumentation is always applied even with `DD_TRACE_ENABLED=false` ([#​8863](DataDog/dd-trace-java#8863) - [@​mcculls](https://github.com/mcculls)) #### Eclipse Vert.x instrumentation - 🐛 Do not override route with / in vertx instrumentation ([#​8881](DataDog/dd-trace-java#8881) - [@​vandonr](https://github.com/vandonr)) #### IBM Liberty - 🐛 Fix error mark on http status for IBM liberty ([#​8822](DataDog/dd-trace-java#8822) - [@​amarziali](https://github.com/amarziali)) #### JDBC instrumentation - 🐛 Do not prepend DBM <> APM trace comment in SQLCommenter if there is a pg plan hint ([#​8864](DataDog/dd-trace-java#8864) - [@​edengorevoy](https://github.com/edengorevoy)) #### JMS instrumentation - ✨ Add jms as an extra integration name where there is JMS involved ([#​8933](DataDog/dd-trace-java#8933) - [@​vandonr](https://github.com/vandonr)) #### Kotlin instrumentation - ✨ Enable kotlin\_coroutine integration by default ([#​8848](DataDog/dd-trace-java#8848) - [@​mcculls](https://github.com/mcculls)) - 🧹 Rework Kotlin coroutines instrumentation around coroutine context ([#​8774](DataDog/dd-trace-java#8774) - [@​mcculls](https://github.com/mcculls)) #### OpenTelemetry instrumentation - 🐛 Support WithSpan inheritContext attribute ([#​8858](DataDog/dd-trace-java#8858) - [@​amarziali](https://github.com/amarziali)) - ✨ Add context API support OTel propagators ([#​8770](DataDog/dd-trace-java#8770) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Play Framework instrumentation - 🐛 Fix the Play Framework's span resource name priority so that the client JAX-RS 404 cannot override it ([#​8591](DataDog/dd-trace-java#8591) - [@​ygree](https://github.com/ygree)) #### Quarkus Instrumentation - 🐛 Ignore quarkus jaxrs stubs and cdi wrapper proxies ([#​8891](DataDog/dd-trace-java#8891) - [@​amarziali](https://github.com/amarziali)) #### ServiceTalk - ✨ Improve ServiceTalk Captured Context API Instrumentation for v0.42.56+ ([#​8821](DataDog/dd-trace-java#8821) - [@​ygree](https://github.com/ygree)) #### Spring instrumentation - ✨ Supporting Baggage for Instrumentations used in Weblog Tests ([#​8773](DataDog/dd-trace-java#8773) - [@​mhlidd](https://github.com/mhlidd)) #### WebSocket Instrumentation - 💡 Trace websocket for spring webflux reactive handlers ([#​8831](DataDog/dd-trace-java#8831) - [@​amarziali](https://github.com/amarziali)) - 💡:test\_tube: WebSocket support for Netty ([#​8632](DataDog/dd-trace-java#8632) - [@​ValentinZakharov](https://github.com/ValentinZakharov)) #### Zio Instrumentation - 🧹 Cleanup Zio fiber instrumentation to avoid repeated activation of continuation ([#​8798](DataDog/dd-trace-java#8798) - [@​mcculls](https://github.com/mcculls)) </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. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- 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: 9207366cdb6a1bd098082305d354a0a3c4622d7a
What Does This Do
instrumentation.source
,injection.enabled
, andinjection.force
ssi configuration to the instrumentation telemetry platform.Motivation
Track how services are instrumented.
Additional Notes
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: [PROJ-IDENT]