[DI] Don't rely on logs track to split JSON keys on periods#5539
[DI] Don't rely on logs track to split JSON keys on periods#5539
Conversation
The logs track will split a JSON key like `debugger.snapshot` into
`debugger: { snapshot }`. This saves a tiny amount of object creation
client side, but makes each installed tracer dependant on this custom
behavior from the logs track.
To allow us more flexibility in the future, better not rely on this
oddity.
Overall package sizeSelf size: 9.24 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.5.0 | 29.83 MB | 29.83 MB | | @datadog/native-appsec | 8.5.1 | 19.26 MB | 19.27 MB | | @datadog/native-iast-taint-tracking | 3.3.0 | 13.77 MB | 13.78 MB | | @datadog/pprof | 5.6.0 | 9.79 MB | 10.16 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.4.0 | 2.77 MB | 5.42 MB | | @datadog/wasm-js-rewriter | 3.1.0 | 2.37 MB | 2.52 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.13.1 | 117.64 kB | 839.26 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.1 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.2 | 53.63 kB | 53.63 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | dc-polyfill | 0.1.6 | 24.56 kB | 24.56 kB | | shell-quote | 1.8.2 | 23.54 kB | 23.54 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #5539 +/- ##
==========================================
- Coverage 79.33% 79.26% -0.07%
==========================================
Files 513 512 -1
Lines 23248 23176 -72
==========================================
- Hits 18443 18371 -72
Misses 4805 4805 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Datadog ReportBranch report: ✅ 0 Failed, 926 Passed, 0 Skipped, 11m 35.11s Total Time |
BenchmarksBenchmark execution time: 2025-04-07 10:58:45 Comparing candidate commit f2de8be in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 946 metrics, 17 unstable metrics. |
The logs track will split a JSON key like `debugger.snapshot` into
`debugger: { snapshot }`. This saves a tiny amount of object creation
client side, but makes each installed tracer dependant on this custom
behavior from the logs track.
To allow us more flexibility in the future, better not rely on this
oddity.
The logs track will split a JSON key like `debugger.snapshot` into
`debugger: { snapshot }`. This saves a tiny amount of object creation
client side, but makes each installed tracer dependant on this custom
behavior from the logs track.
To allow us more flexibility in the future, better not rely on this
oddity.

What does this PR do?
Don't rely on logs track to split JSON keys on periods.
The logs track will split a JSON key like
debugger.snapshotintodebugger: { snapshot }. This saves a tiny amount of object creation client side, but makes each installed tracer dependant on this custom behavior from the logs track.Motivation
To allow us more flexibility in the future, better not rely on this oddity.
Plugin Checklist
Additional Notes