@@ -6,6 +6,7 @@ package datadogexporter // import "github.com/open-telemetry/opentelemetry-colle
6
6
import (
7
7
"bytes"
8
8
"context"
9
+ "errors"
9
10
"fmt"
10
11
"net/http"
11
12
"sync"
@@ -20,7 +21,6 @@ import (
20
21
"go.opentelemetry.io/collector/exporter"
21
22
"go.opentelemetry.io/collector/pdata/pcommon"
22
23
"go.opentelemetry.io/collector/pdata/pmetric"
23
- "go.uber.org/multierr"
24
24
"go.uber.org/zap"
25
25
zorkian "gopkg.in/zorkian/go-datadog-api.v2"
26
26
@@ -220,29 +220,28 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
220
220
221
221
var sl sketches.SketchSeriesList
222
222
var sp []* pb.ClientStatsPayload
223
+ var errs []error
223
224
if isMetricExportV2Enabled () {
224
225
var ms []datadogV2.MetricSeries
225
226
ms , sl , sp = consumer .(* metrics.Consumer ).All (exp .getPushTime (), exp .params .BuildInfo , tags , metadata )
226
- err = nil
227
227
if len (ms ) > 0 {
228
228
exp .params .Logger .Debug ("exporting native Datadog payload" , zap .Any ("metric" , ms ))
229
229
_ , experr := exp .retrier .DoWithRetries (ctx , func (context.Context ) error {
230
230
ctx = clientutil .GetRequestContext (ctx , string (exp .cfg .API .Key ))
231
231
_ , httpresp , merr := exp .metricsAPI .SubmitMetrics (ctx , datadogV2.MetricPayload {Series : ms }, * clientutil .GZipSubmitMetricsOptionalParameters )
232
232
return clientutil .WrapError (merr , httpresp )
233
233
})
234
- err = multierr . Append ( err , experr )
234
+ errs = append ( errs , experr )
235
235
}
236
236
} else {
237
237
var ms []zorkian.Metric
238
238
ms , sl , sp = consumer .(* metrics.ZorkianConsumer ).All (exp .getPushTime (), exp .params .BuildInfo , tags )
239
- err = nil
240
239
if len (ms ) > 0 {
241
240
exp .params .Logger .Debug ("exporting Zorkian Datadog payload" , zap .Any ("metric" , ms ))
242
241
_ , experr := exp .retrier .DoWithRetries (ctx , func (context.Context ) error {
243
242
return exp .client .PostMetrics (ms )
244
243
})
245
- err = multierr . Append ( err , experr )
244
+ errs = append ( errs , experr )
246
245
}
247
246
}
248
247
@@ -251,7 +250,7 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
251
250
_ , experr := exp .retrier .DoWithRetries (ctx , func (ctx context.Context ) error {
252
251
return exp .pushSketches (ctx , sl )
253
252
})
254
- err = multierr . Append ( err , experr )
253
+ errs = append ( errs , experr )
255
254
}
256
255
257
256
if len (sp ) > 0 {
@@ -262,5 +261,5 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
262
261
}
263
262
}
264
263
265
- return err
264
+ return errors . Join ( errs ... )
266
265
}
0 commit comments