Skip to content

Commit 8bbbc5a

Browse files
committed
use feature gate to disable metrics remapping
1 parent 7eed9ea commit 8bbbc5a

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

exporter/datadogexporter/factory.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@ var metricExportNativeClientFeatureGate = featuregate.GlobalRegistry().MustRegis
5353
featuregate.WithRegisterDescription("When enabled, metric export in datadogexporter uses native Datadog client APIs instead of Zorkian APIs."),
5454
)
5555

56+
var metricRemappingEnabledFeatureGate = featuregate.GlobalRegistry().MustRegister(
57+
"exporter.datadogexporter.metricremappingenabled",
58+
featuregate.StageBeta,
59+
featuregate.WithRegisterDescription("When set the Datadog Exporter does not remap Opentelemetry metrics to Datadog semantics."),
60+
)
61+
5662
// noAPMStatsFeatureGate causes the trace consumer to skip APM stats computation.
5763
var noAPMStatsFeatureGate = featuregate.GlobalRegistry().MustRegister(
5864
"exporter.datadogexporter.DisableAPMStats",
@@ -65,6 +71,11 @@ func isMetricExportV2Enabled() bool {
6571
return metricExportNativeClientFeatureGate.IsEnabled()
6672
}
6773

74+
// isMetricRemappingEnabled returns true if the datadogexporter should generate Datadog-compliant metrics from OpenTelemetry metrics
75+
func isMetricRemappingEnabled() bool {
76+
return metricRemappingEnabledFeatureGate.IsEnabled()
77+
}
78+
6879
func isLogsAgentExporterEnabled() bool {
6980
return logsAgentExporterFeatureGate.IsEnabled()
7081
}

exporter/datadogexporter/metrics_exporter.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,12 @@ func translatorFromConfig(set component.TelemetrySettings, cfg *Config, attrsTra
5555
options := []otlpmetrics.TranslatorOption{
5656
otlpmetrics.WithDeltaTTL(cfg.Metrics.DeltaTTL),
5757
otlpmetrics.WithFallbackSourceProvider(sourceProvider),
58-
otlpmetrics.WithRemapping(),
58+
}
59+
60+
if isMetricRemappingEnabled() {
61+
options = append(options, otlpmetrics.WithRemapping())
62+
} else {
63+
set.Logger.Warn("Metric remapping is disabled in the Datadog exporter. OpenTelemetry metrics must be mapped to Datadog metrics.")
5964
}
6065

6166
if cfg.Metrics.HistConfig.SendAggregations {

0 commit comments

Comments
 (0)