Skip to content

ray: add container-based config discovery support#23997

Draft
martavicentenavarro wants to merge 1 commit into
vitkyrka/disco-configfrom
feat/martavicentenavarro/DSCVR-485-ray-config-discovery
Draft

ray: add container-based config discovery support#23997
martavicentenavarro wants to merge 1 commit into
vitkyrka/disco-configfrom
feat/martavicentenavarro/DSCVR-485-ray-config-discovery

Conversation

@martavicentenavarro

@martavicentenavarro martavicentenavarro commented Jun 10, 2026

Copy link
Copy Markdown

What does this PR do?

Adds config discovery support to the Ray integration. When the Datadog Agent detects a container with the ray AD identifier, it automatically probes port 8080 and schedules an OpenMetrics check against http://<host>:8080 — no manual conf.yaml needed.

Files changed:

  • assets/configuration/spec.yamldiscovery: block with ad_identifiers: [ray] and from_ports strategy on port 8080
  • datadog_checks/ray/config_models/discovery.py — autogenerated candidates() function
  • datadog_checks/ray/data/auto_conf.yaml — AD identifier registration
  • tests/conftest.py — wires get_e2e_discovery_config into dd_environment, merges with E2E_METADATA (which carries env_vars), and adds discovery_config fixture
  • tests/test_e2e.py — adds test_e2e_discovery E2E test

Port choice: Port 8080 is Ray's documented default --metrics-export-port for Prometheus/OpenMetrics metrics, as described in the official Ray metrics documentation. All nodes (head and workers) expose metrics on this port inside their containers.

Motivation

DSCVR-487 as part of DSCVR-484

Adds config discovery for the Ray integration (DSCVR-485), following the
same pattern as krakend, n8n, and pulsar. Port 8080 is Ray's documented
default --metrics-export-port for Prometheus/OpenMetrics metrics.
@martavicentenavarro martavicentenavarro added the qa/skip-qa Automatically skip this PR for the next QA label Jun 10, 2026
@datadog-official

datadog-official Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Pipelines

Fix all issues with BitsAI

⚠️ Warnings

🚦 4 Pipeline jobs failed

PR | test / check   View in Datadog   GitHub Actions

PR | test / test (linux, ubuntu-22.04, ray, Ray (py3.13-2.8), py3.13-2.8) / Ray (py3.13-2.8)-py3.13-2.8   View in Datadog   GitHub Actions

PR | test / test-minimum-base-package (linux, ubuntu-22.04, ray, Ray (py3.13-2.8), py3.13-2.8) / minimum-base-package-Ray (py3.13-2.8)-py3.13-2.8   View in Datadog   GitHub Actions

View all 4 failed jobs.

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: a49c553 | Docs | Datadog PR Page | Give us feedback!

@dd-octo-sts

dd-octo-sts Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Validation Report

Validation Description Status
models Validate configuration data models match spec.yaml

Run ddev validate all changed --fix to attempt to auto-fix supported validations.

Passed validations (20)
Validation Description Status
agent-reqs Verify check versions match the Agent requirements file
ci Validate CI configuration and code coverage 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
openmetrics Validate OpenMetrics integrations disable the metric limit
package Validate Python package metadata and naming
qa-label Validate the pull request declares whether it needs QA for the next Agent release
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

@martavicentenavarro martavicentenavarro self-assigned this Jun 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation integration/ray qa/skip-qa Automatically skip this PR for the next QA

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant