Skip to content

Define dataflows for ecosystems-review-owned integrations - #3100

Open
philjlee wants to merge 1 commit into
masterfrom
philip.lee/dataflows-extras-batch1-ecosystems-review
Open

Define dataflows for ecosystems-review-owned integrations#3100
philjlee wants to merge 1 commit into
masterfrom
philip.lee/dataflows-extras-batch1-ecosystems-review

Conversation

@philjlee

@philjlee philjlee commented Aug 6, 2026

Copy link
Copy Markdown

Jira: TXP-277

Adds assets/dataflows.yaml to 63 integrations owned by @DataDog/ecosystems-review, declaring 70 dataflows. Mechanical change: no code, no metrics, no manifests touched.

Precedent: #2925 "Define dataflows for saas-integrations", which created 13 of the 14 existing dataflow files in this repo.

Selection criteria

A directory is in this batch only if all of the following hold:

  1. It has no assets/dataflows.yaml today.
  2. It has a parseable manifest.json. The dataflows validator hard-requires one — dataflows_validation_handler.go:56.
  3. The correct data_type is mechanically derivable from a committed artifact, with no judgement call:
    • metadata.csv with at least one data row → metrics
    • a log pipeline under assets/logs/*.yamllogs
    • both → both entries
  4. .github/CODEOWNERS resolves <dir>/assets/dataflows.yaml (last-match-wins) to @DataDog/ecosystems-review.

Every directory in this batch has @DataDog/ecosystems-review as its Datadog team CODEOWNER, so review from that team covers the whole PR. External co-owners are auto-requested on many of these paths, but their approval is not a gate.

Field values

provides:
  - id: <app_id>-<data_type>
    always_on: true
    granular: false
    data_type: <metrics|logs>
    direction: inbound

always_on: true / granular: false / direction: inbound matches 14 of the 17 dataflow entries already in the repo. The only deviation in the repo is vercel, which is always_on: false for a Serverless product-enablement reason that does not apply here.

Dataflow IDs are <app_id>-<data_type>, taking app_id from manifest.json rather than the directory name — e.g. doppler/doppler-logs, zilliz_cloud_zilliz_cloud/zilliz-cloud-zilliz-cloud-metrics. All IDs were checked for collisions against every existing ID in the repo, and against each other.

Validation

These files were validated by executing the real validator, DataflowsValidationHandler from dd-source/domains/integrationscatalog/libs/catalogassetslib/dataflows_validation_handler.go, at ddoghq/dd-source@main, against every dataflows.yaml file in the repo working tree with this PR applied. Result: 0 failures, covering per-file unmarshalling, proto constraint validation, and the cross-file HandleLibrary ID-uniqueness check.

The harness was negative-tested first and confirmed to reject: a missing always_on; a data_type outside validDataTypes; an id breaking ^[a-z0-9-]+$; an id under 3 characters; a file with neither provides nor uses; a .yml extension; a missing manifest.json; and the same dataflow ID provided by two apps.

This matters because APW does not post validator comments on integrations-extras PRs (enable_validator_comments is set only for pub-platform-staging and publishing-platform). A malformed dataflows.yaml merges cleanly here and only fails afterwards, in the shared asset pipeline.

No data_type was guessed anywhere. Any integration whose correct value was not unambiguous is deferred to a later batch rather than approximated.

Contents

Metrics only (45)

Integration Dataflow IDs
1e one-e-metrics
ably ably-metrics
agora_analytics agora-analytics-metrics
akeyless_gateway akeyless-gateway-metrics
algorithmia algorithmia-metrics
authzed_cloud authzed-cloud-metrics
buoyant_cloud buoyant-cloud-metrics
census census-metrics
cloudsmith cloudsmith-metrics
cribl_stream cribl-stream-metrics
cyral cyral-metrics
embrace_mobile embrace-mobile-metrics
emqx emqx-metrics
fiddler fiddler-metrics
gatling_enterprise gatling-enterprise-metrics
hasura_cloud hasura-cloud-metrics
inngest inngest-metrics
n2ws n2ws-metrics
neo4j neo4j-metrics
neoload neoload-metrics
nn_sdwan nn-sdwan-metrics
ns1 ns1-metrics
oceanbasecloud oceanbase-cloud-metrics
packetfabric packetfabric-metrics
perfectscale perfectscale-metrics
postman postman-metrics
purefa purefa-metrics
purefb purefb-metrics
redisenterprise redisenterprise-metrics
scalr scalr-metrics
scaphandre scaphandre-metrics
singlestoredb_cloud singlestoredb-cloud-metrics
sofy_sofy sofy-metrics
sosivio sosivio-metrics
starburst_galaxy starburst-galaxy-metrics
statsig statsig-metrics
stormforge stormforge-metrics
superwise superwise-metrics
tidb tidb-metrics
tidb_cloud tidb-cloud-metrics
unitq unitq-metrics
upbound_uxp upbound-uxp-metrics
upstash upstash-metrics
zebrium zebrium-metrics
zilliz_cloud_zilliz_cloud zilliz-cloud-zilliz-cloud-metrics

Logs only (11)

Integration Dataflow IDs
appomni appomni-logs
contrast_security_adr contrast-security-adr-logs
dagster dagster-plus-logs
doppler doppler-logs
fauna fauna-logs
invary invary-logs
jfrog_platform_cloud jfrog-platform-cloud-logs
lambdatest lambdatest-logs
ngrok ngrok-logs
twingate twingate-logs
typingdna_activelock typingdna-activelock-logs

Metrics and logs (7)

Integration Dataflow IDs
aimon aimon-metrics, aimon-logs
anecdote anecdote-metrics, anecdote-logs
bottomline_recordandreplay bottomline-recordandreplay-metrics, bottomline-recordandreplay-logs
celerdata celerdata-metrics, celerdata-logs
gravitee gravitee-metrics, gravitee-logs
jfrog_platform_self_hosted jfrog-platform-metrics, jfrog-platform-logs
watchtower_ziris ziris-metrics, ziris-logs

🤖 Generated with Claude Code

Split of #3093 by CODEOWNERS team.
Jira: TXP-277
@philjlee
philjlee requested review from a team and sarah-witt as code owners August 6, 2026 19:18
@philjlee
philjlee requested review from Wyrine and removed request for a team August 6, 2026 19:18
@philjlee philjlee changed the title Define dataflows for ecosystems-review-owned integrations (batch 1a) Define dataflows for ecosystems-review-owned integrations Aug 6, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1a7a854677

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +7 to +11
- id: anecdote-logs
always_on: true
granular: false
data_type: logs
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Anecdote event flow

Add an inbound events entry here: anecdote/README.md:7 states that every newly reported bug produces a Datadog event, and anecdote/manifest.json:42-45 classifies metrics, logs, and events as submitted data, but this file exposes only the first two. Consumers of this metadata will therefore omit a supported Anecdote signal.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: buoyant-cloud-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Buoyant Cloud event flow

Add an inbound events entry here. The setup in buoyant_cloud/README.md:17-22 lets users send events or metrics and validates both in their respective explorers, while manifest.json sets creates_events to true; declaring only metrics makes the new dataflow metadata incomplete whenever a notification rule sends rollout or health events.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: census-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Census event flow

Add an inbound events entry here. census/README.md:23-37 documents that sync completion events and metrics are transmitted to Datadog, and census/manifest.json:24-25 marks both as submitted data, so dataflow consumers currently see only half of the integration's telemetry.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: cloudsmith-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Cloudsmith event flow

Add an inbound events entry here. cloudsmith/README.md:9-12 explicitly maps security, audit, policy, member, and quota data to Datadog events, and the check calls self.event for those records, so the metrics-only declaration causes product dataflow metadata to hide a substantial supported signal.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: gatling-enterprise-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Gatling Enterprise event flow

Add an inbound events entry here. gatling_enterprise/manifest.json:42-43 marks both metrics and events as submitted, and the bundled dashboard queries injection-start and injection-end records with data_source: events; the current declaration therefore omits the event signal used by the integration's own dashboard.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: stormforge-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the StormForge event flow

Add an inbound events entry here. stormforge/README.md:34-38 explicitly says that application updates and applied recommendations create events, so dataflow consumers will receive an incomplete view when those events are emitted even though the new file claims metrics are the integration's only inbound signal.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: tidb-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the TiDB log flow

Add an inbound logs entry here. TiDB explicitly collects TiDB, TiKV, TiFlash, and slow-query logs (tidb/README.md:5-8), provides log-collection configuration starting at tidb/README.md:67, and declares assets.logs.source as tidb; when users enable that documented configuration, the metrics-only dataflow omits their logs.

Useful? React with 👍 / 👎.

Comment on lines +7 to +11
- id: ziris-logs
always_on: true
granular: false
data_type: logs
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the WatchTower trace flow

Add an inbound traces entry here. watchtower_ziris/README.md:7 says the integration collects metrics, logs, and traces over OpenTelemetry, its validation instructs users to verify that spans are streaming (README.md:53), and the manifest classifies traces as submitted data; the new metadata currently drops that third signal entirely.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: hasura-cloud-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Hasura Cloud log and trace flows

Add inbound logs and traces entries here. hasura_cloud/README.md:8-9 says the integration exports operation logs, metrics, and traces, and README.md:17-26 instructs users to configure log facets before confirming that all three signals are automatically sent when a project receives traffic; the metrics-only declaration hides two supported signals.

Useful? React with 👍 / 👎.

Comment on lines +2 to +6
- id: zebrium-metrics
always_on: true
granular: false
data_type: metrics
direction: inbound

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Declare the Zebrium event flow

Add an inbound events entry here. zebrium/README.md:5-9 repeatedly states that Zebrium detection events and metrics are sent directly to Datadog, and the bundled dashboard overlays those detections as events; declaring only metrics omits the signal that carries each root-cause detection.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant