- 
                Notifications
    You must be signed in to change notification settings 
- Fork 351
feat(metrics): add support for otlp configurations #6664
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
feat(metrics): add support for otlp configurations #6664
Conversation
| Overall package sizeSelf size: 12.89 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.7.0 | 35.02 MB | 35.02 MB | | @datadog/native-appsec | 10.2.1 | 20.64 MB | 20.65 MB | | @datadog/native-iast-taint-tracking | 4.0.0 | 11.72 MB | 11.73 MB | | @datadog/pprof | 5.11.1 | 9.96 MB | 10.34 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.5.4 | 2.95 MB | 5.73 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @opentelemetry/resources | 1.9.1 | 306.54 kB | 1.74 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api-logs | 0.205.0 | 201.51 kB | 1.42 MB | | @opentelemetry/api | 1.9.0 | 1.22 MB | 1.22 MB | | jsonpath-plus | 10.3.0 | 617.18 kB | 1.08 MB | | import-in-the-middle | 1.15.0 | 127.66 kB | 856.24 kB | | lru-cache | 10.4.3 | 804.3 kB | 804.3 kB | | @datadog/openfeature-node-server | 0.1.0-preview.10 | 95.11 kB | 401.46 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | source-map | 0.7.6 | 185.63 kB | 185.63 kB | | pprof-format | 2.2.1 | 163.06 kB | 163.06 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 | 7.0.5 | 63.38 kB | 63.38 kB | | istanbul-lib-coverage | 3.2.2 | 34.37 kB | 34.37 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.3 | 23.74 kB | 23.74 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 | | mutexify | 1.4.0 | 5.71 kB | 8.74 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | module-details-from-path | 1.0.4 | 3.96 kB | 3.96 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe | 
| Codecov Report❌ Patch coverage is  
 Additional details and impacted files@@                        Coverage Diff                        @@
##           munir/otlp-add-meter-provider    #6664      +/-   ##
=================================================================
+ Coverage                          84.40%   84.41%   +0.01%     
=================================================================
  Files                                513      513              
  Lines                              21352    21369      +17     
=================================================================
+ Hits                               18022    18039      +17     
  Misses                              3330     3330              ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
 | 
| BenchmarksBenchmark execution time: 2025-10-29 17:24:34 Comparing candidate commit c191762 in PR branch  Found 0 performance improvements and 0 performance regressions! Performance is the same for 1601 metrics, 69 unstable metrics. | 
57a78c3    to
    5c9bd42      
    Compare
  
    
What does this PR do?
Adds configuration support for OpenTelemetry Metrics in dd-trace-js. Setting
DD_METRICS_OTEL_ENABLED=trueautomatically configures OTLP metrics export with the custom Meter Provider implementation.Supported Configurations:
DD_METRICS_OTEL_ENABLED- Enable/disable OpenTelemetry metrics (default:false)OTEL_EXPORTER_OTLP_METRICS_ENDPOINT- Metrics endpoint URL (default:http://localhost:4318/v1/metrics)OTEL_EXPORTER_OTLP_METRICS_PROTOCOL- Protocol:http/protobuforhttp/json(default:http/protobuf)OTEL_EXPORTER_OTLP_METRICS_HEADERS- Custom headers for metrics exportOTEL_EXPORTER_OTLP_METRICS_TIMEOUT- Request timeout in milliseconds (default:10000)OTEL_METRIC_EXPORT_INTERVAL- Export interval in milliseconds (default:60000)OTEL_EXPORTER_OTLP_*variables as fallbacksAdditional Changes:
docs/API.mdwith usage examples for Counter, Histogram, UpDownCounter, and ObservableGaugeMotivation
The custom OpenTelemetry Meter Provider was implemented but not exposed to users. This PR makes the feature production-ready by adding configuration support and onboarding documentation, following the same patterns as OpenTelemetry Logs support.
Plugin Checklist
Additional Notes