Repository navigation
Conversation
Add a `datadog_agent` integration that scrapes the Agent's `/telemetry` OpenMetrics endpoint, collecting the telemetry analogous to what the expvar-based Agent Metrics integration collected. Mark Agent Metrics as deprecated in favor of it, and move the `datadog-agent` app_id to the new integration. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
✅ Dispatcher tests: passed
✅ 2 passed · nothing failed Batches · ✅ batch-01 2/2 Dispatcher finished on |
evalya-impact-summaryEvalya CI impact |
❌ ErrorsYour PR has failed checks. Please review the issues below and take necessary action before merging. 🚦 1 Pipeline job failed
ℹ️ InfoNo other issues found (see more)🧪 All tests passed 🎯 Code Coverage (details) Useful? React with 👍 / 👎 This comment will be updated automatically if new data arrives.🔗 Commit SHA: 9be1bdc | Docs | View more details | Give us feedback! |
Disk usage changeCommit Uncompressed
Details
Compressed
Details
|
The Agent always serves /telemetry; telemetry.enabled only enables additional telemetry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
@drichards-87 thanks! I applied all of the suggestions in a6c12a7. |
…integration app_ids can't be reused, so agent_metrics keeps datadog-agent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review from drichards-87 is dismissed. Related teams and files:
- documentation
- datadog_agent/manifest.json
|
Looks good. I have one question, do we expect users to migrate existing to this integration? The change from the counter that the old integration used to collect might behave differently here with a different name with the |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review from steveny91 is dismissed. Related teams and files:
- agent-integrations
- datadog_agent/README.md
@steveny91 We are primarily targeting new users that are starting to collect telemetry for the Datadog Agent but hopefully some existing users migrate too (there are no plans to remove the old integration though). Your question prompted me to consider where we should have a small blurb for customers migrating so I pushed that up as f5dcf50. |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review from drichards-87 is dismissed. Related teams and files:
- documentation
- datadog_agent/README.md
|
Thanks @drichards-87 ! I applied the suggested updates in 9be1bdc |
Validation Report
Run Passed validations (21)
|
What does this PR do?
Adds a
datadog_agentintegration that monitors the Datadog Agent through its OpenMetrics telemetry endpoint (/telemetry), and marks the expvar-based Agent Metrics integration as deprecated in favor of it.By default it collects the telemetry analogous to what
go_expvar.d/agent_stats.yaml.examplecollected (forwarder, DogStatsD, aggregator, scheduler, Logs Agent), using the names from the Agent'sopenmetrics.d/agent_stats.yaml.exampleunder thedatadog.agentnamespace. Counters are submitted with native OpenMetrics V2 types (<name>.count).tag_by_endpointdefaults to false because the forwarder telemetry has its ownendpointlabel (the intake endpoint), which would be ambiguous next to the scraped URL.The README includes a "Migrating from Agent Metrics" section that maps each old metric to its replacement and covers the behavior changes (counters as
.count, combined metrics distinguished by tags, Go runtime metrics opt-in).The new integration uses the
datadog-agent-openmetricsapp_id. app_ids can't be reused, soagent_metricskeepsdatadog-agent.Motivation
DataDog/datadog-agent#55721 deprecated collecting the Agent's internal telemetry via expvars in favor of the OpenMetrics endpoint, which has typed metrics, richer tags, and more metrics. That PR only added an example
openmetrics.dconfig. This gives users a first-class integration to migrate to.Some of the default metrics (aggregator flush stats,
scheduler.queues.size, etc.) were added to the telemetry endpoint by that PR, so they require Agent 7.86+. Shipping adatadog_agent.d/conf.yaml.examplewith the Agent is a follow-up in datadog-agent.Tests: a unit test runs the check against a fixture captured from a real Agent's
/telemetry(plus samples for families that only appear under load) and asserts every documented metric is collected and nothing else is. The E2E test scrapes the E2E Agent container's own telemetry on a free port, so it doesn't reach an Agent installed on the host.Checklist before requesting review
🤖 Generated with Claude Code