Skip to content

Commit e027722

Browse files
authored
[chore][exporter/datadogexporter] use errors.Join instead of go.uber.org/multierr (open-telemetry#27888)
**Description:** use errors.Join instead of go.uber.org/multierr **Link to tracking Issue:** <Issue number if applicable> open-telemetry#25121 **Testing:** <Describe what testing was performed and which tests were added.> **Documentation:** <Describe the documentation added.>
1 parent 43e259f commit e027722

File tree

4 files changed

+17
-14
lines changed

4 files changed

+17
-14
lines changed

exporter/datadogexporter/config.go

+5-4
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import (
1515
"go.opentelemetry.io/collector/config/configopaque"
1616
"go.opentelemetry.io/collector/confmap"
1717
"go.opentelemetry.io/collector/exporter/exporterhelper"
18-
"go.uber.org/multierr"
1918
"go.uber.org/zap"
2019

2120
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/datadogexporter/internal/hostmetadata/valid"
@@ -517,13 +516,15 @@ func (e renameError) Error() string {
517516
)
518517
}
519518

520-
func handleRemovedSettings(configMap *confmap.Conf) (err error) {
519+
func handleRemovedSettings(configMap *confmap.Conf) error {
520+
var errs []error
521521
for _, removedErr := range removedSettings {
522522
if configMap.IsSet(removedErr.oldName) {
523-
err = multierr.Append(err, removedErr)
523+
errs = append(errs, removedErr)
524524
}
525525
}
526-
return
526+
527+
return errors.Join(errs...)
527528
}
528529

529530
var _ confmap.Unmarshaler = (*Config)(nil)

exporter/datadogexporter/config_warnings.go

+5-2
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
package datadogexporter // import "github.com/open-telemetry/opentelemetry-collector-contrib/exporter/datadogexporter"
55

66
import (
7+
"errors"
78
"fmt"
89

910
"go.opentelemetry.io/collector/confmap"
10-
"go.uber.org/multierr"
1111
)
1212

1313
var _ error = (*deprecatedError)(nil)
@@ -60,15 +60,18 @@ func (e deprecatedError) UpdateCfg(cfg *Config) {
6060
// handleRenamedSettings for a given configuration map.
6161
// Error out if any pair of old-new options are set at the same time.
6262
func handleRenamedSettings(configMap *confmap.Conf, cfg *Config) (warnings []error, err error) {
63+
var errs []error
6364
for _, renaming := range renamedSettings {
6465
isOldNameUsed, errCheck := renaming.Check(configMap)
65-
err = multierr.Append(err, errCheck)
66+
errs = append(errs, errCheck)
6667

6768
if errCheck == nil && isOldNameUsed {
6869
warnings = append(warnings, renaming)
6970
// only update config if old name is in use
7071
renaming.UpdateCfg(cfg)
7172
}
7273
}
74+
err = errors.Join(errs...)
75+
7376
return
7477
}

exporter/datadogexporter/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ require (
4242
go.opentelemetry.io/collector/receiver v0.87.1-0.20231017160804-ec0725874313
4343
go.opentelemetry.io/collector/receiver/otlpreceiver v0.87.1-0.20231017160804-ec0725874313
4444
go.opentelemetry.io/collector/semconv v0.87.1-0.20231017160804-ec0725874313
45-
go.uber.org/multierr v1.11.0
4645
go.uber.org/zap v1.26.0
4746
google.golang.org/protobuf v1.31.0
4847
gopkg.in/yaml.v2 v2.4.0
@@ -206,6 +205,7 @@ require (
206205
go.opentelemetry.io/otel/trace v1.19.0 // indirect
207206
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
208207
go.uber.org/atomic v1.11.0 // indirect
208+
go.uber.org/multierr v1.11.0 // indirect
209209
golang.org/x/exp v0.0.0-20230711023510-fffb14384f22 // indirect
210210
golang.org/x/mod v0.13.0 // indirect
211211
golang.org/x/net v0.17.0 // indirect

exporter/datadogexporter/metrics_exporter.go

+6-7
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package datadogexporter // import "github.com/open-telemetry/opentelemetry-colle
66
import (
77
"bytes"
88
"context"
9+
"errors"
910
"fmt"
1011
"net/http"
1112
"sync"
@@ -20,7 +21,6 @@ import (
2021
"go.opentelemetry.io/collector/exporter"
2122
"go.opentelemetry.io/collector/pdata/pcommon"
2223
"go.opentelemetry.io/collector/pdata/pmetric"
23-
"go.uber.org/multierr"
2424
"go.uber.org/zap"
2525
zorkian "gopkg.in/zorkian/go-datadog-api.v2"
2626

@@ -220,29 +220,28 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
220220

221221
var sl sketches.SketchSeriesList
222222
var sp []*pb.ClientStatsPayload
223+
var errs []error
223224
if isMetricExportV2Enabled() {
224225
var ms []datadogV2.MetricSeries
225226
ms, sl, sp = consumer.(*metrics.Consumer).All(exp.getPushTime(), exp.params.BuildInfo, tags, metadata)
226-
err = nil
227227
if len(ms) > 0 {
228228
exp.params.Logger.Debug("exporting native Datadog payload", zap.Any("metric", ms))
229229
_, experr := exp.retrier.DoWithRetries(ctx, func(context.Context) error {
230230
ctx = clientutil.GetRequestContext(ctx, string(exp.cfg.API.Key))
231231
_, httpresp, merr := exp.metricsAPI.SubmitMetrics(ctx, datadogV2.MetricPayload{Series: ms}, *clientutil.GZipSubmitMetricsOptionalParameters)
232232
return clientutil.WrapError(merr, httpresp)
233233
})
234-
err = multierr.Append(err, experr)
234+
errs = append(errs, experr)
235235
}
236236
} else {
237237
var ms []zorkian.Metric
238238
ms, sl, sp = consumer.(*metrics.ZorkianConsumer).All(exp.getPushTime(), exp.params.BuildInfo, tags)
239-
err = nil
240239
if len(ms) > 0 {
241240
exp.params.Logger.Debug("exporting Zorkian Datadog payload", zap.Any("metric", ms))
242241
_, experr := exp.retrier.DoWithRetries(ctx, func(context.Context) error {
243242
return exp.client.PostMetrics(ms)
244243
})
245-
err = multierr.Append(err, experr)
244+
errs = append(errs, experr)
246245
}
247246
}
248247

@@ -251,7 +250,7 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
251250
_, experr := exp.retrier.DoWithRetries(ctx, func(ctx context.Context) error {
252251
return exp.pushSketches(ctx, sl)
253252
})
254-
err = multierr.Append(err, experr)
253+
errs = append(errs, experr)
255254
}
256255

257256
if len(sp) > 0 {
@@ -262,5 +261,5 @@ func (exp *metricsExporter) PushMetricsData(ctx context.Context, md pmetric.Metr
262261
}
263262
}
264263

265-
return err
264+
return errors.Join(errs...)
266265
}

0 commit comments

Comments
 (0)