-
Notifications
You must be signed in to change notification settings - Fork 303
Add setUser to user monitoring SDK #8482
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
dd-trace-api/src/main/java/datadog/appsec/api/user/UserService.java
Outdated
Show resolved
Hide resolved
5eaffba
to
b3dcd02
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 55 metrics, 8 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1049805
Total [baseline] (10.442 s) : 0, 10442404
Agent [candidate] (1.053 s) : 0, 1052583
Total [candidate] (10.478 s) : 0, 10478398
section appsec
Agent [baseline] (1.194 s) : 0, 1194096
Total [baseline] (10.733 s) : 0, 10733061
Agent [candidate] (1.188 s) : 0, 1188342
Total [candidate] (10.751 s) : 0, 10751041
section iast
Agent [baseline] (1.184 s) : 0, 1183676
Total [baseline] (10.98 s) : 0, 10980049
Agent [candidate] (1.179 s) : 0, 1178706
Total [candidate] (10.992 s) : 0, 10992327
section profiling
Agent [baseline] (1.272 s) : 0, 1271937
Total [baseline] (10.939 s) : 0, 10939133
Agent [candidate] (1.264 s) : 0, 1264026
Total [candidate] (10.839 s) : 0, 10839153
gantt
title petclinic - break down per module: candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (722.833 ms) : 0, 722833
BytebuddyAgent [candidate] (725.616 ms) : 0, 725616
GlobalTracer [baseline] (241.081 ms) : 0, 241081
GlobalTracer [candidate] (241.41 ms) : 0, 241410
AppSec [baseline] (54.946 ms) : 0, 54946
AppSec [candidate] (54.819 ms) : 0, 54819
Remote Config [baseline] (704.889 µs) : 0, 705
Remote Config [candidate] (716.922 µs) : 0, 717
Telemetry [baseline] (14.992 ms) : 0, 14992
Telemetry [candidate] (13.843 ms) : 0, 13843
section appsec
BytebuddyAgent [baseline] (744.094 ms) : 0, 744094
BytebuddyAgent [candidate] (739.793 ms) : 0, 739793
GlobalTracer [baseline] (238.53 ms) : 0, 238530
GlobalTracer [candidate] (236.769 ms) : 0, 236769
AppSec [baseline] (176.234 ms) : 0, 176234
AppSec [candidate] (175.823 ms) : 0, 175823
Remote Config [baseline] (655.371 µs) : 0, 655
Remote Config [candidate] (663.307 µs) : 0, 663
Telemetry [baseline] (8.286 ms) : 0, 8286
Telemetry [candidate] (8.334 ms) : 0, 8334
IAST [baseline] (21.807 ms) : 0, 21807
IAST [candidate] (21.836 ms) : 0, 21836
section iast
BytebuddyAgent [baseline] (847.463 ms) : 0, 847463
BytebuddyAgent [candidate] (844.31 ms) : 0, 844310
GlobalTracer [baseline] (231.737 ms) : 0, 231737
GlobalTracer [candidate] (230.082 ms) : 0, 230082
AppSec [baseline] (56.809 ms) : 0, 56809
AppSec [candidate] (56.24 ms) : 0, 56240
Remote Config [baseline] (609.867 µs) : 0, 610
Remote Config [candidate] (618.673 µs) : 0, 619
Telemetry [baseline] (8.778 ms) : 0, 8778
Telemetry [candidate] (8.707 ms) : 0, 8707
IAST [baseline] (22.954 ms) : 0, 22954
IAST [candidate] (22.776 ms) : 0, 22776
section profiling
BytebuddyAgent [baseline] (715.861 ms) : 0, 715861
BytebuddyAgent [candidate] (710.903 ms) : 0, 710903
GlobalTracer [baseline] (352.779 ms) : 0, 352779
GlobalTracer [candidate] (351.553 ms) : 0, 351553
AppSec [baseline] (54.129 ms) : 0, 54129
AppSec [candidate] (53.58 ms) : 0, 53580
Remote Config [baseline] (677.94 µs) : 0, 678
Remote Config [candidate] (659.022 µs) : 0, 659
Telemetry [baseline] (9.901 ms) : 0, 9901
Telemetry [candidate] (8.964 ms) : 0, 8964
ProfilingAgent [baseline] (97.44 ms) : 0, 97440
ProfilingAgent [candidate] (96.887 ms) : 0, 96887
Profiling [baseline] (97.465 ms) : 0, 97465
Profiling [candidate] (96.911 ms) : 0, 96911
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.046 s) : 0, 1046458
Total [baseline] (8.708 s) : 0, 8708082
Agent [candidate] (1.044 s) : 0, 1044440
Total [candidate] (8.684 s) : 0, 8683771
section iast
Agent [baseline] (1.172 s) : 0, 1171595
Total [baseline] (9.25 s) : 0, 9249856
Agent [candidate] (1.181 s) : 0, 1180800
Total [candidate] (9.269 s) : 0, 9268656
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.171 s) : 0, 1170764
Total [baseline] (9.203 s) : 0, 9202753
Agent [candidate] (1.184 s) : 0, 1183508
Total [candidate] (9.246 s) : 0, 9246302
section iast_TELEMETRY_OFF
Agent [baseline] (1.169 s) : 0, 1169306
Total [baseline] (9.249 s) : 0, 9248693
Agent [candidate] (1.184 s) : 0, 1183971
Total [candidate] (9.285 s) : 0, 9284855
gantt
title insecure-bank - break down per module: candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (721.295 ms) : 0, 721295
BytebuddyAgent [candidate] (719.2 ms) : 0, 719200
GlobalTracer [baseline] (240.392 ms) : 0, 240392
GlobalTracer [candidate] (240.099 ms) : 0, 240099
AppSec [baseline] (54.854 ms) : 0, 54854
AppSec [candidate] (54.545 ms) : 0, 54545
Remote Config [baseline] (710.12 µs) : 0, 710
Remote Config [candidate] (709.011 µs) : 0, 709
Telemetry [baseline] (13.938 ms) : 0, 13938
Telemetry [candidate] (13.864 ms) : 0, 13864
section iast
BytebuddyAgent [baseline] (838.093 ms) : 0, 838093
BytebuddyAgent [candidate] (844.425 ms) : 0, 844425
GlobalTracer [baseline] (230.115 ms) : 0, 230115
GlobalTracer [candidate] (231.314 ms) : 0, 231314
IAST [baseline] (24.404 ms) : 0, 24404
IAST [candidate] (23.737 ms) : 0, 23737
AppSec [baseline] (54.365 ms) : 0, 54365
AppSec [candidate] (55.915 ms) : 0, 55915
Remote Config [baseline] (629.456 µs) : 0, 629
Remote Config [candidate] (622.054 µs) : 0, 622
Telemetry [baseline] (8.718 ms) : 0, 8718
Telemetry [candidate] (8.736 ms) : 0, 8736
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (836.636 ms) : 0, 836636
BytebuddyAgent [candidate] (846.134 ms) : 0, 846134
GlobalTracer [baseline] (230.389 ms) : 0, 230389
GlobalTracer [candidate] (232.1 ms) : 0, 232100
IAST [baseline] (22.864 ms) : 0, 22864
IAST [candidate] (23.143 ms) : 0, 23143
AppSec [baseline] (56.34 ms) : 0, 56340
AppSec [candidate] (56.604 ms) : 0, 56604
Remote Config [baseline] (604.677 µs) : 0, 605
Remote Config [candidate] (617.805 µs) : 0, 618
Telemetry [baseline] (8.696 ms) : 0, 8696
Telemetry [candidate] (8.753 ms) : 0, 8753
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (836.353 ms) : 0, 836353
BytebuddyAgent [candidate] (845.256 ms) : 0, 845256
GlobalTracer [baseline] (229.545 ms) : 0, 229545
GlobalTracer [candidate] (233.504 ms) : 0, 233504
IAST [baseline] (22.614 ms) : 0, 22614
IAST [candidate] (22.787 ms) : 0, 22787
AppSec [baseline] (56.26 ms) : 0, 56260
AppSec [candidate] (56.782 ms) : 0, 56782
Remote Config [baseline] (621.68 µs) : 0, 622
Remote Config [candidate] (624.667 µs) : 0, 625
Telemetry [baseline] (8.612 ms) : 0, 8612
Telemetry [candidate] (8.78 ms) : 0, 8780
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 14 metrics, 16 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section baseline
no_agent (1.376 ms) : 1356, 1396
. : milestone, 1376,
appsec (1.728 ms) : 1704, 1752
. : milestone, 1728,
appsec_no_iast (1.744 ms) : 1719, 1768
. : milestone, 1744,
code_origins (1.668 ms) : 1641, 1696
. : milestone, 1668,
iast (1.508 ms) : 1484, 1533
. : milestone, 1508,
profiling (1.51 ms) : 1486, 1534
. : milestone, 1510,
tracing (1.502 ms) : 1478, 1527
. : milestone, 1502,
section candidate
no_agent (1.374 ms) : 1354, 1394
. : milestone, 1374,
appsec (1.77 ms) : 1746, 1794
. : milestone, 1770,
appsec_no_iast (1.731 ms) : 1706, 1756
. : milestone, 1731,
code_origins (1.703 ms) : 1677, 1728
. : milestone, 1703,
iast (1.524 ms) : 1500, 1547
. : milestone, 1524,
profiling (1.536 ms) : 1513, 1559
. : milestone, 1536,
tracing (1.509 ms) : 1485, 1533
. : milestone, 1509,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section baseline
no_agent (387.415 µs) : 367, 408
. : milestone, 387,
iast (518.812 µs) : 497, 540
. : milestone, 519,
iast_FULL (741.378 µs) : 719, 763
. : milestone, 741,
iast_GLOBAL (567.603 µs) : 545, 590
. : milestone, 568,
iast_HARDCODED_SECRET_DISABLED (518.498 µs) : 497, 540
. : milestone, 518,
iast_INACTIVE (474.73 µs) : 453, 496
. : milestone, 475,
iast_TELEMETRY_OFF (505.86 µs) : 484, 528
. : milestone, 506,
tracing (465.791 µs) : 444, 487
. : milestone, 466,
section candidate
no_agent (386.448 µs) : 366, 406
. : milestone, 386,
iast (521.31 µs) : 500, 543
. : milestone, 521,
iast_FULL (733.502 µs) : 711, 756
. : milestone, 734,
iast_GLOBAL (566.505 µs) : 544, 589
. : milestone, 567,
iast_HARDCODED_SECRET_DISABLED (524.582 µs) : 503, 547
. : milestone, 525,
iast_INACTIVE (471.182 µs) : 450, 492
. : milestone, 471,
iast_TELEMETRY_OFF (508.8 µs) : 486, 531
. : milestone, 509,
tracing (465.614 µs) : 445, 486
. : milestone, 466,
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 biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section baseline
no_agent (15.505 s) : 15505000, 15505000
. : milestone, 15505000,
appsec (14.829 s) : 14829000, 14829000
. : milestone, 14829000,
iast (19.12 s) : 19120000, 19120000
. : milestone, 19120000,
iast_GLOBAL (18.209 s) : 18209000, 18209000
. : milestone, 18209000,
profiling (15.155 s) : 15155000, 15155000
. : milestone, 15155000,
tracing (14.699 s) : 14699000, 14699000
. : milestone, 14699000,
section candidate
no_agent (15.614 s) : 15614000, 15614000
. : milestone, 15614000,
appsec (14.797 s) : 14797000, 14797000
. : milestone, 14797000,
iast (18.906 s) : 18906000, 18906000
. : milestone, 18906000,
iast_GLOBAL (18.258 s) : 18258000, 18258000
. : milestone, 18258000,
profiling (15.971 s) : 15971000, 15971000
. : milestone, 15971000,
tracing (15.202 s) : 15202000, 15202000
. : milestone, 15202000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~d51ce62aae, baseline=1.48.0-SNAPSHOT~b1d7defba6
dateFormat X
axisFormat %s
section baseline
no_agent (1.48 ms) : 1468, 1491
. : milestone, 1480,
appsec (2.361 ms) : 2317, 2406
. : milestone, 2361,
iast (2.134 ms) : 2078, 2190
. : milestone, 2134,
iast_GLOBAL (2.177 ms) : 2120, 2233
. : milestone, 2177,
profiling (2.003 ms) : 1957, 2048
. : milestone, 2003,
tracing (1.974 ms) : 1932, 2017
. : milestone, 1974,
section candidate
no_agent (1.477 ms) : 1466, 1489
. : milestone, 1477,
appsec (2.36 ms) : 2316, 2405
. : milestone, 2360,
iast (2.136 ms) : 2079, 2192
. : milestone, 2136,
iast_GLOBAL (2.178 ms) : 2122, 2235
. : milestone, 2178,
profiling (1.994 ms) : 1949, 2039
. : milestone, 1994,
tracing (1.97 ms) : 1927, 2013
. : milestone, 1970,
|
b3dcd02
to
0723431
Compare
f712970
to
cf301ce
Compare
c45edb0
to
d18f607
Compare
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 fine from apm-java
side
8697caf
to
70fd62c
Compare
@@ -105,9 +128,15 @@ public void onUserEvent(final UserIdCollectionMode mode, final String userId) { | |||
} | |||
if (mode != SDK) { | |||
segment.setTagTop("_dd.appsec.usr.id", finalUserId); | |||
} else if (propagated) { | |||
// only the SDK can propagate usr.id | |||
segment.setTagTop("_dd.p.usr.id", encodeBase64(finalUserId)); |
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.
For that tag to propagate, some additional implementations are needed. You can find some examples here:
We can discuss it offline if you need more details. 😊
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.
Agreed, let's keep the propagation aside for now, thanks for the feedback!
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!
773120b
to
873917f
Compare
873917f
to
d51ce62
Compare
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | org.flywaydb.flyway | plugin | misk/gradle/libs.versions.toml | gradle | minor | `11.6.0` -> `11.7.0` | | [com.squareup.okio:okio-fakefilesystem](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.squareup.okio:okio](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.autonomousapps.dependency-analysis](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin) | plugin | misk/gradle/libs.versions.toml | gradle | minor | `2.15.0` -> `2.16.0` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | --- ### Release Notes <details> <summary>square/okio (com.squareup.okio:okio-fakefilesystem)</summary> ### [`v3.11.0`](https://github.com/square/okio/blob/HEAD/CHANGELOG.md#Version-3110) *2025-04-09* - Fix: Clear the deflater's byte array reference - New: Faster implementation of `String.decodeHex()` on Kotlin/JS. - New: Declare `EXACTLY_ONCE` execution for blocks like `Closeable.use {}` and `FileSystem.read {}`. - Upgrade: \[Kotlin 2.1.20]\[kotlin\_2\_1\_20]. </details> <details> <summary>autonomousapps/dependency-analysis-android-gradle-plugin (com.autonomousapps.dependency-analysis)</summary> ### [`v2.16.0`](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/blob/HEAD/CHANGELOG.md#Version-2160) - \[Feat]: support `com.android.test` projects. - \[Feat]: support typesafe project accessors with opt-in. ```kotlin dependencyAnalysis { useTypesafeProjectAccessors(true) // false by default } ``` </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.48.1`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.1): 1.48.1 ### Components #### Tracer internal logging - 🐛 Remove print line causing unnecessary logs ([#​8687](DataDog/dd-trace-java#8687) - [@​sarahchen6](https://github.com/sarahchen6)) ### [`v1.48.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.0): 1.48.0 ### Known Bugs > \[!NOTE] > If you are experiencing issues with spamming timeout logs, please update to the [latest version](https://github.com/DataDog/dd-trace-java/releases/latest) or set [JDK_SOCKET_ENABLED](https://github.com/DataDog/dd-trace-java/blob/33fc3c9a9b7cda3beda88b8b3e5224ae2b10764a/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java#L98) to false. ### Components #### Application Security Management (IAST) - ✨ Fix vulnerability location org.jose4j.lang.HashUtil ([#​8610](DataDog/dd-trace-java#8610) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak randomness in oracle.ucp.util.OpaqueString ([#​8609](DataDog/dd-trace-java#8609) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak hash false positive in oracle.security.o5logon.O5Logon ([#​8608](DataDog/dd-trace-java#8608) - [@​jandro996](https://github.com/jandro996)) - 🐛 Prevent before callsites targeting constructors in super calls ([#​8549](DataDog/dd-trace-java#8549) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Application Security Management (WAF) - ✨ Update login events public SDK to V2 ([#​8620](DataDog/dd-trace-java#8620) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#​8573](DataDog/dd-trace-java#8573) - [@​jandro996](https://github.com/jandro996)) - ✨ Improve detection of missing request end events ([#​8510](DataDog/dd-trace-java#8510) - [@​smola](https://github.com/smola)) - 🧹 Remove remote configuration for API Security sampling rate ([#​8486](DataDog/dd-trace-java#8486) - [@​smola](https://github.com/smola)) - ✨ Add setUser to user monitoring SDK ([#​8482](DataDog/dd-trace-java#8482) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add missing address for signup event ([#​8469](DataDog/dd-trace-java#8469) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Allow login events SDK to be used with appsec disabled ([#​8464](DataDog/dd-trace-java#8464) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add support for endpoint discovery in spring mvc ([#​8352](DataDog/dd-trace-java#8352) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ New API Security sampling algorithm ([#​8178](DataDog/dd-trace-java#8178) - [@​ValentinZakharov](https://github.com/ValentinZakharov)) #### Build & Tooling - ✨ Add buffer size customizability to JDK UDS support ([#​8629](DataDog/dd-trace-java#8629) - [@​sarahchen6](https://github.com/sarahchen6)) - ✨ Add JDK built-in support for UDS on Java 16+ ([#​8314](DataDog/dd-trace-java#8314) - [@​sarahchen6](https://github.com/sarahchen6)) #### Configuration at Runtime - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#​8573](DataDog/dd-trace-java#8573) - [@​jandro996](https://github.com/jandro996)) #### Continuous Integration Visibility - 🐛 Prevent double reporting of Scalatest events when using SBT with test forking ([#​8682](DataDog/dd-trace-java#8682) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Shutdown CI Visibility test event handlers before tracer ([#​8677](DataDog/dd-trace-java#8677) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Do not apply JUnit 4 instrumentation to MUnit runners ([#​8675](DataDog/dd-trace-java#8675), [#​8683](DataDog/dd-trace-java#8683) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Remove error log when source path resolution fails on isModified check ([#​8663](DataDog/dd-trace-java#8663) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement tests reordering for JUnit 4 ([#​8650](DataDog/dd-trace-java#8650) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Set default Attempt to Fix retries if none provided from the backend ([#​8615](DataDog/dd-trace-java#8615) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Allow to manually set PR info ([#​8566](DataDog/dd-trace-java#8566) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Test Optimization init when repo root cannot be determined ([#​8533](DataDog/dd-trace-java#8533) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add capabilities tagging ([#​8499](DataDog/dd-trace-java#8499), [#​8540](DataDog/dd-trace-java#8540) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Crash tracking - 🐛 Remove dependency on bash from crash/oome uploder scripts ([#​8652](DataDog/dd-trace-java#8652) - [@​jbachorik](https://github.com/jbachorik)) #### Data Streams Monitoring - ✨ e2e pipeline configuration when data jobs is enabled ([#​8553](DataDog/dd-trace-java#8553) - [@​kr-igor](https://github.com/kr-igor)) #### Dynamic Instrumentation - 🐛 Fix In-Product when config is empty ([#​8679](DataDog/dd-trace-java#8679) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add support for filtering shaded third-party libs ([#​8612](DataDog/dd-trace-java#8612) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add In-Product Enablement ([#​8587](DataDog/dd-trace-java#8587) - [@​jpbempel](https://github.com/jpbempel)) - ✨⚡ Reduce footprint of SourceFile tracking ([#​8524](DataDog/dd-trace-java#8524) - [@​jpbempel](https://github.com/jpbempel)) - ✨⚡ Optimize the SourceFile tracking ([#​8520](DataDog/dd-trace-java#8520) - [@​jpbempel](https://github.com/jpbempel)) #### OpenTracing - 🧹 Remove activeScope() use in OpenTracing shim ([#​8478](DataDog/dd-trace-java#8478) - [@​mcculls](https://github.com/mcculls)) #### Profiling - ✨ Add profiler env check command to AgentCLI ([#​8671](DataDog/dd-trace-java#8671) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.23.0 ([#​8668](DataDog/dd-trace-java#8668) - [@​jbachorik](https://github.com/jbachorik)) - Fix a crash related to ElfParser::loadSymbolTable ([#​191](DataDog/dd-trace-java#191)) by [@​yanglong1010](https://github.com/yanglong1010) in DataDog/java-profiler#192 - Unwind String.indexOf intrinsic on AArch64 by [@​MattAlp](https://github.com/MattAlp) in DataDog/java-profiler#193 - Fix Java 24 support by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#194 - A set of fixes related to clang, aarch64 and musl pecularities of vmstructs stack unwinder by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#199 - 🐛 Remove process information from JFR recording ([#​8661](DataDog/dd-trace-java#8661) - [@​r1viollet](https://github.com/r1viollet)) - 🐛 Make TempLocationManager USER aware ([#​8605](DataDog/dd-trace-java#8605) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#​8561](DataDog/dd-trace-java#8561) - [@​wmouchere](https://github.com/wmouchere)) #### Telemetry - 🐛 Fix appsec.rasp.error and appsec.waf.error telemetry metrics ([#​8624](DataDog/dd-trace-java#8624) - [@​jandro996](https://github.com/jandro996)) - ✨ Create metric: appsec.rasp.rule.skipped ([#​8618](DataDog/dd-trace-java#8618) - [@​jandro996](https://github.com/jandro996)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#​8561](DataDog/dd-trace-java#8561) - [@​wmouchere](https://github.com/wmouchere)) #### Testing - 🧹 Simplify ssi tests one-pipeline ([#​8558](DataDog/dd-trace-java#8558) - [@​robertomonteromiguel](https://github.com/robertomonteromiguel)) - ✨ Add smoke tests for java's concurrent API ([#​8438](DataDog/dd-trace-java#8438) - [@​sarahchen6](https://github.com/sarahchen6)) #### Trace context propagation - ✨ Adding Support for `TRACE_PROPAGATION_BEHAVIOR_EXTRACT` ([#​8535](DataDog/dd-trace-java#8535) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer core - 🐛 Ensure shaded helpers have unique names ([#​8559](DataDog/dd-trace-java#8559) - [@​amarziali](https://github.com/amarziali)) - ✨ Support common config sources for user-provided git info ([#​8547](DataDog/dd-trace-java#8547) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Make the default config sources more robust when a security manager is installed ([#​8544](DataDog/dd-trace-java#8544) - [@​mcculls](https://github.com/mcculls)) - ✨ Support targeting services with configurations in stable configuration file ([#​8526](DataDog/dd-trace-java#8526) - [@​mtoffl01](https://github.com/mtoffl01)) - ✨ Add new parser for `DD_TAGS` and prioritizing `DD_SERVICE` ([#​8296](DataDog/dd-trace-java#8296) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer internal logging - 🐛 Add missing debug log for the cloudPayloadTaggingServices config ([#​8600](DataDog/dd-trace-java#8600) - [@​ygree](https://github.com/ygree)) - ✨ Add the possibility to output the logs of the Java tracer in JSON ([#​8083](DataDog/dd-trace-java#8083) - [@​cecile75](https://github.com/cecile75)) #### Tracer public API - ✨ Introducing `DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED` Config ([#​8536](DataDog/dd-trace-java#8536) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Config Consistency Round 2 ([#​8489](DataDog/dd-trace-java#8489) - [@​mhlidd](https://github.com/mhlidd)) ### Instrumentations #### - 🐛 Fix NPE in getMdcCopy of LoggingEventInstrumentation ([#​8599](DataDog/dd-trace-java#8599) - [@​ygree](https://github.com/ygree)) #### Apache Spark instrumentation - ✨ Instrument Runtime.exit() to finish spark application spans ([#​8572](DataDog/dd-trace-java#8572) - [@​paul-laffon-dd](https://github.com/paul-laffon-dd)) - ✨ Configure OpenLineage if present in Spark instrumentation ([#​8541](DataDog/dd-trace-java#8541) - [@​mobuchowski](https://github.com/mobuchowski)) #### Armeria Instrumentation - ✨ Support armeria grpc 1.32.3 ([#​8606](DataDog/dd-trace-java#8606) - [@​github-actions](https://github.com/github-actions)\[bot]) #### AWS DynamoDB Instrumentation - ✨ Create DynamoDB instrumentation + add span pointers for `updateItem` and `deleteItem` ([#​8490](DataDog/dd-trace-java#8490) - [@​nhulston](https://github.com/nhulston)) #### AWS SDK instrumentation - ✨ Add DynamoDB in DEFAULT_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES ([#​8595](DataDog/dd-trace-java#8595) - [@​joeyzhao2018](https://github.com/joeyzhao2018)) #### Azure Functions instrumentation - ✨ Enable tracer computed trace metrics by default for Azure Functions ([#​8518](DataDog/dd-trace-java#8518) - [@​duncanpharvey](https://github.com/duncanpharvey)) - 💡 Add azure-functions instrumentation ([#​8432](DataDog/dd-trace-java#8432) - [@​duncanpharvey](https://github.com/duncanpharvey)) #### Core Java language instrumentation - 🐛 Fix ForkJoinPool.execute() instrumentation on Java 21+ ([#​8560](DataDog/dd-trace-java#8560) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Eclipse Vert.x instrumentation - ✨ Add vertx postgresql client instrumentation ([#​8471](DataDog/dd-trace-java#8471) - [@​vandonr](https://github.com/vandonr) - thanks for the contribution!) #### Kafka instrumentation - ✨ Support and test kafka-clients 4 ([#​8581](DataDog/dd-trace-java#8581) - [@​amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - ✨ Avoid disconnected traces when using Kotlin flowOn ([#​8651](DataDog/dd-trace-java#8651) - [@​mcculls](https://github.com/mcculls)) #### OpenTelemetry instrumentation - 🧹 Migrate OtelContext wrapper to new internal Context API ([#​8645](DataDog/dd-trace-java#8645) - [@​mcculls](https://github.com/mcculls)) #### Spring instrumentation - 🐛 Support CompletableFuture on spring webmvc controllers ([#​8659](DataDog/dd-trace-java#8659) - [@​amarziali](https://github.com/amarziali)) - ✨ Add support for endpoint discovery in spring mvc ([#​8352](DataDog/dd-trace-java#8352) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### WebSocket Instrumentation - ✨ Instrument Jetty websocket pojo ([#​8562](DataDog/dd-trace-java#8562) - [@​amarziali](https://github.com/amarziali)) - 💡 Instrument Java Websocket API (JSR356) ([#​8440](DataDog/dd-trace-java#8440) - [@​amarziali](https://github.com/amarziali)) #### All other instrumentations - ✨ Introduce cache for peer.hostname lookup ([#​8601](DataDog/dd-trace-java#8601) - [@​mcculls](https://github.com/mcculls)) - ✨ Support pekko http 1.1 ([#​8532](DataDog/dd-trace-java#8532) - [@​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**: 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: 331314f71acaced3adc75ea5d7e855c248d593fc
What Does This Do
Adds a public API for customers to set user related data in the spans aligned with what other tracers are doing.
Before:
After:
Motivation
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: APPSEC-56436