-
Notifications
You must be signed in to change notification settings - Fork 315
Add Otel Metrics configuration keys #9868
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
base: master
Are you sure you want to change the base?
Conversation
|
🎯 Code Coverage 🔗 Commit SHA: dd223a3 | Docs | Datadog PR Page | Was this helpful? Give us feedback! |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 54 metrics, 11 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.033 s) : 0, 1032801
Total [baseline] (10.906 s) : 0, 10906343
Agent [candidate] (1.03 s) : 0, 1029650
Total [candidate] (10.816 s) : 0, 10816008
section appsec
Agent [baseline] (1.201 s) : 0, 1201288
Total [baseline] (10.88 s) : 0, 10880289
Agent [candidate] (1.213 s) : 0, 1212731
Total [candidate] (10.971 s) : 0, 10970500
section iast
Agent [baseline] (1.163 s) : 0, 1162692
Total [baseline] (11.108 s) : 0, 11107817
Agent [candidate] (1.171 s) : 0, 1171424
Total [candidate] (11.144 s) : 0, 11143937
section profiling
Agent [baseline] (1.171 s) : 0, 1171280
Total [baseline] (10.804 s) : 0, 10804077
Agent [candidate] (1.172 s) : 0, 1172139
Total [candidate] (10.861 s) : 0, 10860706
gantt
title petclinic - break down per module: candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.479 ms) : 0, 1479
crashtracking [candidate] (1.464 ms) : 0, 1464
BytebuddyAgent [baseline] (704.184 ms) : 0, 704184
BytebuddyAgent [candidate] (702.067 ms) : 0, 702067
GlobalTracer [baseline] (245.381 ms) : 0, 245381
GlobalTracer [candidate] (244.692 ms) : 0, 244692
AppSec [baseline] (32.439 ms) : 0, 32439
AppSec [candidate] (32.347 ms) : 0, 32347
Debugger [baseline] (6.391 ms) : 0, 6391
Debugger [candidate] (6.465 ms) : 0, 6465
Remote Config [baseline] (685.31 µs) : 0, 685
Remote Config [candidate] (682.306 µs) : 0, 682
Telemetry [baseline] (14.443 ms) : 0, 14443
Telemetry [candidate] (15.088 ms) : 0, 15088
Flare Poller [baseline] (6.571 ms) : 0, 6571
Flare Poller [candidate] (5.717 ms) : 0, 5717
section appsec
crashtracking [baseline] (1.467 ms) : 0, 1467
crashtracking [candidate] (1.46 ms) : 0, 1460
BytebuddyAgent [baseline] (725.364 ms) : 0, 725364
BytebuddyAgent [candidate] (732.076 ms) : 0, 732076
GlobalTracer [baseline] (235.447 ms) : 0, 235447
GlobalTracer [candidate] (238.167 ms) : 0, 238167
IAST [baseline] (25.018 ms) : 0, 25018
IAST [candidate] (25.369 ms) : 0, 25369
AppSec [baseline] (173.9 ms) : 0, 173900
AppSec [candidate] (175.298 ms) : 0, 175298
Debugger [baseline] (5.919 ms) : 0, 5919
Debugger [candidate] (6.015 ms) : 0, 6015
Remote Config [baseline] (637.854 µs) : 0, 638
Remote Config [candidate] (632.742 µs) : 0, 633
Telemetry [baseline] (8.407 ms) : 0, 8407
Telemetry [candidate] (8.569 ms) : 0, 8569
Flare Poller [baseline] (3.918 ms) : 0, 3918
Flare Poller [candidate] (3.925 ms) : 0, 3925
section iast
crashtracking [baseline] (1.477 ms) : 0, 1477
crashtracking [candidate] (1.476 ms) : 0, 1476
BytebuddyAgent [baseline] (824.701 ms) : 0, 824701
BytebuddyAgent [candidate] (832.105 ms) : 0, 832105
GlobalTracer [baseline] (233.699 ms) : 0, 233699
GlobalTracer [candidate] (235.343 ms) : 0, 235343
IAST [baseline] (31.763 ms) : 0, 31763
IAST [candidate] (32.57 ms) : 0, 32570
AppSec [baseline] (30.185 ms) : 0, 30185
AppSec [candidate] (29.072 ms) : 0, 29072
Debugger [baseline] (6.192 ms) : 0, 6192
Debugger [candidate] (6.111 ms) : 0, 6111
Remote Config [baseline] (611.897 µs) : 0, 612
Remote Config [candidate] (606.637 µs) : 0, 607
Telemetry [baseline] (8.545 ms) : 0, 8545
Telemetry [candidate] (8.428 ms) : 0, 8428
Flare Poller [baseline] (4.19 ms) : 0, 4190
Flare Poller [candidate] (4.177 ms) : 0, 4177
section profiling
crashtracking [baseline] (1.455 ms) : 0, 1455
crashtracking [candidate] (1.437 ms) : 0, 1437
BytebuddyAgent [baseline] (724.779 ms) : 0, 724779
BytebuddyAgent [candidate] (725.296 ms) : 0, 725296
GlobalTracer [baseline] (219.675 ms) : 0, 219675
GlobalTracer [candidate] (219.915 ms) : 0, 219915
AppSec [baseline] (32.449 ms) : 0, 32449
AppSec [candidate] (32.177 ms) : 0, 32177
Debugger [baseline] (12.359 ms) : 0, 12359
Debugger [candidate] (10.608 ms) : 0, 10608
Remote Config [baseline] (1.505 ms) : 0, 1505
Remote Config [candidate] (698.239 µs) : 0, 698
Telemetry [baseline] (10.049 ms) : 0, 10049
Telemetry [candidate] (12.289 ms) : 0, 12289
Flare Poller [baseline] (4.131 ms) : 0, 4131
Flare Poller [candidate] (4.181 ms) : 0, 4181
ProfilingAgent [baseline] (109.439 ms) : 0, 109439
ProfilingAgent [candidate] (109.146 ms) : 0, 109146
Profiling [baseline] (110.048 ms) : 0, 110048
Profiling [candidate] (109.779 ms) : 0, 109779
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.03 s) : 0, 1029728
Total [baseline] (8.659 s) : 0, 8659384
Agent [candidate] (1.028 s) : 0, 1027901
Total [candidate] (8.651 s) : 0, 8651055
section iast
Agent [baseline] (1.16 s) : 0, 1160247
Total [baseline] (9.38 s) : 0, 9379811
Agent [candidate] (1.163 s) : 0, 1163332
Total [candidate] (9.416 s) : 0, 9416406
gantt
title insecure-bank - break down per module: candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.471 ms) : 0, 1471
crashtracking [candidate] (1.446 ms) : 0, 1446
BytebuddyAgent [baseline] (701.739 ms) : 0, 701739
BytebuddyAgent [candidate] (701.219 ms) : 0, 701219
GlobalTracer [baseline] (245.312 ms) : 0, 245312
GlobalTracer [candidate] (243.947 ms) : 0, 243947
AppSec [baseline] (32.283 ms) : 0, 32283
AppSec [candidate] (32.384 ms) : 0, 32384
Debugger [baseline] (6.383 ms) : 0, 6383
Debugger [candidate] (6.326 ms) : 0, 6326
Remote Config [baseline] (680.684 µs) : 0, 681
Remote Config [candidate] (677.924 µs) : 0, 678
Telemetry [baseline] (14.54 ms) : 0, 14540
Telemetry [candidate] (14.456 ms) : 0, 14456
Flare Poller [baseline] (6.238 ms) : 0, 6238
Flare Poller [candidate] (6.408 ms) : 0, 6408
section iast
crashtracking [baseline] (1.473 ms) : 0, 1473
crashtracking [candidate] (1.479 ms) : 0, 1479
BytebuddyAgent [baseline] (822.782 ms) : 0, 822782
BytebuddyAgent [candidate] (825.318 ms) : 0, 825318
GlobalTracer [baseline] (233.488 ms) : 0, 233488
GlobalTracer [candidate] (233.582 ms) : 0, 233582
IAST [baseline] (31.741 ms) : 0, 31741
IAST [candidate] (31.085 ms) : 0, 31085
AppSec [baseline] (30.195 ms) : 0, 30195
AppSec [candidate] (31.05 ms) : 0, 31050
Debugger [baseline] (6.155 ms) : 0, 6155
Debugger [candidate] (6.151 ms) : 0, 6151
Remote Config [baseline] (613.183 µs) : 0, 613
Remote Config [candidate] (611.287 µs) : 0, 611
Telemetry [baseline] (8.446 ms) : 0, 8446
Telemetry [candidate] (8.507 ms) : 0, 8507
Flare Poller [baseline] (4.127 ms) : 0, 4127
Flare Poller [candidate] (4.238 ms) : 0, 4238
LoadParameters
See matching parameters
SummaryFound 3 performance improvements and 5 performance regressions! Performance is the same for 4 metrics, 12 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section baseline
no_agent (18.356 ms) : 18162, 18549
. : milestone, 18356,
appsec (18.336 ms) : 18151, 18521
. : milestone, 18336,
code_origins (19.441 ms) : 19246, 19636
. : milestone, 19441,
iast (18.677 ms) : 18492, 18861
. : milestone, 18677,
profiling (19.611 ms) : 19410, 19811
. : milestone, 19611,
tracing (19.629 ms) : 19432, 19825
. : milestone, 19629,
section candidate
no_agent (19.033 ms) : 18843, 19222
. : milestone, 19033,
appsec (19.271 ms) : 19075, 19467
. : milestone, 19271,
code_origins (18.527 ms) : 18346, 18708
. : milestone, 18527,
iast (17.881 ms) : 17702, 18061
. : milestone, 17881,
profiling (18.84 ms) : 18647, 19032
. : milestone, 18840,
tracing (19.85 ms) : 19650, 20051
. : milestone, 19850,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section baseline
no_agent (1.199 ms) : 1187, 1211
. : milestone, 1199,
iast (3.176 ms) : 3136, 3216
. : milestone, 3176,
iast_FULL (5.659 ms) : 5603, 5715
. : milestone, 5659,
iast_GLOBAL (3.558 ms) : 3507, 3609
. : milestone, 3558,
profiling (1.876 ms) : 1861, 1891
. : milestone, 1876,
tracing (1.82 ms) : 1804, 1837
. : milestone, 1820,
section candidate
no_agent (1.183 ms) : 1172, 1194
. : milestone, 1183,
iast (3.289 ms) : 3240, 3338
. : milestone, 3289,
iast_FULL (5.874 ms) : 5814, 5934
. : milestone, 5874,
iast_GLOBAL (3.669 ms) : 3610, 3727
. : milestone, 3669,
profiling (2.039 ms) : 2021, 2057
. : milestone, 2039,
tracing (1.826 ms) : 1811, 1840
. : milestone, 1826,
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 tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section baseline
no_agent (1.479 ms) : 1467, 1491
. : milestone, 1479,
appsec (3.719 ms) : 3502, 3936
. : milestone, 3719,
iast (2.205 ms) : 2142, 2269
. : milestone, 2205,
iast_GLOBAL (2.248 ms) : 2184, 2312
. : milestone, 2248,
profiling (2.059 ms) : 2007, 2110
. : milestone, 2059,
tracing (2.022 ms) : 1972, 2072
. : milestone, 2022,
section candidate
no_agent (1.475 ms) : 1464, 1487
. : milestone, 1475,
appsec (3.708 ms) : 3490, 3927
. : milestone, 3708,
iast (2.207 ms) : 2144, 2271
. : milestone, 2207,
iast_GLOBAL (2.256 ms) : 2192, 2320
. : milestone, 2256,
profiling (2.046 ms) : 1995, 2097
. : milestone, 2046,
tracing (2.043 ms) : 1993, 2093
. : milestone, 2043,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~dd223a3901, baseline=1.55.0-SNAPSHOT~d86fe5521e
dateFormat X
axisFormat %s
section baseline
no_agent (14.96 s) : 14960000, 14960000
. : milestone, 14960000,
appsec (14.793 s) : 14793000, 14793000
. : milestone, 14793000,
iast (18.499 s) : 18499000, 18499000
. : milestone, 18499000,
iast_GLOBAL (18.187 s) : 18187000, 18187000
. : milestone, 18187000,
profiling (15.811 s) : 15811000, 15811000
. : milestone, 15811000,
tracing (14.884 s) : 14884000, 14884000
. : milestone, 14884000,
section candidate
no_agent (15.012 s) : 15012000, 15012000
. : milestone, 15012000,
appsec (14.966 s) : 14966000, 14966000
. : milestone, 14966000,
iast (18.179 s) : 18179000, 18179000
. : milestone, 18179000,
iast_GLOBAL (17.855 s) : 17855000, 17855000
. : milestone, 17855000,
profiling (15.4 s) : 15400000, 15400000
. : milestone, 15400000,
tracing (15.159 s) : 15159000, 15159000
. : milestone, 15159000,
|
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.
Didn't have time to review all test files, but I have a general concern about where we should handle OTel configurations. We already have OTelEnvironmentConfigSource, which is effectively sets Datadog Configs as aliases for OTel Configs when DD_TRACE_OTEL_ENABLED=true.
IMO we should handle all OTel configs in one place to have one source of truth, and to me it makes sense to isolate them in OTelEnvironmentConfigSource. WDYT?
dd-trace-api/src/main/java/datadog/trace/api/ConfigDefaults.java
Outdated
Show resolved
Hide resolved
dd-trace-api/src/main/java/datadog/trace/api/ConfigDefaults.java
Outdated
Show resolved
Hide resolved
dd-trace-api/src/main/java/datadog/trace/api/ConfigDefaults.java
Outdated
Show resolved
Hide resolved
| runtimeMetricsEnabled = configProvider.getBoolean(RUNTIME_METRICS_ENABLED, true); | ||
| metricsOtelEnabled = | ||
| configProvider.getBoolean(METRICS_OTEL_ENABLED, DEFAULT_METRICS_OTEL_ENABLED); | ||
| otelResourceAttributes = configProvider.getMergedMap(OTEL_RESOURCE_ATTRIBUTES, '='); |
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.
This is already queried in OtelEnvironmentConfigSource, and it appears that the existing way of handling of this config is slightly more specific than what is happening here.
Do we have a consensus of how we would like to handle this config?
This also brings up a bigger question of whether or not we want to reclassify what OtelEnvironmentConfigSource does. It really is not its own config source, but rather prioritizing OTEL configs instead of their DD equivalents when DD_TRACE_OTEL_ENABLED = true. Should we have all OTEL configs handled in the OtelEnvironmentConfigSource, or should we migrate all of the configs handled there to be handled in Config.java?
IMO, it makes sense to handle all OTel Configs in OtelEnvironmentConfigSource to separate them from regular DD config handling, and to keep the handling of OTel Configs all in one place.
Co-authored-by: mhlidd <[email protected]>
Co-authored-by: mhlidd <[email protected]>
Co-authored-by: mhlidd <[email protected]>
Co-authored-by: mhlidd <[email protected]>
Hi @mhlidd, |
|
@cecile75 Yes you're right about the I do think that the
Renaming to |
|
@mhlidd Looking more into this as there are shared configuration keys between otel metric and otel traces that need remapping: you have mentioned |
What Does This Do
Add Otel Metrics configuration keys. They are not linked to anything yet.
Motivation
OpenTelemetry Metrics API support
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any useful labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: APMAPI-1671