Skip to content

Commit

Permalink
[chore] consistently use multierr in otel instatiation (#8376)
Browse files Browse the repository at this point in the history
This PR updates the instantation of otel instruments in the batch
processor to use multierr instead of returning on the first error it
encounters. This aligns w/ other places in the code where we instatiate
otel instruments.

Signed-off-by: Alex Boten <[email protected]>
  • Loading branch information
Alex Boten authored Sep 7, 2023
1 parent 244ac13 commit 03b56b6
Showing 1 changed file with 8 additions and 17 deletions.
25 changes: 8 additions & 17 deletions processor/batchprocessor/metrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import (
"go.opencensus.io/tag"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/metric"
"go.uber.org/multierr"

"go.opentelemetry.io/collector/config/configtelemetry"
"go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics"
Expand Down Expand Up @@ -130,44 +131,36 @@ func (bpt *batchProcessorTelemetry) createOtelMetrics(mp metric.MeterProvider, c
return nil
}

var err error
var errors, err error
meter := mp.Meter(scopeName)

bpt.batchSizeTriggerSend, err = meter.Int64Counter(
obsreport.BuildProcessorCustomMetricName(typeStr, "batch_size_trigger_send"),
metric.WithDescription("Number of times the batch was sent due to a size trigger"),
metric.WithUnit("1"),
)
if err != nil {
return err
}
errors = multierr.Append(errors, err)

bpt.timeoutTriggerSend, err = meter.Int64Counter(
obsreport.BuildProcessorCustomMetricName(typeStr, "timeout_trigger_send"),
metric.WithDescription("Number of times the batch was sent due to a timeout trigger"),
metric.WithUnit("1"),
)
if err != nil {
return err
}
errors = multierr.Append(errors, err)

bpt.batchSendSize, err = meter.Int64Histogram(
obsreport.BuildProcessorCustomMetricName(typeStr, "batch_send_size"),
metric.WithDescription("Number of units in the batch"),
metric.WithUnit("1"),
)
if err != nil {
return err
}
errors = multierr.Append(errors, err)

bpt.batchSendSizeBytes, err = meter.Int64Histogram(
obsreport.BuildProcessorCustomMetricName(typeStr, "batch_send_size_bytes"),
metric.WithDescription("Number of bytes in batch that was sent"),
metric.WithUnit("By"),
)
if err != nil {
return err
}
errors = multierr.Append(errors, err)

bpt.batchMetadataCardinality, err = meter.Int64ObservableUpDownCounter(
obsreport.BuildProcessorCustomMetricName(typeStr, "metadata_cardinality"),
Expand All @@ -178,11 +171,9 @@ func (bpt *batchProcessorTelemetry) createOtelMetrics(mp metric.MeterProvider, c
return nil
}),
)
if err != nil {
return err
}
errors = multierr.Append(errors, err)

return nil
return errors
}

func (bpt *batchProcessorTelemetry) record(trigger trigger, sent, bytes int64) {
Expand Down

0 comments on commit 03b56b6

Please sign in to comment.