- Notifications
You must be signed in to change notification settings - Fork 320
Add Exception probe custom instrumentation #8230
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
Debugger benchmarksParameters
See matching parameters
SummaryFound 4 performance improvements and 0 performance regressions! Performance is the same for 5 metrics, 6 unstable metrics.
See unchanged results
Request duration reports for reportsgantt title reports - request duration [CI 0.99] : candidate=None, baseline=None dateFormat X axisFormat %s section baseline noprobe (326.46 µs) : 256, 397 . : milestone, 326, basic (314.242 µs) : 301, 327 . : milestone, 314, loop (10.513 ms) : 10409, 10617 . : milestone, 10513, section candidate noprobe (304.085 µs) : 281, 327 . : milestone, 304, basic (310.483 µs) : 302, 319 . : milestone, 310, loop (10.146 ms) : 10115, 10176 . : milestone, 10146,
|
BenchmarksStartupParameters
See matching parameters
SummaryFound 1 performance improvements and 7 performance regressions! Performance is the same for 50 metrics, 5 unstable metrics.
Startup time reports for petclinicgantt title petclinic - global startup overhead: candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section tracing Agent [baseline] (1.037 s) : 0, 1037294 Total [baseline] (10.478 s) : 0, 10478480 Agent [candidate] (1.056 s) : 0, 1056490 Total [candidate] (10.469 s) : 0, 10468746 section appsec Agent [baseline] (1.185 s) : 0, 1184601 Total [baseline] (10.774 s) : 0, 10774063 Agent [candidate] (1.187 s) : 0, 1187134 Total [candidate] (10.779 s) : 0, 10778613 section iast Agent [baseline] (1.166 s) : 0, 1166208 Total [baseline] (10.975 s) : 0, 10974755 Agent [candidate] (1.181 s) : 0, 1180651 Total [candidate] (10.918 s) : 0, 10917701 section profiling Agent [baseline] (1.26 s) : 0, 1259810 Total [baseline] (10.882 s) : 0, 10881711 Agent [candidate] (1.254 s) : 0, 1253684 Total [candidate] (10.767 s) : 0, 10767385
gantt title petclinic - break down per module: candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (714.542 ms) : 0, 714542 BytebuddyAgent [candidate] (714.174 ms) : 0, 714174 GlobalTracer [baseline] (240.235 ms) : 0, 240235 GlobalTracer [candidate] (256.201 ms) : 0, 256201 AppSec [baseline] (55.451 ms) : 0, 55451 AppSec [candidate] (56.985 ms) : 0, 56985 Remote Config [baseline] (721.923 µs) : 0, 722 Remote Config [candidate] (751.513 µs) : 0, 752 Telemetry [baseline] (11.41 ms) : 0, 11410 Telemetry [candidate] (13.37 ms) : 0, 13370 section appsec BytebuddyAgent [baseline] (736.82 ms) : 0, 736820 BytebuddyAgent [candidate] (730.95 ms) : 0, 730950 GlobalTracer [baseline] (237.437 ms) : 0, 237437 GlobalTracer [candidate] (252.422 ms) : 0, 252422 AppSec [baseline] (176.357 ms) : 0, 176357 AppSec [candidate] (170.387 ms) : 0, 170387 Remote Config [baseline] (665.134 µs) : 0, 665 Remote Config [candidate] (658.132 µs) : 0, 658 Telemetry [baseline] (8.513 ms) : 0, 8513 Telemetry [candidate] (8.09 ms) : 0, 8090 IAST [baseline] (19.544 ms) : 0, 19544 IAST [candidate] (19.379 ms) : 0, 19379 section iast BytebuddyAgent [baseline] (832.826 ms) : 0, 832826 BytebuddyAgent [candidate] (830.651 ms) : 0, 830651 GlobalTracer [baseline] (229.456 ms) : 0, 229456 GlobalTracer [candidate] (245.915 ms) : 0, 245915 AppSec [baseline] (58.222 ms) : 0, 58222 AppSec [candidate] (58.165 ms) : 0, 58165 Remote Config [baseline] (651.844 µs) : 0, 652 Remote Config [candidate] (645.831 µs) : 0, 646 Telemetry [baseline] (8.75 ms) : 0, 8750 Telemetry [candidate] (8.685 ms) : 0, 8685 IAST [baseline] (21.309 ms) : 0, 21309 IAST [candidate] (21.581 ms) : 0, 21581 section profiling ProfilingAgent [baseline] (95.881 ms) : 0, 95881 ProfilingAgent [candidate] (95.405 ms) : 0, 95405 BytebuddyAgent [baseline] (708.026 ms) : 0, 708026 BytebuddyAgent [candidate] (703.968 ms) : 0, 703968 GlobalTracer [baseline] (349.246 ms) : 0, 349246 GlobalTracer [candidate] (348.95 ms) : 0, 348950 AppSec [baseline] (54.911 ms) : 0, 54911 AppSec [candidate] (54.022 ms) : 0, 54022 Remote Config [baseline] (706.661 µs) : 0, 707 Remote Config [candidate] (710.508 µs) : 0, 711 Telemetry [baseline] (8.898 ms) : 0, 8898 Telemetry [candidate] (8.72 ms) : 0, 8720 Profiling [baseline] (95.905 ms) : 0, 95905 Profiling [candidate] (95.43 ms) : 0, 95430 Startup time reports for insecure-bankgantt title insecure-bank - global startup overhead: candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section tracing Agent [baseline] (1.036 s) : 0, 1035816 Total [baseline] (8.627 s) : 0, 8626569 Agent [candidate] (1.06 s) : 0, 1059977 Total [candidate] (8.671 s) : 0, 8671392 section iast Agent [baseline] (1.169 s) : 0, 1168999 Total [baseline] (9.188 s) : 0, 9187730 Agent [candidate] (1.195 s) : 0, 1194858 Total [candidate] (9.208 s) : 0, 9207562 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.169 s) : 0, 1169101 Total [baseline] (9.157 s) : 0, 9157137 Agent [candidate] (1.182 s) : 0, 1181532 Total [candidate] (9.18 s) : 0, 9180282 section iast_TELEMETRY_OFF Agent [baseline] (1.157 s) : 0, 1157459 Total [baseline] (9.175 s) : 0, 9175041 Agent [candidate] (1.178 s) : 0, 1178107 Total [candidate] (9.189 s) : 0, 9188602
gantt title insecure-bank - break down per module: candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (714.979 ms) : 0, 714979 BytebuddyAgent [candidate] (718.336 ms) : 0, 718336 GlobalTracer [baseline] (238.139 ms) : 0, 238139 GlobalTracer [candidate] (256.631 ms) : 0, 256631 AppSec [baseline] (55.013 ms) : 0, 55013 AppSec [candidate] (55.56 ms) : 0, 55560 Remote Config [baseline] (713.537 µs) : 0, 714 Remote Config [candidate] (737.492 µs) : 0, 737 Telemetry [baseline] (11.992 ms) : 0, 11992 Telemetry [candidate] (13.612 ms) : 0, 13612 section iast BytebuddyAgent [baseline] (836.434 ms) : 0, 836434 BytebuddyAgent [candidate] (841.102 ms) : 0, 841102 GlobalTracer [baseline] (228.759 ms) : 0, 228759 GlobalTracer [candidate] (248.595 ms) : 0, 248595 AppSec [baseline] (58.046 ms) : 0, 58046 AppSec [candidate] (58.491 ms) : 0, 58491 IAST [baseline] (21.211 ms) : 0, 21211 IAST [candidate] (21.854 ms) : 0, 21854 Remote Config [baseline] (650.22 µs) : 0, 650 Remote Config [candidate] (698.156 µs) : 0, 698 Telemetry [baseline] (8.813 ms) : 0, 8813 Telemetry [candidate] (8.937 ms) : 0, 8937 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (835.715 ms) : 0, 835715 BytebuddyAgent [candidate] (831.494 ms) : 0, 831494 GlobalTracer [baseline] (229.377 ms) : 0, 229377 GlobalTracer [candidate] (245.833 ms) : 0, 245833 AppSec [baseline] (58.158 ms) : 0, 58158 AppSec [candidate] (58.151 ms) : 0, 58151 IAST [baseline] (21.438 ms) : 0, 21438 IAST [candidate] (21.549 ms) : 0, 21549 Remote Config [baseline] (651.386 µs) : 0, 651 Remote Config [candidate] (661.714 µs) : 0, 662 Telemetry [baseline] (8.756 ms) : 0, 8756 Telemetry [candidate] (8.787 ms) : 0, 8787 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (827.223 ms) : 0, 827223 BytebuddyAgent [candidate] (828.858 ms) : 0, 828858 GlobalTracer [baseline] (227.836 ms) : 0, 227836 GlobalTracer [candidate] (245.933 ms) : 0, 245933 AppSec [baseline] (57.575 ms) : 0, 57575 AppSec [candidate] (58.057 ms) : 0, 58057 IAST [baseline] (20.76 ms) : 0, 20760 IAST [candidate] (21.005 ms) : 0, 21005 Remote Config [baseline] (651.788 µs) : 0, 652 Remote Config [candidate] (661.084 µs) : 0, 661 Telemetry [baseline] (8.482 ms) : 0, 8482 Telemetry [candidate] (8.657 ms) : 0, 8657 LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 17 unstable metrics. Request duration reports for insecure-bankgantt title insecure-bank - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section baseline no_agent (382.175 µs) : 362, 402 . : milestone, 382, iast (507.449 µs) : 484, 531 . : milestone, 507, iast_FULL (736.259 µs) : 714, 759 . : milestone, 736, iast_GLOBAL (556.754 µs) : 533, 580 . : milestone, 557, iast_HARDCODED_SECRET_DISABLED (504.115 µs) : 481, 527 . : milestone, 504, iast_INACTIVE (455.584 µs) : 434, 477 . : milestone, 456, iast_TELEMETRY_OFF (495.78 µs) : 473, 519 . : milestone, 496, tracing (449.445 µs) : 429, 470 . : milestone, 449, section candidate no_agent (378.703 µs) : 358, 399 . : milestone, 379, iast (502.59 µs) : 481, 524 . : milestone, 503, iast_FULL (742.592 µs) : 721, 764 . : milestone, 743, iast_GLOBAL (550.574 µs) : 529, 573 . : milestone, 551, iast_HARDCODED_SECRET_DISABLED (503.402 µs) : 482, 525 . : milestone, 503, iast_INACTIVE (462.544 µs) : 440, 485 . : milestone, 463, iast_TELEMETRY_OFF (496.184 µs) : 474, 518 . : milestone, 496, tracing (449.977 µs) : 429, 471 . : milestone, 450,
Request duration reports for petclinicgantt title petclinic - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section baseline no_agent (1.349 ms) : 1330, 1369 . : milestone, 1349, appsec (1.765 ms) : 1742, 1789 . : milestone, 1765, appsec_no_iast (1.756 ms) : 1731, 1781 . : milestone, 1756, iast (1.49 ms) : 1466, 1513 . : milestone, 1490, profiling (1.51 ms) : 1486, 1533 . : milestone, 1510, tracing (1.503 ms) : 1478, 1528 . : milestone, 1503, section candidate no_agent (1.35 ms) : 1331, 1370 . : milestone, 1350, appsec (1.751 ms) : 1726, 1777 . : milestone, 1751, appsec_no_iast (1.767 ms) : 1742, 1792 . : milestone, 1767, iast (1.524 ms) : 1500, 1548 . : milestone, 1524, profiling (1.523 ms) : 1500, 1546 . : milestone, 1523, tracing (1.502 ms) : 1478, 1526 . : milestone, 1502,
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 tomcatgantt title tomcat - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section baseline no_agent (1.473 ms) : 1461, 1484 . : milestone, 1473, appsec (2.361 ms) : 2318, 2404 . : milestone, 2361, iast (2.112 ms) : 2058, 2167 . : milestone, 2112, iast_GLOBAL (2.153 ms) : 2097, 2208 . : milestone, 2153, profiling (1.975 ms) : 1930, 2019 . : milestone, 1975, tracing (1.954 ms) : 1911, 1996 . : milestone, 1954, section candidate no_agent (1.477 ms) : 1465, 1488 . : milestone, 1477, appsec (2.365 ms) : 2321, 2408 . : milestone, 2365, iast (2.103 ms) : 2048, 2157 . : milestone, 2103, iast_GLOBAL (2.152 ms) : 2097, 2207 . : milestone, 2152, profiling (1.988 ms) : 1943, 2033 . : milestone, 1988, tracing (1.957 ms) : 1915, 2000 . : milestone, 1957,
Execution time for biojavagantt title biojava - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~abc89dcb05, baseline=1.46.0-SNAPSHOT~64e6e864bc dateFormat X axisFormat %s section baseline no_agent (15.511 s) : 15511000, 15511000 . : milestone, 15511000, appsec (14.851 s) : 14851000, 14851000 . : milestone, 14851000, iast (19.003 s) : 19003000, 19003000 . : milestone, 19003000, iast_GLOBAL (17.856 s) : 17856000, 17856000 . : milestone, 17856000, profiling (15.287 s) : 15287000, 15287000 . : milestone, 15287000, tracing (14.751 s) : 14751000, 14751000 . : milestone, 14751000, section candidate no_agent (15.002 s) : 15002000, 15002000 . : milestone, 15002000, appsec (15.204 s) : 15204000, 15204000 . : milestone, 15204000, iast (18.985 s) : 18985000, 18985000 . : milestone, 18985000, iast_GLOBAL (18.179 s) : 18179000, 18179000 . : milestone, 18179000, profiling (15.047 s) : 15047000, 15047000 . : milestone, 15047000, tracing (14.868 s) : 14868000, 14868000 . : milestone, 14868000,
|
| ExceptionProbeStatus exceptionStatus; | ||
| if (status instanceof ExceptionProbeStatus) { | ||
| exceptionStatus = (ExceptionProbeStatus) status; | ||
| exceptionStatus.setCapture(false); |
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.
why set false here?
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.
because by default the status is capture true (for the entry part) then when evaluating it is turned to false until it reached the end of evaluation and this is the exception that we need to report
When there is only exception probes at a specific ode location we strip down the instrumentation to only capture values inside the catch (when an exception happens). this way, in normal execution no overhead is pay for an exception probe
7ab6064 to abc89dc Compare | Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.25.4` -> `2.26.0` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.45.2` -> `1.46.0` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.45.2` -> `1.46.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | --- ### Release Notes <details> <summary>googleapis/java-datastore (com.google.cloud:google-cloud-datastore)</summary> ### [`v2.26.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2260-2025-01-29) ##### Features - Add firestoreInDatastoreMode for datastore emulator ([#​1698](googleapis/java-datastore#1698)) ([50f106d](googleapis/java-datastore@50f106d)) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0 ([#​1725](googleapis/java-datastore#1725)) ([1cbaf22](googleapis/java-datastore@1cbaf22)) </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.46.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.46.0): 1.46.0 ##### Breaking Changes > \[!WARNING] > jnr-unixsocket is now an external dependency of dd-trace-ot and must be included when deploying dd-trace-ot. > \[!NOTE] > The API `TracerScope.setAsync(boolean)`, used to manually control asynchronous span propagation, does no more apply to the scope instance but to the active span scope. ##### Components ##### Application Security Management (IAST) - 🐛 Fix String.replace instrumentation for IAST ([#​8281](DataDog/dd-trace-java#8281) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Apply the standard nomenclature to the stacktrace configs ([#​8244](DataDog/dd-trace-java#8244) - [@​jandro996](https://github.com/jandro996)) - 🐛 Exclude false positive weak randomness ([#​8232](DataDog/dd-trace-java#8232) - [@​jandro996](https://github.com/jandro996)) - ✨ Propagation of translateEscapes of String class ([#​8186](DataDog/dd-trace-java#8186) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Add security control metrics ([#​8175](DataDog/dd-trace-java#8175) - [@​jandro996](https://github.com/jandro996)) - ✨ Increase IAST propagation to StringBuffer setLength ([#​8128](DataDog/dd-trace-java#8128) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Add IAST taint tracking for DB values ([#​8072](DataDog/dd-trace-java#8072) - [@​Mariovido](https://github.com/Mariovido)) ##### Application Security Management (WAF) - 🐛 Prevents a NPE when there is no subscriber for user events ([#​8258](DataDog/dd-trace-java#8258) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Apply the standard nomenclature to the stacktrace configs ([#​8244](DataDog/dd-trace-java#8244) - [@​jandro996](https://github.com/jandro996)) - 🐛 Ensure cached subscriptions are cleared on reconfiguration via RC ([#​8229](DataDog/dd-trace-java#8229) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add support for session tracking in Vertx ([#​8167](DataDog/dd-trace-java#8167) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Create span tag: \_dd.appsec.rasp.timeout ([#​8269](DataDog/dd-trace-java#8269) - [@​Mariovido](https://github.com/Mariovido)) ##### Build & Tooling - 🐛 Ensure shaded helpers have unique names when injected into class-loaders ([#​8192](DataDog/dd-trace-java#8192) - [@​mcculls](https://github.com/mcculls)) ##### Configuration at Runtime - 🐛 Remove filtering of `DD_SERVICE` and `DD_ENV` from the tracer ([#​8176](DataDog/dd-trace-java#8176) - [@​mhlidd](https://github.com/mhlidd)) ##### Continuous Integration Visibility - 🧹 Generalize TestRetryPolicy to TestExecutionPolicy ([#​8302](DataDog/dd-trace-java#8302) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Parallelize CI Visibility settings requests ([#​8299](DataDog/dd-trace-java#8299) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Generalize test retry logic ([#​8289](DataDog/dd-trace-java#8289) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Generalize tests skipping logic ([#​8288](DataDog/dd-trace-java#8288) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Remove skip and shouldBeSkipped methods from TestEventsHandler in favor of isSkippable ([#​8286](DataDog/dd-trace-java#8286) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨⚡ Optimize Git repository information computation ([#​8270](DataDog/dd-trace-java#8270) - [@​dougqh](https://github.com/dougqh)) - ✨ Always request known tests from the backend ([#​8268](DataDog/dd-trace-java#8268) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Fix NPE when trying to get retry analyzer in Test NG ([#​8253](DataDog/dd-trace-java#8253) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Set test framework and test framework version tags atomically ([#​8252](DataDog/dd-trace-java#8252) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add debug logging to Android Gradle module layout logic ([#​8251](DataDog/dd-trace-java#8251) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix source and destination folders computation for Android Gradle projects ([#​8190](DataDog/dd-trace-java#8190) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add basic Scala Weaver sbt support ([#​8189](DataDog/dd-trace-java#8189) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement impacted tests detection ([#​8188](DataDog/dd-trace-java#8188) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) ##### Data Streams Monitoring - ✨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema ([#​8201](DataDog/dd-trace-java#8201) - [@​vandonr](https://github.com/vandonr)) ##### Database Monitoring - Add peer service tag in dbm sql commenter ([#​7913](DataDog/dd-trace-java#7913) - [@​jordan-wong](https://github.com/jordan-wong)) ##### Dynamic Instrumentation - ✨ Add support for SymDB to scan directories ([#​8306](DataDog/dd-trace-java#8306) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add SymDB report for any jar scanning failures ([#​8300](DataDog/dd-trace-java#8300) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Use two budgets depending on type ([#​8283](DataDog/dd-trace-java#8283) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Institute a 10 snapshot per probe per trace budget ([#​8277](DataDog/dd-trace-java#8277) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Avoid double snapshots for Exception Replay ([#​8273](DataDog/dd-trace-java#8273) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Simplify code origins. Separate out snapshot generation. ([#​8263](DataDog/dd-trace-java#8263) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add Exception probe custom instrumentation ([#​8230](DataDog/dd-trace-java#8230) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Enhance log probes to honor debug session tags ([#​8215](DataDog/dd-trace-java#8215) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Don't redact env tokens from debugger probe snapshots ([#​8211](DataDog/dd-trace-java#8211) - [@​watson](https://github.com/watson)) - ✨⚡ Move Trace/SpanId capture at commit time ([#​8184](DataDog/dd-trace-java#8184) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Capture values at entry for method probe ([#​8169](DataDog/dd-trace-java#8169) - [@​jpbempel](https://github.com/jpbempel)) ##### JMX fetch - 🐛 Mute JMXFetch Shutdown in progress error ([#​8068](DataDog/dd-trace-java#8068) - [@​ygree](https://github.com/ygree)) ##### OpenTracing -⚠️ 🧹 Make jnr-unixsocket an explicit dependency of dd-trace-ot ([#​8307](DataDog/dd-trace-java#8307) - [@​mcculls](https://github.com/mcculls)) ##### Profiling - 🐛 Avoid unsupported API call for creating folders on windows ([#​8304](DataDog/dd-trace-java#8304) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Tag profiles for serverless ([#​8279](DataDog/dd-trace-java#8279) - [@​jbachorik](https://github.com/jbachorik)) - ✨ add queue type and length to queue events ([#​8242](DataDog/dd-trace-java#8242) - [@​richardstartin](https://github.com/richardstartin)) - 🐛 TempLocationManager Fixes and Improvements ([#​8191](DataDog/dd-trace-java#8191) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.18.0 ([#​8173](DataDog/dd-trace-java#8173) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Report profiler initialization and configuration errors to telemetry ([#​8171](DataDog/dd-trace-java#8171) - [@​jbachorik](https://github.com/jbachorik)) ##### Telemetry - ✨ Add pending traces report in tracer flares ([#​8053](DataDog/dd-trace-java#8053) - [@​mhlidd](https://github.com/mhlidd)) ##### Testing - ✨ Test http server requests in parallel ([#​8222](DataDog/dd-trace-java#8222) - [@​amarziali](https://github.com/amarziali)) ##### Trace context propagation - ✨ Add non default propagator registration ([#​8310](DataDog/dd-trace-java#8310) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Tracer core - ✨ Probe for existence of IBMSASL or ACCP security providers ([#​8276](DataDog/dd-trace-java#8276) - [@​mcculls](https://github.com/mcculls)) - ✨⚡ Overhead improvement to agent feedback based sampling ([#​8265](DataDog/dd-trace-java#8265) - [@​dougqh](https://github.com/dougqh)) - 🧹 Move async propagation API from scope to tracer ([#​8231](DataDog/dd-trace-java#8231) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Introduce context propagation API ([#​8161](DataDog/dd-trace-java#8161) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨🧪 Use env-entry to add tags per webapp deployment ([#​8138](DataDog/dd-trace-java#8138) - [@​amarziali](https://github.com/amarziali)) - ✨ Introduce context helpers API ([#​8134](DataDog/dd-trace-java#8134) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Support IPv6 values for `DD_AGENT_HOST` and `DD_TRACE_AGENT_URL` ([#​7984](DataDog/dd-trace-java#7984) - [@​mhlidd](https://github.com/mhlidd)) ##### Instrumentations ##### Apache HttpComponents - 🐛 Properly finish spans and support latest apache httpclient5 ([#​8272](DataDog/dd-trace-java#8272) - [@​amarziali](https://github.com/amarziali)) ##### AWS Lambda instrumentation - 🐛 Properly capture lambda payloads for all handler types. ([#​8264](DataDog/dd-trace-java#8264) - [@​purple4reina](https://github.com/purple4reina)) ##### AWS S3 instrumentation - 💡 Create S3 instrumentation + add span pointers ([#​8075](DataDog/dd-trace-java#8075) - [@​nhulston](https://github.com/nhulston)) ##### AWS SDK instrumentation - 🐛 Revert "Add avoid double instrumenting lambda non-streaming handlers." ([#​8247](DataDog/dd-trace-java#8247) - [@​nhulston](https://github.com/nhulston)) ##### Cassandra - ✨ Allow extracting keyspace from statement result ([#​8239](DataDog/dd-trace-java#8239) - [@​amarziali](https://github.com/amarziali)) ##### Core Java language instrumentation - ✨ Propagation of translateEscapes of String class ([#​8186](DataDog/dd-trace-java#8186) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Eclipse Vert.x instrumentation - 🐛 Fix vertx worker propagation and error handling ([#​8237](DataDog/dd-trace-java#8237) - [@​amarziali](https://github.com/amarziali)) - ✨ Support vertx 5 ([#​8220](DataDog/dd-trace-java#8220) - [@​amarziali](https://github.com/amarziali)) - ✨ Add support for session tracking in Vertx ([#​8167](DataDog/dd-trace-java#8167) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) ##### Kafka instrumentation - 🐛 Prevent possible NPE calculating Kafka record header size ([#​8292](DataDog/dd-trace-java#8292) - [@​ygree](https://github.com/ygree)) ##### Mule instrumentation - 🐛 Fix crash using Mule with JPMS ([#​8187](DataDog/dd-trace-java#8187) - [@​amarziali](https://github.com/amarziali)) ##### Protocol Buffer instrumentation - ✨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema ([#​8201](DataDog/dd-trace-java#8201) - [@​vandonr](https://github.com/vandonr)) ##### Spring instrumentation - 🐛 Preserve getQualifier from spring scheduling runnables ([#​8293](DataDog/dd-trace-java#8293) - [@​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**: Whenever PR becomes conflicted, 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: bb09d47e4eed77a003f630273b4d0a84003eb899
What Does This Do
When there is only exception probes at a specific ode location we strip down the instrumentation to only capture values inside the catch (when an exception happens). this way, in normal execution no overhead is pay for an exception probe
Motivation
Decrease overhead for exception probes when no exception
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: DEBUG-3348