-
Notifications
You must be signed in to change notification settings - Fork 314
Move JSON generation to sender thread to improve startup time. #9197
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
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 48 metrics, 11 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.044 s) : 0, 1044303
Total [baseline] (8.623 s) : 0, 8623070
Agent [candidate] (1.047 s) : 0, 1046973
Total [candidate] (8.618 s) : 0, 8618111
section iast
Agent [baseline] (1.181 s) : 0, 1181450
Total [baseline] (9.33 s) : 0, 9329766
Agent [candidate] (1.174 s) : 0, 1174207
Total [candidate] (9.312 s) : 0, 9312353
gantt
title insecure-bank - break down per module: candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.439 ms) : 0, 1439
BytebuddyAgent [baseline] (731.642 ms) : 0, 731642
BytebuddyAgent [candidate] (731.325 ms) : 0, 731325
GlobalTracer [baseline] (242.99 ms) : 0, 242990
GlobalTracer [candidate] (243.025 ms) : 0, 243025
AppSec [baseline] (30.562 ms) : 0, 30562
AppSec [candidate] (30.668 ms) : 0, 30668
Debugger [baseline] (6.085 ms) : 0, 6085
Debugger [candidate] (6.068 ms) : 0, 6068
Remote Config [baseline] (648.625 µs) : 0, 649
Remote Config [candidate] (658.814 µs) : 0, 659
Telemetry [baseline] (9.958 ms) : 0, 9958
Telemetry [candidate] (12.654 ms) : 0, 12654
section iast
crashtracking [baseline] (1.44 ms) : 0, 1440
crashtracking [candidate] (1.432 ms) : 0, 1432
BytebuddyAgent [baseline] (853.65 ms) : 0, 853650
BytebuddyAgent [candidate] (848.3 ms) : 0, 848300
GlobalTracer [baseline] (232.678 ms) : 0, 232678
GlobalTracer [candidate] (231.389 ms) : 0, 231389
IAST [baseline] (30.733 ms) : 0, 30733
IAST [candidate] (30.509 ms) : 0, 30509
AppSec [baseline] (26.453 ms) : 0, 26453
AppSec [candidate] (26.287 ms) : 0, 26287
Debugger [baseline] (6.747 ms) : 0, 6747
Debugger [candidate] (6.694 ms) : 0, 6694
Remote Config [baseline] (586.188 µs) : 0, 586
Remote Config [candidate] (597.7 µs) : 0, 598
Telemetry [baseline] (8.124 ms) : 0, 8124
Telemetry [candidate] (8.108 ms) : 0, 8108
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.046 s) : 0, 1045782
Total [baseline] (10.792 s) : 0, 10792418
Agent [candidate] (1.047 s) : 0, 1046850
Total [candidate] (10.752 s) : 0, 10751872
section appsec
Agent [baseline] (1.232 s) : 0, 1231632
Total [baseline] (10.866 s) : 0, 10866147
Agent [candidate] (1.234 s) : 0, 1233786
Total [candidate] (10.817 s) : 0, 10816780
section iast
Agent [baseline] (1.178 s) : 0, 1177900
Total [baseline] (10.844 s) : 0, 10844128
Agent [candidate] (1.175 s) : 0, 1174948
Total [candidate] (10.894 s) : 0, 10894434
section profiling
Agent [baseline] (1.2 s) : 0, 1199615
Total [baseline] (10.999 s) : 0, 10999102
Agent [candidate] (1.19 s) : 0, 1190361
Total [candidate] (10.925 s) : 0, 10925407
gantt
title petclinic - break down per module: candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.429 ms) : 0, 1429
crashtracking [candidate] (1.435 ms) : 0, 1435
BytebuddyAgent [baseline] (731.077 ms) : 0, 731077
BytebuddyAgent [candidate] (733.075 ms) : 0, 733075
GlobalTracer [baseline] (241.847 ms) : 0, 241847
GlobalTracer [candidate] (242.604 ms) : 0, 242604
AppSec [baseline] (30.442 ms) : 0, 30442
AppSec [candidate] (30.534 ms) : 0, 30534
Debugger [baseline] (6.049 ms) : 0, 6049
Debugger [candidate] (6.083 ms) : 0, 6083
Remote Config [baseline] (648.232 µs) : 0, 648
Remote Config [candidate] (657.77 µs) : 0, 658
Telemetry [baseline] (13.3 ms) : 0, 13300
Telemetry [candidate] (10.612 ms) : 0, 10612
section appsec
crashtracking [baseline] (1.459 ms) : 0, 1459
crashtracking [candidate] (1.461 ms) : 0, 1461
BytebuddyAgent [baseline] (761.131 ms) : 0, 761131
BytebuddyAgent [candidate] (762.207 ms) : 0, 762207
GlobalTracer [baseline] (237.606 ms) : 0, 237606
GlobalTracer [candidate] (237.362 ms) : 0, 237362
AppSec [baseline] (169.169 ms) : 0, 169169
AppSec [candidate] (169.479 ms) : 0, 169479
Debugger [baseline] (7.908 ms) : 0, 7908
Debugger [candidate] (8.722 ms) : 0, 8722
Remote Config [baseline] (628.065 µs) : 0, 628
Remote Config [candidate] (626.557 µs) : 0, 627
Telemetry [baseline] (8.288 ms) : 0, 8288
Telemetry [candidate] (8.425 ms) : 0, 8425
IAST [baseline] (23.926 ms) : 0, 23926
IAST [candidate] (23.963 ms) : 0, 23963
section iast
crashtracking [baseline] (1.432 ms) : 0, 1432
crashtracking [candidate] (1.433 ms) : 0, 1433
BytebuddyAgent [baseline] (850.045 ms) : 0, 850045
BytebuddyAgent [candidate] (847.86 ms) : 0, 847860
GlobalTracer [baseline] (234.151 ms) : 0, 234151
GlobalTracer [candidate] (232.058 ms) : 0, 232058
AppSec [baseline] (29.066 ms) : 0, 29066
AppSec [candidate] (25.692 ms) : 0, 25692
Debugger [baseline] (6.727 ms) : 0, 6727
Debugger [candidate] (7.566 ms) : 0, 7566
Remote Config [baseline] (595.427 µs) : 0, 595
Remote Config [candidate] (582.891 µs) : 0, 583
Telemetry [baseline] (8.119 ms) : 0, 8119
Telemetry [candidate] (8.17 ms) : 0, 8170
IAST [baseline] (26.594 ms) : 0, 26594
IAST [candidate] (30.56 ms) : 0, 30560
section profiling
ProfilingAgent [baseline] (110.279 ms) : 0, 110279
ProfilingAgent [candidate] (108.692 ms) : 0, 108692
crashtracking [baseline] (1.405 ms) : 0, 1405
crashtracking [candidate] (1.399 ms) : 0, 1399
BytebuddyAgent [baseline] (763.681 ms) : 0, 763681
BytebuddyAgent [candidate] (758.245 ms) : 0, 758245
GlobalTracer [baseline] (221.668 ms) : 0, 221668
GlobalTracer [candidate] (220.235 ms) : 0, 220235
AppSec [baseline] (30.681 ms) : 0, 30681
AppSec [candidate] (30.2 ms) : 0, 30200
Debugger [baseline] (6.287 ms) : 0, 6287
Debugger [candidate] (6.281 ms) : 0, 6281
Remote Config [baseline] (721.774 µs) : 0, 722
Remote Config [candidate] (687.577 µs) : 0, 688
Telemetry [baseline] (15.313 ms) : 0, 15313
Telemetry [candidate] (15.437 ms) : 0, 15437
Profiling [baseline] (110.919 ms) : 0, 110919
Profiling [candidate] (109.324 ms) : 0, 109324
LoadParameters
See matching parameters
SummaryFound 1 performance improvements and 3 performance regressions! Performance is the same for 8 metrics, 12 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section baseline
no_agent (37.558 ms) : 37244, 37872
. : milestone, 37558,
appsec (46.111 ms) : 45699, 46523
. : milestone, 46111,
code_origins (44.308 ms) : 43934, 44682
. : milestone, 44308,
iast (43.245 ms) : 42879, 43610
. : milestone, 43245,
profiling (46.686 ms) : 46248, 47125
. : milestone, 46686,
tracing (44.223 ms) : 43852, 44594
. : milestone, 44223,
section candidate
no_agent (35.723 ms) : 35433, 36014
. : milestone, 35723,
appsec (47.676 ms) : 47256, 48096
. : milestone, 47676,
code_origins (47.369 ms) : 46956, 47782
. : milestone, 47369,
iast (44.469 ms) : 44098, 44841
. : milestone, 44469,
profiling (49.184 ms) : 48730, 49639
. : milestone, 49184,
tracing (45.267 ms) : 44884, 45649
. : milestone, 45267,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section baseline
no_agent (4.25 ms) : 4201, 4299
. : milestone, 4250,
iast (9.315 ms) : 9158, 9472
. : milestone, 9315,
iast_FULL (13.703 ms) : 13431, 13976
. : milestone, 13703,
iast_GLOBAL (9.98 ms) : 9803, 10158
. : milestone, 9980,
profiling (8.997 ms) : 8850, 9144
. : milestone, 8997,
tracing (7.513 ms) : 7400, 7627
. : milestone, 7513,
section candidate
no_agent (4.294 ms) : 4237, 4351
. : milestone, 4294,
iast (9.316 ms) : 9163, 9469
. : milestone, 9316,
iast_FULL (14.096 ms) : 13815, 14378
. : milestone, 14096,
iast_GLOBAL (9.921 ms) : 9749, 10094
. : milestone, 9921,
profiling (9.102 ms) : 8960, 9243
. : milestone, 9102,
tracing (7.443 ms) : 7334, 7551
. : milestone, 7443,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section baseline
no_agent (15.67 s) : 15670000, 15670000
. : milestone, 15670000,
appsec (14.599 s) : 14599000, 14599000
. : milestone, 14599000,
iast (18.704 s) : 18704000, 18704000
. : milestone, 18704000,
iast_GLOBAL (18.091 s) : 18091000, 18091000
. : milestone, 18091000,
profiling (15.32 s) : 15320000, 15320000
. : milestone, 15320000,
tracing (14.904 s) : 14904000, 14904000
. : milestone, 14904000,
section candidate
no_agent (15.411 s) : 15411000, 15411000
. : milestone, 15411000,
appsec (15.118 s) : 15118000, 15118000
. : milestone, 15118000,
iast (18.644 s) : 18644000, 18644000
. : milestone, 18644000,
iast_GLOBAL (18.294 s) : 18294000, 18294000
. : milestone, 18294000,
profiling (15.354 s) : 15354000, 15354000
. : milestone, 15354000,
tracing (14.939 s) : 14939000, 14939000
. : milestone, 14939000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.51.1-SNAPSHOT~87eebc46ec, baseline=1.51.1-SNAPSHOT~bd88ddce7a
dateFormat X
axisFormat %s
section baseline
no_agent (1.474 ms) : 1463, 1486
. : milestone, 1474,
appsec (3.583 ms) : 3370, 3797
. : milestone, 3583,
iast (2.209 ms) : 2146, 2272
. : milestone, 2209,
iast_GLOBAL (2.242 ms) : 2179, 2305
. : milestone, 2242,
profiling (2.031 ms) : 1981, 2081
. : milestone, 2031,
tracing (2.016 ms) : 1968, 2065
. : milestone, 2016,
section candidate
no_agent (1.479 ms) : 1467, 1490
. : milestone, 1479,
appsec (3.649 ms) : 3432, 3865
. : milestone, 3649,
iast (2.205 ms) : 2141, 2268
. : milestone, 2205,
iast_GLOBAL (2.233 ms) : 2171, 2296
. : milestone, 2233,
profiling (2.036 ms) : 1986, 2086
. : milestone, 2036,
tracing (2.008 ms) : 1959, 2057
. : milestone, 2008,
|
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.
Good improvement idea!
I left minor comments. I also wonder if we should start creating a dedicated class for meta and points and enjoy it to create a dedicated setResult() and toJson() method.
dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java
Outdated
Show resolved
Hide resolved
dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java
Outdated
Show resolved
Hide resolved
Yes, I have the same feeling. Will work on this idea. |
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.
Looking good thanks! 👍
Nice to see all the synchronized moved into the Telemetry class.
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [redis.clients:jedis](https://github.com/redis/jedis) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `6.0.0` -> `6.1.0` | | [com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.59.2` -> `2.60.0` | | [com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.58.2` -> `2.59.0` | | [com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.58.2` -> `2.59.0` | | [com.google.api:gax](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.68.2` -> `2.69.0` | | [com.squareup.wire](https://github.com/square/wire) | plugin | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-schema](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-runtime](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-reflector](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-moshi-adapter](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-grpc-client](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.squareup.wire:wire-bom](https://github.com/square/wire) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.51.2` -> `1.52.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:regions](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.32.14` -> `2.32.15` | --- ### Release Notes <details> <summary>redis/jedis (redis.clients:jedis)</summary> ### [`v6.1.0`](https://github.com/redis/jedis/releases/tag/v6.1.0): 6.1.0 ### Changes #### 🚀 New Features - Add support for SVS-VAMANA vector indexing ([#​4222](redis/jedis#4222)) - Clarify why new stream entries aren't deleted with XDELEX ([#​4218](redis/jedis#4218)) - Add support for new stream commands ([#​4211](redis/jedis#4211)) - Add Support for New BITOP Operations in Redis 8.2 ([#​4188](redis/jedis#4188)) ([#​4190](redis/jedis#4190)) - Add binary stream support for XREAD and XREADGROUP ([#​3566](redis/jedis#3566)) ([#​4152](redis/jedis#4152)) - Run pipeline in current thread if all the keys on same node ([#​4149](redis/jedis#4149)) #### 🐛 Bug Fixes - Restore binary compatibility of SetParams ([#​4225](redis/jedis#4225)) - Fix memory leak in JedisClusterInfoCache - replica nodes not cleared ([#​4205](redis/jedis#4205)) - Fix:JedisCluster throws NullPointerException when maxAttempts is set to 0 ([#​4186](redis/jedis#4186)) #### 🧰 Maintenance - DOC-5471 time series doc examples ([#​4210](redis/jedis#4210)) - Bump jackson.version from 2.19.1 to 2.19.2 ([#​4208](redis/jedis#4208)) - Fix flaky test ClientCommandsTest.killSkipmeYesNo ([#​4206](redis/jedis#4206)) - Bump org.junit:junit-bom from 5.13.2 to 5.13.3 ([#​4198](redis/jedis#4198)) - Migrate publishing to Maven Central Portal ([#​4199](redis/jedis#4199)) - Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 ([#​4197](redis/jedis#4197)) - Bump org.junit:junit-bom from 5.13.1 to 5.13.2 ([#​4192](redis/jedis#4192)) - DOC-5227 added probabilistic data type examples ([#​4184](redis/jedis#4184)) - Bump jackson.version from 2.19.0 to 2.19.1 ([#​4180](redis/jedis#4180)) - Update test infra to use latest Redis ([#​4179](redis/jedis#4179)) - Bump org.junit:junit-bom from 5.13.0-RC1 to 5.13.1 ([#​4174](redis/jedis#4174)) - Bump org.json:json from [`2025010`](redis/jedis@20250107) to [`2025051`](redis/jedis@20250517) ([#​4171](redis/jedis#4171)) - Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.4.4 to 5.5 ([#​4170](redis/jedis#4170)) - Fix flaky tests in DocumentTest ([#​3617](redis/jedis#3617)) - Add retryable command execution example ([#​3780](redis/jedis#3780)) - Bump jackson.version from 2.18.3 to 2.19.0 ([#​4160](redis/jedis#4160)) - Bump com.google.code.gson:gson from 2.12.1 to 2.13.1 ([#​4161](redis/jedis#4161)) #### Contributors We'd like to thank all the contributors who worked on this release! [@​219sansim](https://github.com/219sansim), [@​YoHanKi](https://github.com/YoHanKi), [@​andy-stark-redis](https://github.com/andy-stark-redis), [@​ggivo](https://github.com/ggivo), [@​jujn](https://github.com/jujn), [@​thachlp](https://github.com/thachlp), [@​uglide](https://github.com/uglide) and [@​xrayw](https://github.com/xrayw) </details> <details> <summary>googleapis/sdk-platform-java (com.google.api.grpc:proto-google-common-protos)</summary> ### [`v2.60.0`](https://github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2600-2025-06-23) ##### Features - handle auto pagination for BigQuery v2 ([#​3829](googleapis/sdk-platform-java#3829)) ([025c84c](googleapis/sdk-platform-java@025c84c)) ##### Dependencies - update google auth library dependencies to v1.37.1 ([#​3846](googleapis/sdk-platform-java#3846)) ([ea1d9e5](googleapis/sdk-platform-java@ea1d9e5)) - update google http client dependencies to v1.47.1 ([#​3848](googleapis/sdk-platform-java#3848)) ([a9a39d7](googleapis/sdk-platform-java@a9a39d7)) </details> <details> <summary>square/wire (com.squareup.wire)</summary> ### [`v5.3.6`](https://github.com/square/wire/blob/HEAD/CHANGELOG.md#Version-536) [Compare Source](square/wire@5.3.5...5.3.6) *2025-08-05* ##### CLI - New CLI option `--ignore_unused_roots_and_prunes` ([#​3354](square/wire#3354)) ##### JVM - Fix: Handle negative hexadecimal in default values ([#​3355](square/wire#3355)) - Optimization: Avoid copying of repeated and map types when mutableTypes are being used ([#​3352](square/wire#3352) by \[Rahul Ravikumar]\[tikurahul]) ##### Swift - Fix: Properly disambiguate OneOf enum if it has the same name as enclosing type ([#​3350](square/wire#3350) by \[Dimitris Koutsogiorgas]\[dnkoutso]) </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.52.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.52.0): 1.52.0 ### Components #### Application Security Management (WAF) - ✨ Only report ASM\_DD, ASM\_DATA and ASM capabilities when AppSec is enabled ([#​9260](DataDog/dd-trace-java#9260) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Fix NPE in AppSecConfigServiceImpl ([#​9165](DataDog/dd-trace-java#9165) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6 ([#​9160](DataDog/dd-trace-java#9160) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Build & Tooling - ✨📖 Automatically register crashtracking via native extensions ([#​8851](DataDog/dd-trace-java#8851) - [@​MattAlp](https://github.com/MattAlp)) #### Configuration at Runtime - ✨ Create activation origin config for telemetry ([#​9064](DataDog/dd-trace-java#9064) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Continuous Integration Visibility - ✨ Update GitLab provided tags ([#​9275](DataDog/dd-trace-java#9275) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Fix base branch SHA usage in GitHub Actions ([#​9257](DataDog/dd-trace-java#9257) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add `ci.job.id` tag ([#​9256](DataDog/dd-trace-java#9256) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add new org to Weaver instrumentation ([#​9235](DataDog/dd-trace-java#9235) - [@​daniel-mohedano](https://github.com/daniel-mohedano) - thanks for the contribution!) - ✨ Improve Git commit info building ([#​9210](DataDog/dd-trace-java#9210) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Update Attempt to Fix to v5 ([#​9145](DataDog/dd-trace-java#9145) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Crash tracking - ✨📖 Automatically register crashtracking via native extensions ([#​8851](DataDog/dd-trace-java#8851) - [@​MattAlp](https://github.com/MattAlp)) #### Data Streams Monitoring - ✨ Reduce DSM CPU overheard ([#​9151](DataDog/dd-trace-java#9151) - [@​kr-igor](https://github.com/kr-igor)) - ✨⚡ DSM optimizations for high throughput scenarios ([#​9137](DataDog/dd-trace-java#9137) - [@​kr-igor](https://github.com/kr-igor)) #### Database Monitoring - 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full propagation mode ([#​9224](DataDog/dd-trace-java#9224) - [@​lu-zhengda](https://github.com/lu-zhengda)) #### Dynamic Instrumentation - 🐛 Add URI in string primitives ([#​9285](DataDog/dd-trace-java#9285) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Increase SourceFile tracking max queue size ([#​9271](DataDog/dd-trace-java#9271) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add capping on SourceFile tracking queue ([#​9245](DataDog/dd-trace-java#9245) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add third-party filtering in SourceFile tracking ([#​9205](DataDog/dd-trace-java#9205) - [@​jpbempel](https://github.com/jpbempel)) #### ML Observability (LLMObs) - ✨ Add methods to capture embedding and retrieval spans ([#​9297](DataDog/dd-trace-java#9297) - [@​nayeem-kamal](https://github.com/nayeem-kamal)) #### Metrics - ✨ Change primary client stats configuration key ([#​9196](DataDog/dd-trace-java#9196) - [@​amarziali](https://github.com/amarziali)) - ✨ Calculate client stats also if the span kind is eligible ([#​9157](DataDog/dd-trace-java#9157) - [@​amarziali](https://github.com/amarziali)) - ✨ Backpropagate peer tags ([#​9144](DataDog/dd-trace-java#9144) - [@​bric3](https://github.com/bric3)) - 🐛 Make client stats reliable in case of downgrade ([#​9136](DataDog/dd-trace-java#9136) - [@​amarziali](https://github.com/amarziali)) #### Platform components - 🐛 Fix VM options parsing from /proc/fs ([#​9255](DataDog/dd-trace-java#9255) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Profiling - ✨ Switch profile compression to zstd default ([#​9293](DataDog/dd-trace-java#9293) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.29.0 ([#​9262](DataDog/dd-trace-java#9262) - [@​zhengyu123](https://github.com/zhengyu123)) - Potential memory leak and race with the JVMTI wallclock sampler by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#234 - Downport async-profiler no-allocation changes by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#245 - Adopt openjdk safefetch by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#246 - Safe fetch 64-bit value and pointer by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#247 - Rebase on Async-Profiler 4.1 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#252 - Patch upstream stackWalker.cpp not to fail on unaligned access by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#218 - Remap thread id to avoid bitmap contention by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#229 - Improve performance using Unsafe to activate/deactivate thread filter by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#230 - Unify context propagation by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#231 - 🐛 Fix the profiler stackdepth setting propagation in recent (22+) Java versions ([#​9130](DataDog/dd-trace-java#9130) - [@​jbachorik](https://github.com/jbachorik)) #### Realtime User Monitoring - ✨ Wrap servlet original PrintWriter on rum injector ([#​9146](DataDog/dd-trace-java#9146) - [@​amarziali](https://github.com/amarziali)) #### Telemetry - ✨ Create activation origin config for telemetry ([#​9064](DataDog/dd-trace-java#9064) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Tracer core - ✨⚡ Reduce span construction overhead by switching to optimized TagMap ([#​8589](DataDog/dd-trace-java#8589) - [@​dougqh](https://github.com/dougqh)) - 🐛 Match Hands Off Config selectors on process\_arguments value ([#​9201](DataDog/dd-trace-java#9201) - [@​paullegranddc](https://github.com/paullegranddc)) - ✨ Move JSON generation to sender thread to improve startup time. ([#​9197](DataDog/dd-trace-java#9197) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - ✨ Improve agent to avoid loading global config on main thread ([#​9190](DataDog/dd-trace-java#9190) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ add injection metadata fields to telemetry forwarder ([#​9185](DataDog/dd-trace-java#9185) - [@​sydney-tung](https://github.com/sydney-tung)) - 🐛 Avoid race conditions on feature discovery during Writer creation ([#​9173](DataDog/dd-trace-java#9173) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Surface potential root cause when agent initialization errors ([#​9170](DataDog/dd-trace-java#9170) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - 💡 Support adding W3C baggage as span tags ([#​9169](DataDog/dd-trace-java#9169) - [@​rachelyangdog](https://github.com/rachelyangdog)) - ✨⚡ Align our default classloader excludes with OTel ([#​9161](DataDog/dd-trace-java#9161) - [@​mcculls](https://github.com/mcculls)) - ✨ Backpropagate container tags hash coming from the info endpoint ([#​9156](DataDog/dd-trace-java#9156) - [@​amarziali](https://github.com/amarziali)) - 🐛 Avoid race conditions and multiple agent discovery feature states ([#​9135](DataDog/dd-trace-java#9135) - [@​amarziali](https://github.com/amarziali)) ### Instrumentations #### AWS SDK instrumentation - ✨ Enhance Service Representation for Serverless ([#​9203](DataDog/dd-trace-java#9203) - [@​zarirhamza](https://github.com/zarirhamza)) #### gRPC instrumentation - 🐛 Add check to prevent injection of repeated GRPC headers ([#​9246](DataDog/dd-trace-java#9246) - [@​mhlidd](https://github.com/mhlidd)) #### JDBC instrumentation - 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full propagation mode ([#​9224](DataDog/dd-trace-java#9224) - [@​lu-zhengda](https://github.com/lu-zhengda)) #### Play Framework instrumentation - 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6 ([#​9160](DataDog/dd-trace-java#9160) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) </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: 9da36329ffa552291a640381780b608ef6513e29
What Does This Do
Move JSON generation to sender thread to improve startup time.
Motivation
Improve agent startup time by offloading JSON generation to separate thread.