Extend JPS re-implementation to J9 family#8813
Conversation
Co-authored-by: Jaroslav Bachorik <jaroslav.bachorik@datadoghq.com>
Co-authored-by: Brice Dutheil <brice.dutheil@gmail.com>
|
The conflicts on this branch appear due to me forking off of the branch that was used for #8792, which would have had all commits squashed during the merge. |
PerfectSlayer
left a comment
There was a problem hiding this comment.
Interesting changes.
I think I will move this class to a common component soon (I will evolve the cli one) around the capture / analyze of the system / JVM environment.
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 59 metrics, 12 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.02 s) : 0, 1019940
Total [baseline] (10.511 s) : 0, 10511294
Agent [candidate] (1.024 s) : 0, 1023807
Total [candidate] (10.462 s) : 0, 10462028
section appsec
Agent [baseline] (1.167 s) : 0, 1167050
Total [baseline] (10.688 s) : 0, 10687679
Agent [candidate] (1.162 s) : 0, 1161967
Total [candidate] (10.716 s) : 0, 10716460
section iast
Agent [baseline] (1.148 s) : 0, 1147956
Total [baseline] (10.93 s) : 0, 10929985
Agent [candidate] (1.161 s) : 0, 1161078
Total [candidate] (10.865 s) : 0, 10865131
section profiling
Agent [baseline] (1.279 s) : 0, 1278520
Total [baseline] (10.783 s) : 0, 10782700
Agent [candidate] (1.277 s) : 0, 1276729
Total [candidate] (10.782 s) : 0, 10782012
gantt
title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (682.786 ms) : 0, 682786
BytebuddyAgent [candidate] (684.226 ms) : 0, 684226
GlobalTracer [baseline] (239.89 ms) : 0, 239890
GlobalTracer [candidate] (241.379 ms) : 0, 241379
AppSec [baseline] (54.808 ms) : 0, 54808
AppSec [candidate] (54.708 ms) : 0, 54708
Debugger [baseline] (8.348 ms) : 0, 8348
Debugger [candidate] (7.697 ms) : 0, 7697
Remote Config [baseline] (695.158 µs) : 0, 695
Remote Config [candidate] (713.231 µs) : 0, 713
Telemetry [baseline] (9.787 ms) : 0, 9787
Telemetry [candidate] (11.522 ms) : 0, 11522
section appsec
BytebuddyAgent [baseline] (703.756 ms) : 0, 703756
BytebuddyAgent [candidate] (700.645 ms) : 0, 700645
GlobalTracer [baseline] (237.547 ms) : 0, 237547
GlobalTracer [candidate] (236.771 ms) : 0, 236771
IAST [baseline] (21.918 ms) : 0, 21918
IAST [candidate] (21.63 ms) : 0, 21630
AppSec [baseline] (176.977 ms) : 0, 176977
AppSec [candidate] (176.101 ms) : 0, 176101
Debugger [baseline] (6.007 ms) : 0, 6007
Debugger [candidate] (5.968 ms) : 0, 5968
Remote Config [baseline] (628.747 µs) : 0, 629
Remote Config [candidate] (630.507 µs) : 0, 631
Telemetry [baseline] (7.455 ms) : 0, 7455
Telemetry [candidate] (7.444 ms) : 0, 7444
section iast
BytebuddyAgent [baseline] (801.476 ms) : 0, 801476
BytebuddyAgent [candidate] (810.669 ms) : 0, 810669
GlobalTracer [baseline] (230.797 ms) : 0, 230797
GlobalTracer [candidate] (232.357 ms) : 0, 232357
IAST [baseline] (29.648 ms) : 0, 29648
IAST [candidate] (26.223 ms) : 0, 26223
AppSec [baseline] (48.335 ms) : 0, 48335
AppSec [candidate] (52.711 ms) : 0, 52711
Debugger [baseline] (5.879 ms) : 0, 5879
Debugger [candidate] (5.998 ms) : 0, 5998
Remote Config [baseline] (588.469 µs) : 0, 588
Remote Config [candidate] (620.067 µs) : 0, 620
Telemetry [baseline] (7.839 ms) : 0, 7839
Telemetry [candidate] (7.998 ms) : 0, 7998
section profiling
BytebuddyAgent [baseline] (672.859 ms) : 0, 672859
BytebuddyAgent [candidate] (672.279 ms) : 0, 672279
GlobalTracer [baseline] (374.756 ms) : 0, 374756
GlobalTracer [candidate] (374.226 ms) : 0, 374226
AppSec [baseline] (62.01 ms) : 0, 62010
AppSec [candidate] (61.748 ms) : 0, 61748
Debugger [baseline] (6.259 ms) : 0, 6259
Debugger [candidate] (6.28 ms) : 0, 6280
Remote Config [baseline] (650.865 µs) : 0, 651
Remote Config [candidate] (649.801 µs) : 0, 650
Telemetry [baseline] (8.239 ms) : 0, 8239
Telemetry [candidate] (8.186 ms) : 0, 8186
ProfilingAgent [baseline] (103.02 ms) : 0, 103020
ProfilingAgent [candidate] (102.512 ms) : 0, 102512
Profiling [baseline] (103.044 ms) : 0, 103044
Profiling [candidate] (102.536 ms) : 0, 102536
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.022 s) : 0, 1021760
Total [baseline] (8.646 s) : 0, 8646236
Agent [candidate] (1.02 s) : 0, 1020338
Total [candidate] (8.664 s) : 0, 8663780
section iast
Agent [baseline] (1.145 s) : 0, 1145129
Total [baseline] (9.233 s) : 0, 9233049
Agent [candidate] (1.148 s) : 0, 1147591
Total [candidate] (9.239 s) : 0, 9239359
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.148 s) : 0, 1148196
Total [baseline] (9.175 s) : 0, 9174757
Agent [candidate] (1.147 s) : 0, 1146733
Total [candidate] (9.16 s) : 0, 9160251
section iast_TELEMETRY_OFF
Agent [baseline] (1.144 s) : 0, 1144041
Total [baseline] (9.181 s) : 0, 9181024
Agent [candidate] (1.141 s) : 0, 1141197
Total [candidate] (9.197 s) : 0, 9196554
gantt
title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (682.294 ms) : 0, 682294
BytebuddyAgent [candidate] (681.798 ms) : 0, 681798
GlobalTracer [baseline] (239.759 ms) : 0, 239759
GlobalTracer [candidate] (240.032 ms) : 0, 240032
AppSec [baseline] (54.546 ms) : 0, 54546
AppSec [candidate] (54.584 ms) : 0, 54584
Debugger [baseline] (11.214 ms) : 0, 11214
Debugger [candidate] (10.495 ms) : 0, 10495
Remote Config [baseline] (694.838 µs) : 0, 695
Remote Config [candidate] (701.39 µs) : 0, 701
Telemetry [baseline] (9.749 ms) : 0, 9749
Telemetry [candidate] (9.11 ms) : 0, 9110
section iast
BytebuddyAgent [baseline] (799.078 ms) : 0, 799078
BytebuddyAgent [candidate] (801.124 ms) : 0, 801124
GlobalTracer [baseline] (229.786 ms) : 0, 229786
GlobalTracer [candidate] (230.258 ms) : 0, 230258
IAST [baseline] (27.333 ms) : 0, 27333
IAST [candidate] (27.974 ms) : 0, 27974
AppSec [baseline] (51.165 ms) : 0, 51165
AppSec [candidate] (50.215 ms) : 0, 50215
Debugger [baseline] (5.851 ms) : 0, 5851
Debugger [candidate] (5.925 ms) : 0, 5925
Remote Config [baseline] (605.335 µs) : 0, 605
Remote Config [candidate] (603.895 µs) : 0, 604
Telemetry [baseline] (7.849 ms) : 0, 7849
Telemetry [candidate] (7.898 ms) : 0, 7898
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (801.436 ms) : 0, 801436
BytebuddyAgent [candidate] (799.671 ms) : 0, 799671
GlobalTracer [baseline] (230.262 ms) : 0, 230262
GlobalTracer [candidate] (230.3 ms) : 0, 230300
IAST [baseline] (29.29 ms) : 0, 29290
IAST [candidate] (27.917 ms) : 0, 27917
AppSec [baseline] (49.305 ms) : 0, 49305
AppSec [candidate] (51.043 ms) : 0, 51043
Debugger [baseline] (5.854 ms) : 0, 5854
Debugger [candidate] (5.888 ms) : 0, 5888
Remote Config [baseline] (580.223 µs) : 0, 580
Remote Config [candidate] (595.114 µs) : 0, 595
Telemetry [baseline] (7.92 ms) : 0, 7920
Telemetry [candidate] (7.853 ms) : 0, 7853
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (797.721 ms) : 0, 797721
BytebuddyAgent [candidate] (795.526 ms) : 0, 795526
GlobalTracer [baseline] (230.221 ms) : 0, 230221
GlobalTracer [candidate] (229.826 ms) : 0, 229826
IAST [baseline] (23.027 ms) : 0, 23027
IAST [candidate] (23.73 ms) : 0, 23730
AppSec [baseline] (55.192 ms) : 0, 55192
AppSec [candidate] (54.313 ms) : 0, 54313
Debugger [baseline] (5.956 ms) : 0, 5956
Debugger [candidate] (5.942 ms) : 0, 5942
Remote Config [baseline] (602.921 µs) : 0, 603
Remote Config [candidate] (583.698 µs) : 0, 584
Telemetry [baseline] (7.779 ms) : 0, 7779
Telemetry [candidate] (7.805 ms) : 0, 7805
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 18 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section baseline
no_agent (378.462 µs) : 358, 399
. : milestone, 378,
iast (519.951 µs) : 496, 543
. : milestone, 520,
iast_FULL (730.594 µs) : 709, 752
. : milestone, 731,
iast_GLOBAL (578.094 µs) : 556, 601
. : milestone, 578,
iast_HARDCODED_SECRET_DISABLED (515.523 µs) : 493, 538
. : milestone, 516,
iast_INACTIVE (465.947 µs) : 444, 488
. : milestone, 466,
iast_TELEMETRY_OFF (506.251 µs) : 483, 529
. : milestone, 506,
tracing (461.055 µs) : 439, 483
. : milestone, 461,
section candidate
no_agent (382.16 µs) : 362, 402
. : milestone, 382,
iast (529.076 µs) : 506, 553
. : milestone, 529,
iast_FULL (734.374 µs) : 713, 756
. : milestone, 734,
iast_GLOBAL (556.827 µs) : 535, 579
. : milestone, 557,
iast_HARDCODED_SECRET_DISABLED (528.063 µs) : 505, 552
. : milestone, 528,
iast_INACTIVE (466.776 µs) : 445, 489
. : milestone, 467,
iast_TELEMETRY_OFF (521.013 µs) : 498, 544
. : milestone, 521,
tracing (462.631 µs) : 440, 485
. : milestone, 463,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section baseline
no_agent (1.352 ms) : 1332, 1372
. : milestone, 1352,
appsec (1.747 ms) : 1724, 1771
. : milestone, 1747,
appsec_no_iast (1.75 ms) : 1726, 1773
. : milestone, 1750,
code_origins (1.68 ms) : 1653, 1707
. : milestone, 1680,
iast (1.515 ms) : 1490, 1540
. : milestone, 1515,
profiling (1.507 ms) : 1484, 1530
. : milestone, 1507,
tracing (1.496 ms) : 1473, 1519
. : milestone, 1496,
section candidate
no_agent (1.367 ms) : 1347, 1387
. : milestone, 1367,
appsec (1.722 ms) : 1699, 1745
. : milestone, 1722,
appsec_no_iast (1.731 ms) : 1708, 1754
. : milestone, 1731,
code_origins (1.677 ms) : 1651, 1703
. : milestone, 1677,
iast (1.525 ms) : 1501, 1549
. : milestone, 1525,
profiling (1.529 ms) : 1505, 1553
. : milestone, 1529,
tracing (1.512 ms) : 1488, 1536
. : milestone, 1512,
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.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section baseline
no_agent (14.701 s) : 14701000, 14701000
. : milestone, 14701000,
appsec (14.945 s) : 14945000, 14945000
. : milestone, 14945000,
iast (19.04 s) : 19040000, 19040000
. : milestone, 19040000,
iast_GLOBAL (18.182 s) : 18182000, 18182000
. : milestone, 18182000,
profiling (15.177 s) : 15177000, 15177000
. : milestone, 15177000,
tracing (15.129 s) : 15129000, 15129000
. : milestone, 15129000,
section candidate
no_agent (15.43 s) : 15430000, 15430000
. : milestone, 15430000,
appsec (14.966 s) : 14966000, 14966000
. : milestone, 14966000,
iast (18.944 s) : 18944000, 18944000
. : milestone, 18944000,
iast_GLOBAL (18.048 s) : 18048000, 18048000
. : milestone, 18048000,
profiling (15.11 s) : 15110000, 15110000
. : milestone, 15110000,
tracing (14.993 s) : 14993000, 14993000
. : milestone, 14993000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~b69c69d836, baseline=1.50.0-SNAPSHOT~6459b5ec16
dateFormat X
axisFormat %s
section baseline
no_agent (1.474 ms) : 1463, 1486
. : milestone, 1474,
appsec (2.4 ms) : 2351, 2449
. : milestone, 2400,
iast (2.176 ms) : 2114, 2238
. : milestone, 2176,
iast_GLOBAL (2.218 ms) : 2156, 2280
. : milestone, 2218,
profiling (2.022 ms) : 1972, 2071
. : milestone, 2022,
tracing (2.006 ms) : 1958, 2054
. : milestone, 2006,
section candidate
no_agent (1.471 ms) : 1460, 1483
. : milestone, 1471,
appsec (2.405 ms) : 2356, 2454
. : milestone, 2405,
iast (2.184 ms) : 2123, 2246
. : milestone, 2184,
iast_GLOBAL (2.229 ms) : 2167, 2292
. : milestone, 2229,
profiling (2.5 ms) : 2318, 2683
. : milestone, 2500,
tracing (2.003 ms) : 1955, 2051
. : milestone, 2003,
|
jbachorik
left a comment
There was a problem hiding this comment.
Approved, assuming the Integer.parseInt is gone.
| 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
This adds support for obtaining running Java process IDs for the J9 family of JDKs, which use a directory other than Hotspot's
hsperfdata_USER.Motivation
#8792 was designed with Hotspot in mind. A follow-up dive into J9's source confirmed our suspicions that their implementation diverges & requires additional logic.
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any usefull labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: PROF-11787