open-telemetry / opentelemetry-collector-contrib

Contrib repository for the OpenTelemetry Collector
https://opentelemetry.io
Apache License 2.0
3.11k stars 2.39k forks source link

datadogexporter should have an option to submit counter metric as rate to match datadog-agent #17483

Open hardproblems opened 1 year ago

hardproblems commented 1 year ago

Component(s)

exporter/datadog

Is your feature request related to a problem? Please describe.

Datadogexporter submits counter types as count, however datadog-agent and veneur submits counters as rate. At Airbnb we use veneur internally to collect statsd and send to Datadog. We're trying to replace veneur with otel-collector. We tried this on a test project and noticed that it flipped the in-app type of all counters from rate to count and impacted dashboards of all projects that emit shared metrics. This means otel-collector cannot drop-in replace an existing agent compatible with datadog-agent without affecting existing sender's metrics queries on counters and impacting all existing dashboards/ monitors.

Describe the solution you'd like

Add a configuration parameter to allow submitting counters as rate to Datadog and configuring the interval for counter (OTLP sum) -> rate conversion.

Describe alternatives you've considered

I considered using deltatorate processor to convert counters to rate but it converts sum to gauge which would still not be submitted properly.

Additional context

@KSerrania @mx-psi @gbbr @knusbaum @amenasria @dineshg13

github-actions[bot] commented 1 year ago

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

github-actions[bot] commented 1 year ago

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

github-actions[bot] commented 1 year ago

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

github-actions[bot] commented 1 year ago

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

github-actions[bot] commented 10 months ago

This issue has been closed as inactive because it has been stale for 120 days with no activity.

mx-psi commented 10 months ago

Reopening, we have not addressed this and don't have concrete plans to share here but this is still a valid feature request to consider.

zekai-rai commented 9 months ago

@mx-psi , is there any recommended workaround for this problem?

jdheyburn commented 2 months ago

I raised the below PR for telegraf datadog output plugin to be able to rate counts when rate_interval: 10s is defined in the config. I'm sure we can do something similar for datadogexporter here too.

I'm trying to understand the context of this PR which changed rates to be counts. cc @mx-psi