-
Notifications
You must be signed in to change notification settings - Fork 301
Introducing an internal integration name #8708
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
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 63 metrics, 8 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.005 s) : 0, 1004925
Total [baseline] (8.629 s) : 0, 8628903
Agent [candidate] (1.007 s) : 0, 1007401
Total [candidate] (8.639 s) : 0, 8638868
section iast
Agent [baseline] (1.144 s) : 0, 1143946
Total [baseline] (9.187 s) : 0, 9187353
Agent [candidate] (1.139 s) : 0, 1138637
Total [candidate] (9.231 s) : 0, 9230572
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.152 s) : 0, 1152491
Total [baseline] (9.255 s) : 0, 9255304
Agent [candidate] (1.138 s) : 0, 1137925
Total [candidate] (9.16 s) : 0, 9160479
section iast_TELEMETRY_OFF
Agent [baseline] (1.139 s) : 0, 1138684
Total [baseline] (9.234 s) : 0, 9233932
Agent [candidate] (1.134 s) : 0, 1134286
Total [candidate] (9.257 s) : 0, 9257229
gantt
title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (670.757 ms) : 0, 670757
BytebuddyAgent [candidate] (669.943 ms) : 0, 669943
GlobalTracer [baseline] (239.49 ms) : 0, 239490
GlobalTracer [candidate] (240.107 ms) : 0, 240107
AppSec [baseline] (54.489 ms) : 0, 54489
AppSec [candidate] (54.549 ms) : 0, 54549
Debugger [baseline] (6.205 ms) : 0, 6205
Debugger [candidate] (8.251 ms) : 0, 8251
Remote Config [baseline] (703.081 µs) : 0, 703
Remote Config [candidate] (696.636 µs) : 0, 697
Telemetry [baseline] (9.849 ms) : 0, 9849
Telemetry [candidate] (10.438 ms) : 0, 10438
section iast
BytebuddyAgent [baseline] (795.566 ms) : 0, 795566
BytebuddyAgent [candidate] (790.673 ms) : 0, 790673
GlobalTracer [baseline] (231.803 ms) : 0, 231803
GlobalTracer [candidate] (230.61 ms) : 0, 230610
IAST [baseline] (22.779 ms) : 0, 22779
IAST [candidate] (22.96 ms) : 0, 22960
AppSec [baseline] (55.939 ms) : 0, 55939
AppSec [candidate] (56.655 ms) : 0, 56655
Debugger [baseline] (5.904 ms) : 0, 5904
Debugger [candidate] (5.883 ms) : 0, 5883
Remote Config [baseline] (589.51 µs) : 0, 590
Remote Config [candidate] (588.979 µs) : 0, 589
Telemetry [baseline] (7.84 ms) : 0, 7840
Telemetry [candidate] (7.831 ms) : 0, 7831
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (801.318 ms) : 0, 801318
BytebuddyAgent [candidate] (790.624 ms) : 0, 790624
GlobalTracer [baseline] (233.03 ms) : 0, 233030
GlobalTracer [candidate] (230.705 ms) : 0, 230705
IAST [baseline] (23.132 ms) : 0, 23132
IAST [candidate] (22.749 ms) : 0, 22749
AppSec [baseline] (56.721 ms) : 0, 56721
AppSec [candidate] (56.146 ms) : 0, 56146
Debugger [baseline] (6.015 ms) : 0, 6015
Debugger [candidate] (5.857 ms) : 0, 5857
Remote Config [baseline] (598.613 µs) : 0, 599
Remote Config [candidate] (582.117 µs) : 0, 582
Telemetry [baseline] (7.982 ms) : 0, 7982
Telemetry [candidate] (7.873 ms) : 0, 7873
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (791.277 ms) : 0, 791277
BytebuddyAgent [candidate] (787.482 ms) : 0, 787482
GlobalTracer [baseline] (230.879 ms) : 0, 230879
GlobalTracer [candidate] (230.475 ms) : 0, 230475
IAST [baseline] (22.381 ms) : 0, 22381
IAST [candidate] (22.429 ms) : 0, 22429
AppSec [baseline] (56.405 ms) : 0, 56405
AppSec [candidate] (56.113 ms) : 0, 56113
Debugger [baseline] (5.91 ms) : 0, 5910
Debugger [candidate] (5.949 ms) : 0, 5949
Remote Config [baseline] (594.832 µs) : 0, 595
Remote Config [candidate] (604.101 µs) : 0, 604
Telemetry [baseline] (7.741 ms) : 0, 7741
Telemetry [candidate] (7.876 ms) : 0, 7876
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.009 s) : 0, 1008521
Total [baseline] (10.449 s) : 0, 10448804
Agent [candidate] (1.013 s) : 0, 1012837
Total [candidate] (10.477 s) : 0, 10476867
section appsec
Agent [baseline] (1.148 s) : 0, 1148149
Total [baseline] (10.694 s) : 0, 10693552
Agent [candidate] (1.153 s) : 0, 1152965
Total [candidate] (10.68 s) : 0, 10680060
section iast
Agent [baseline] (1.144 s) : 0, 1144440
Total [baseline] (10.892 s) : 0, 10892476
Agent [candidate] (1.141 s) : 0, 1141169
Total [candidate] (10.995 s) : 0, 10994856
section profiling
Agent [baseline] (1.268 s) : 0, 1267823
Total [baseline] (10.86 s) : 0, 10860191
Agent [candidate] (1.257 s) : 0, 1257154
Total [candidate] (10.819 s) : 0, 10819365
gantt
title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (672.003 ms) : 0, 672003
BytebuddyAgent [candidate] (675.82 ms) : 0, 675820
GlobalTracer [baseline] (240.22 ms) : 0, 240220
GlobalTracer [candidate] (241.806 ms) : 0, 241806
AppSec [baseline] (54.655 ms) : 0, 54655
AppSec [candidate] (54.986 ms) : 0, 54986
Debugger [baseline] (6.182 ms) : 0, 6182
Debugger [candidate] (6.863 ms) : 0, 6863
Remote Config [baseline] (698.114 µs) : 0, 698
Remote Config [candidate] (708.312 µs) : 0, 708
Telemetry [baseline] (11.267 ms) : 0, 11267
Telemetry [candidate] (9.096 ms) : 0, 9096
section appsec
BytebuddyAgent [baseline] (687.928 ms) : 0, 687928
BytebuddyAgent [candidate] (690.833 ms) : 0, 690833
GlobalTracer [baseline] (236.481 ms) : 0, 236481
GlobalTracer [candidate] (237.866 ms) : 0, 237866
AppSec [baseline] (175.424 ms) : 0, 175424
AppSec [candidate] (175.94 ms) : 0, 175940
Debugger [baseline] (5.832 ms) : 0, 5832
Debugger [candidate] (5.902 ms) : 0, 5902
Remote Config [baseline] (626.109 µs) : 0, 626
Remote Config [candidate] (642.694 µs) : 0, 643
Telemetry [baseline] (7.698 ms) : 0, 7698
Telemetry [candidate] (7.455 ms) : 0, 7455
IAST [baseline] (21.621 ms) : 0, 21621
IAST [candidate] (21.796 ms) : 0, 21796
section iast
BytebuddyAgent [baseline] (795.454 ms) : 0, 795454
BytebuddyAgent [candidate] (791.858 ms) : 0, 791858
GlobalTracer [baseline] (232.031 ms) : 0, 232031
GlobalTracer [candidate] (232.152 ms) : 0, 232152
AppSec [baseline] (56.254 ms) : 0, 56254
AppSec [candidate] (55.585 ms) : 0, 55585
Debugger [baseline] (5.938 ms) : 0, 5938
Debugger [candidate] (5.924 ms) : 0, 5924
Remote Config [baseline] (602.079 µs) : 0, 602
Remote Config [candidate] (596.051 µs) : 0, 596
Telemetry [baseline] (7.906 ms) : 0, 7906
Telemetry [candidate] (7.938 ms) : 0, 7938
IAST [baseline] (22.783 ms) : 0, 22783
IAST [candidate] (23.685 ms) : 0, 23685
section profiling
BytebuddyAgent [baseline] (668.982 ms) : 0, 668982
BytebuddyAgent [candidate] (663.087 ms) : 0, 663087
GlobalTracer [baseline] (380.877 ms) : 0, 380877
GlobalTracer [candidate] (378.906 ms) : 0, 378906
AppSec [baseline] (55.001 ms) : 0, 55001
AppSec [candidate] (53.756 ms) : 0, 53756
Debugger [baseline] (6.23 ms) : 0, 6230
Debugger [candidate] (6.118 ms) : 0, 6118
Remote Config [baseline] (661.786 µs) : 0, 662
Remote Config [candidate] (657.415 µs) : 0, 657
Telemetry [baseline] (8.273 ms) : 0, 8273
Telemetry [candidate] (8.188 ms) : 0, 8188
ProfilingAgent [baseline] (97.39 ms) : 0, 97390
ProfilingAgent [candidate] (96.347 ms) : 0, 96347
Profiling [baseline] (97.415 ms) : 0, 97415
Profiling [candidate] (96.37 ms) : 0, 96370
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 19 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section baseline
no_agent (387.509 µs) : 367, 408
. : milestone, 388,
iast (528.116 µs) : 505, 551
. : milestone, 528,
iast_FULL (733.947 µs) : 711, 757
. : milestone, 734,
iast_GLOBAL (572.99 µs) : 549, 597
. : milestone, 573,
iast_HARDCODED_SECRET_DISABLED (529.436 µs) : 506, 553
. : milestone, 529,
iast_INACTIVE (461.628 µs) : 440, 483
. : milestone, 462,
iast_TELEMETRY_OFF (501.239 µs) : 478, 525
. : milestone, 501,
tracing (460.391 µs) : 439, 482
. : milestone, 460,
section candidate
no_agent (380.208 µs) : 360, 400
. : milestone, 380,
iast (517.072 µs) : 494, 540
. : milestone, 517,
iast_FULL (735.186 µs) : 712, 759
. : milestone, 735,
iast_GLOBAL (575.567 µs) : 552, 599
. : milestone, 576,
iast_HARDCODED_SECRET_DISABLED (514.653 µs) : 492, 538
. : milestone, 515,
iast_INACTIVE (464.553 µs) : 442, 487
. : milestone, 465,
iast_TELEMETRY_OFF (507.254 µs) : 484, 531
. : milestone, 507,
tracing (458.697 µs) : 437, 481
. : milestone, 459,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section baseline
no_agent (1.363 ms) : 1344, 1382
. : milestone, 1363,
appsec (1.738 ms) : 1714, 1762
. : milestone, 1738,
appsec_no_iast (1.722 ms) : 1697, 1746
. : milestone, 1722,
code_origins (1.697 ms) : 1670, 1724
. : milestone, 1697,
iast (1.499 ms) : 1473, 1524
. : milestone, 1499,
profiling (1.517 ms) : 1494, 1541
. : milestone, 1517,
tracing (1.487 ms) : 1462, 1512
. : milestone, 1487,
section candidate
no_agent (1.352 ms) : 1332, 1371
. : milestone, 1352,
appsec (1.733 ms) : 1709, 1757
. : milestone, 1733,
appsec_no_iast (1.738 ms) : 1713, 1762
. : milestone, 1738,
code_origins (1.687 ms) : 1660, 1714
. : milestone, 1687,
iast (1.514 ms) : 1491, 1537
. : milestone, 1514,
profiling (1.533 ms) : 1508, 1558
. : milestone, 1533,
tracing (1.488 ms) : 1462, 1514
. : milestone, 1488,
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.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section baseline
no_agent (15.523 s) : 15523000, 15523000
. : milestone, 15523000,
appsec (15.076 s) : 15076000, 15076000
. : milestone, 15076000,
iast (18.725 s) : 18725000, 18725000
. : milestone, 18725000,
iast_GLOBAL (18.178 s) : 18178000, 18178000
. : milestone, 18178000,
profiling (15.447 s) : 15447000, 15447000
. : milestone, 15447000,
tracing (14.684 s) : 14684000, 14684000
. : milestone, 14684000,
section candidate
no_agent (15.358 s) : 15358000, 15358000
. : milestone, 15358000,
appsec (14.984 s) : 14984000, 14984000
. : milestone, 14984000,
iast (18.985 s) : 18985000, 18985000
. : milestone, 18985000,
iast_GLOBAL (17.871 s) : 17871000, 17871000
. : milestone, 17871000,
profiling (15.475 s) : 15475000, 15475000
. : milestone, 15475000,
tracing (14.677 s) : 14677000, 14677000
. : milestone, 14677000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~73ecd4a870, baseline=1.49.0-SNAPSHOT~c329d085ef
dateFormat X
axisFormat %s
section baseline
no_agent (1.47 ms) : 1458, 1481
. : milestone, 1470,
appsec (2.404 ms) : 2354, 2454
. : milestone, 2404,
iast (2.182 ms) : 2120, 2244
. : milestone, 2182,
iast_GLOBAL (2.222 ms) : 2160, 2284
. : milestone, 2222,
profiling (2.039 ms) : 1987, 2090
. : milestone, 2039,
tracing (1.998 ms) : 1950, 2046
. : milestone, 1998,
section candidate
no_agent (1.473 ms) : 1462, 1485
. : milestone, 1473,
appsec (2.401 ms) : 2352, 2450
. : milestone, 2401,
iast (2.18 ms) : 2117, 2242
. : milestone, 2180,
iast_GLOBAL (2.219 ms) : 2157, 2281
. : milestone, 2219,
profiling (2.023 ms) : 1974, 2073
. : milestone, 2023,
tracing (2.012 ms) : 1964, 2060
. : milestone, 2012,
|
8922284
to
04a97aa
Compare
@@ -99,4 +99,5 @@ public class DDTags { | |||
public static final String DECISION_MAKER_SERVICE = "_dd.dm.service"; | |||
public static final String DECISION_MAKER_RESOURCE = "_dd.dm.resource"; | |||
public static final String PROCESS_TAGS = "_dd.tags.process"; | |||
public static final String INTEGRATION_COMPONENT = "_dd.integration_component"; |
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.
just wondering what's the difference between integration
and integration_component
?
EDIT: also is there a difference between component
(existing tag) and integration_component
?
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.
We specified as it but yes it can be shortened without issues IMHO
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.
thanks for the info - just thinking about the effect of the tag name on payload sizes (which will vary according to the trace protocol)
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.
I think it makes sense even if compression often soften this. But it's applied to all the spans. Let's shorten the name since more verbosity does not add information
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.
It's changed to the shortened version. thanks for the hint
@@ -43,6 +43,7 @@ public OtelSpan(AgentSpan delegate) { | |||
} | |||
this.statusCode = UNSET; | |||
this.recording = true; | |||
delegate.context().setInstrumentationComponentName("opentelemetry"); |
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.
note we've used "otel"
in other telemetry metrics - personally I prefer the shorter string
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.
changed as well.
abf698b
to
6e134a0
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.
More like a general question, but why don't you use a new dedicated tag value and tag interceptor to handle this new data rather than adding another dedicated method to the AgentSpanContext
internal API?
It would avoid adding another API where we already handle the some specific datadog tags and data here. It could also simplify to not having to retrieve context every time.
960b2c6
to
c1710b1
Compare
Actually the interceptor is not usable since it's not just a matter of copying the component tag but ensuring that _dd.integration matches the integration name and not anything else the user can put as component tag (what's has been observed as happening). The information is in the span context (the agent span being private not the public api) to avoid having it as a tag with the risk of being overridden |
...bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/BaseDecorator.java
Outdated
Show resolved
Hide resolved
@@ -51,6 +51,7 @@ public AgentSpan afterStart(final AgentSpan span) { | |||
span.setTag(DDTags.HOST_VCPU_COUNT, cpuCount); | |||
span.setTag(Tags.TEST_TYPE, testType()); | |||
span.setTag(Tags.COMPONENT, component()); | |||
span.context().setInstrumentationComponentName(component()); |
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.
do we want to store component()
in a local variable and re-use it like in BaseDecorator
, in case it's non-trivial to compute?
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.
Usually it's a static string (should not be dynamic). Do you had a use case in mind I overlooked?
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.
no - just noticed that BaseDecorator
put it in a local variable for re-use, but this doesn't
I assumed there was a reason the BaseDecorator
change introduced a local variable...
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.
I declared a local variable on afterStart
to avoid calling component()
twice. The initial value for both component and _dd.integration is the same. The only difference is that the latter is immutable
c1710b1
to
600ce5c
Compare
...ion/jakarta-rs-annotations-3/src/test/groovy/JakartaRsAnnotations3InstrumentationTest.groovy
Show resolved
Hide resolved
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.
👍
…InstrumentationComponentAdderTest.groovy Co-authored-by: Stuart McCulloch <[email protected]>
…strumentationComponentAdder.java Co-authored-by: Stuart McCulloch <[email protected]>
Co-authored-by: Stuart McCulloch <[email protected]>
…strumentationComponentAdder.java Co-authored-by: Stuart McCulloch <[email protected]>
292dfe8
to
73ecd4a
Compare
| 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
This pull request introduces an internal field on
AgentSpanContext
to store a reliable name used by integrations.The goal is to have it reliably serialized under
_dd.integration
. This will contribute to have internal usage data points on integrations.It also adds integration names for
opentracing
andotel
originated spans that will give us an idea of the source of the span.It differs from the
spans_created
telemetry since that usage data is not calculated on the tracer side but on the intake. It will give us more flexibility especially wrt changes on the metric since it won't require tracer changesThe data is also attached to any span. Especially for customer issues, this will help to understand if a span was internally or externally created
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: [PROJ-IDENT]