Skip to content

krakend: declarative auto_conf_discovery.yaml (advanced auto-config experiment)#23547

Draft
vitkyrka wants to merge 4 commits intomasterfrom
vitkyrka/disco-autoconfig
Draft

krakend: declarative auto_conf_discovery.yaml (advanced auto-config experiment)#23547
vitkyrka wants to merge 4 commits intomasterfrom
vitkyrka/disco-autoconfig

Conversation

@vitkyrka
Copy link
Copy Markdown

@vitkyrka vitkyrka commented Apr 30, 2026

Summary

  • Adds auto_conf_discovery.yaml to the krakend integration with an OpenMetrics probe spec (port hint 9090, /metrics).
  • Companion to the agent-side change in datadog-agent that consumes this new file format.
  • Includes the experiment design spec and implementation plan under docs/superpowers/.

Targets the generic-openmetrics-scan bucket from the analysis on the vitkykra/autoconfig-analysis branch (51/260 integrations, ~20%). Tracks Confluence ticket DSCVR/6650004331.

Companion datadog-agent PR: DataDog/datadog-agent#50199

Test plan

  • Bring up krakend dev env (tests/docker/docker-compose.yml).
  • Run agent with locally built binary + this integration source bind-mounted; confirm krakend check schedules with openmetrics_endpoint: http://<container-ip>:9090/metrics and metrics flow (verified in experiment session — 84+ metric samples per run, OK).
  • Repeat with krakend metrics on port 9000 (config edited locally) — confirm fallback scan finds it (verified).

🤖 Generated with Claude Code

@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts Bot commented Apr 30, 2026

Validation Report

All 20 validations passed.

Show details
Validation Description Status
agent-reqs Verify check versions match the Agent requirements file
ci Validate CI configuration and Codecov settings
codeowners Validate every integration has a CODEOWNERS entry
config Validate default configuration files against spec.yaml
dep Verify dependency pins are consistent and Agent-compatible
http Validate integrations use the HTTP wrapper correctly
imports Validate check imports do not use deprecated modules
integration-style Validate check code style conventions
jmx-metrics Validate JMX metrics definition files and config
labeler Validate PR labeler config matches integration directories
legacy-signature Validate no integration uses the legacy Agent check signature
license-headers Validate Python files have proper license headers
licenses Validate third-party license attribution list
metadata Validate metadata.csv metric definitions
models Validate configuration data models match spec.yaml
openmetrics Validate OpenMetrics integrations disable the metric limit
package Validate Python package metadata and naming
readmes Validate README files have required sections
saved-views Validate saved view JSON file structure and fields
version Validate version consistency between package and changelog

View full run

vitkyrka and others added 4 commits May 5, 2026 21:22
Design for an experiment validating declarative-probe based advanced
auto-configuration on the krakend integration end-to-end against a real
Agent build. Targets the generic-openmetrics-scan bucket (51/260
integrations) identified in the vitkykra/autoconfig-analysis branch.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Bite-sized TDD tasks covering the new auto_conf_discovery.yaml file
format, the discovery package (prober + cache + service wrapper), the
%%discovered_port%% template variable, the configmgr wiring, and three
end-to-end demo scenarios against a real Agent build.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ment

Declares the krakend ad_identifier with an OpenMetrics probe spec
(default port 8090, /metrics path). Consumed by the new
auto_conf_discovery file format in datadog-agent.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The dev env's KrakenD config exposes Prometheus metrics on port 9090
(via the OpenTelemetry Prometheus exporter), not 8090. The fallback
scan would have found it anyway, but the hint should be correct.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant