OTLP push
Forward OpenTelemetry metrics from your collector into Doow.
Use OTLP push when usage metrics already flow through an OpenTelemetry Collector and the team that owns the collector can forward selected metrics to Doow.
Use the Instrumentation SDK instead when the metric does not exist yet and your application needs to emit a custom usage event.
What you need
- A running OpenTelemetry Collector with an OTLP/HTTP exporter.
- A Doow SDK API key with a
dk_prefix from Settings, then API Keys, then SDK Keys. - Metrics that include the
doow.license_idresource attribute. - Delta temporality for counter metrics sent to Doow.
Send only the metrics Doow needs
The collector may receive traces, logs, and many application metrics. Route only the usage metrics Doow needs into the Doow exporter pipeline.
Add the Doow exporter
Add Doow as an OTLP/HTTP exporter in your collector configuration. The exporter
forwards the metrics pipeline to Doow's OTLP endpoint with your dk_ key.
Use this as the starting shape:
exporters:
otlphttp/doow:
endpoint: https://api.doow.co/telemetry/otlp
headers:
Authorization: "Bearer dk_your_api_key"
compression: gzip
timeout: 10s
retry_on_failure:
enabled: true
initial_interval: 1s
max_interval: 30s
service:
pipelines:
metrics/doow:
receivers: [otlp]
exporters: [otlphttp/doow]Add license attribution
Doow maps incoming OTLP metrics to licenses using the doow.license_id
resource attribute. Add the attribute before the metric reaches the Doow
exporter:
processors:
resource/doow:
attributes:
- key: doow.license_id
value: "lic_your_license_id"
action: upsertAdd the processor to the metrics pipeline that exports to Doow.
What Doow reads
| Field | Description |
|---|---|
| Metric name | The OTLP metric name configured for Doow usage reporting |
| Data points | Numeric values from each delta-temporality data point |
| Resource attributes | Used for license attribution (doow.license_id) and custom dimensions |
| Timestamp | The data point timestamp |
What Doow does not read
- Trace data or log data received by the same collector
- Full request or response payloads from your application
- Environment variables, infrastructure secrets, or collector credentials
- Billing payment methods or invoices
Confirm metrics arrived
After configuring OTLP push, open the integration detail page from Company Settings, then Integrations. A healthy OTLP connection shows recent metrics from the collector for the expected metric name, license, environment, or service.
If Doow receives no data, confirm that the collector can reach the Doow
endpoint, the dk_ key is active, and the exporter includes the authorization
header.
Troubleshooting
Use these checks when OTLP data does not arrive:
- Confirm the collector can reach the Doow OTLP endpoint over the network.
- Confirm the
dk_key is active and has not been revoked. - Confirm the exporter sends the authorization header expected by Doow.
- Confirm the collector is receiving metrics before it forwards them to Doow.
- Confirm the metrics pipeline includes the Doow exporter.
- Confirm the metrics include
doow.license_id. - Confirm counter metrics use delta temporality.
- Check collector logs for export failures or retry loops.
Disconnecting
Go to Company Settings, then Integrations, find OTLP push, and select
Disconnect. Remove the Doow exporter from the collector configuration and
revoke the dk_ key when you want provider-side access removed too.
Production checks
Before rollout, confirm these conditions:
- The Doow exporter is attached only to the intended metrics pipeline.
- The
dk_key is stored as a secret, not committed in collector config. - Retry and timeout behavior is acceptable for the collector owner.
- The metric names and
doow.license_idvalues match what Doow expects. - Cumulative counters are converted before export or excluded from the Doow pipeline.
Next steps
After metrics arrive, review the metric names and attribution fields in Doow. Connect an identity provider if Doow needs to match usage to users or app ownership. Connect HRIS when the review needs department or employment context.