@@ -214,16 +214,17 @@ func initializeListeners(cfg *Config) []wrapper.HandlerListener {
214
214
logger .SetLogLevel (logger .LevelDebug )
215
215
}
216
216
extensionManager := extension .BuildExtensionManager ()
217
+ isExtensionRunning := extensionManager .IsExtensionRunning ()
217
218
218
219
// Wrap the handler with listeners that add instrumentation for traces and metrics.
219
220
tl := trace .MakeListener (cfg .toTraceConfig (), extensionManager )
220
- ml := metrics .MakeListener (cfg .toMetricsConfig (), extensionManager )
221
+ ml := metrics .MakeListener (cfg .toMetricsConfig (isExtensionRunning ), extensionManager )
221
222
return []wrapper.HandlerListener {
222
223
& tl , & ml ,
223
224
}
224
225
}
225
226
226
- func (cfg * Config ) toMetricsConfig () metrics.Config {
227
+ func (cfg * Config ) toMetricsConfig (isExtensionRunning bool ) metrics.Config {
227
228
228
229
mc := metrics.Config {
229
230
ShouldRetryOnFailure : false ,
@@ -263,8 +264,10 @@ func (cfg *Config) toMetricsConfig() metrics.Config {
263
264
if mc .KMSAPIKey == "" {
264
265
mc .KMSAPIKey = os .Getenv (DatadogKMSAPIKeyEnvVar )
265
266
}
266
- if mc .APIKey == "" && mc .KMSAPIKey == "" && ! mc .ShouldUseLogForwarder {
267
- logger .Error (fmt .Errorf ("couldn't read DD_API_KEY or DD_KMS_API_KEY from environment" ))
267
+ if ! isExtensionRunning && mc .APIKey == "" && mc .KMSAPIKey == "" && ! mc .ShouldUseLogForwarder {
268
+ logger .Error (fmt .Errorf (
269
+ "couldn't read %s or %s from environment" , DatadogAPIKeyEnvVar , DatadogKMSAPIKeyEnvVar ,
270
+ ))
268
271
}
269
272
270
273
enhancedMetrics := os .Getenv ("DD_ENHANCED_METRICS" )
0 commit comments