Skip to content

Commit

Permalink
Use the concurent batch processor from SDK exporters (#569)
Browse files Browse the repository at this point in the history
**Description:** We have several high-volume span producers that will
benefit from concurrency.
Meanwhile, the new processor will not harm existing low-volume users, so
we use it unconditionally.

Batching parameters have been set to 1000/1500 (batch_size / max_size)
and 32MiB in flight.

**Link to tracking Issue:** 
Fixes #568
  • Loading branch information
jmacd authored Nov 21, 2023
1 parent 69c6e8c commit 7a6d25e
Show file tree
Hide file tree
Showing 17 changed files with 622 additions and 586 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ endif
.PHONY: gotidy
gotidy:
@set -e; for dir in $(ALLINCLUSIVE_MODULES); do \
(echo Tidying "$${dir}" && cd $${dir} && go mod tidy ); \
(echo Tidying "$${dir}" && cd $${dir} && GOWORK=off go mod tidy ); \
done

.PHONY: add-tag
Expand Down
55 changes: 28 additions & 27 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ require (
github.com/lightstep/otel-launcher-go/pipelines v1.21.0
github.com/sethvargo/go-envconfig v0.8.3
github.com/stretchr/testify v1.8.4
go.opentelemetry.io/otel v1.19.0
go.opentelemetry.io/otel/metric v1.19.0
go.opentelemetry.io/otel/sdk v1.19.0
go.opentelemetry.io/otel/trace v1.19.0
go.opentelemetry.io/otel v1.20.0
go.opentelemetry.io/otel/metric v1.20.0
go.opentelemetry.io/otel/sdk v1.20.0
go.opentelemetry.io/otel/trace v1.20.0
)

require (
Expand All @@ -25,7 +25,7 @@ require (
github.com/dgryski/go-metro v0.0.0-20180109044635-280f6062b5bc // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/fxamacker/cbor/v2 v2.4.0 // indirect
github.com/go-logr/logr v1.2.4 // indirect
github.com/go-logr/logr v1.3.0 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-ole/go-ole v1.2.6 // indirect
github.com/goccy/go-json v0.9.11 // indirect
Expand All @@ -34,6 +34,7 @@ require (
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
github.com/google/flatbuffers v2.0.8+incompatible // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
github.com/hashicorp/go-version v1.6.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/klauspost/asmfmt v1.3.2 // indirect
github.com/klauspost/compress v1.17.1 // indirect
Expand All @@ -55,57 +56,57 @@ require (
github.com/mostynb/go-grpc-compression v1.2.2 // indirect
github.com/open-telemetry/otel-arrow v0.6.0 // indirect
github.com/open-telemetry/otel-arrow/collector v0.6.0 // indirect
github.com/open-telemetry/otel-arrow/collector/processor/concurrentbatchprocessor v0.10.0 // indirect
github.com/pierrec/lz4/v4 v4.1.18 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect
github.com/shirou/gopsutil/v3 v3.23.9 // indirect
github.com/shirou/gopsutil/v3 v3.23.10 // indirect
github.com/shoenig/go-m1cpu v0.1.6 // indirect
github.com/tklauser/go-sysconf v0.3.12 // indirect
github.com/tklauser/numcpus v0.6.1 // indirect
github.com/x448/float16 v0.8.4 // indirect
github.com/yusufpapurcu/wmi v1.2.3 // indirect
github.com/zeebo/xxh3 v1.0.2 // indirect
go.opencensus.io v0.24.0 // indirect
go.opentelemetry.io/collector v0.88.0 // indirect
go.opentelemetry.io/collector/component v0.88.0 // indirect
go.opentelemetry.io/collector v0.89.0 // indirect
go.opentelemetry.io/collector/component v0.89.0 // indirect
go.opentelemetry.io/collector/config/configauth v0.88.0 // indirect
go.opentelemetry.io/collector/config/configcompression v0.88.0 // indirect
go.opentelemetry.io/collector/config/configgrpc v0.88.0 // indirect
go.opentelemetry.io/collector/config/confignet v0.88.0 // indirect
go.opentelemetry.io/collector/config/confignet v0.89.0 // indirect
go.opentelemetry.io/collector/config/configopaque v0.88.0 // indirect
go.opentelemetry.io/collector/config/configtelemetry v0.88.0 // indirect
go.opentelemetry.io/collector/config/configtelemetry v0.89.0 // indirect
go.opentelemetry.io/collector/config/configtls v0.88.0 // indirect
go.opentelemetry.io/collector/config/internal v0.88.0 // indirect
go.opentelemetry.io/collector/confmap v0.88.0 // indirect
go.opentelemetry.io/collector/consumer v0.88.0 // indirect
go.opentelemetry.io/collector/exporter v0.88.0 // indirect
go.opentelemetry.io/collector/extension v0.88.0 // indirect
go.opentelemetry.io/collector/confmap v0.89.0 // indirect
go.opentelemetry.io/collector/consumer v0.89.0 // indirect
go.opentelemetry.io/collector/exporter v0.89.0 // indirect
go.opentelemetry.io/collector/extension v0.89.0 // indirect
go.opentelemetry.io/collector/extension/auth v0.88.0 // indirect
go.opentelemetry.io/collector/featuregate v1.0.0-rcv0017 // indirect
go.opentelemetry.io/collector/pdata v1.0.0-rcv0017 // indirect
go.opentelemetry.io/collector/processor v0.88.0 // indirect
go.opentelemetry.io/collector/processor/batchprocessor v0.88.0 // indirect
go.opentelemetry.io/collector/receiver v0.88.0 // indirect
go.opentelemetry.io/collector/featuregate v1.0.0-rcv0018 // indirect
go.opentelemetry.io/collector/pdata v1.0.0-rcv0018 // indirect
go.opentelemetry.io/collector/processor v0.89.0 // indirect
go.opentelemetry.io/collector/receiver v0.89.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.45.0 // indirect
go.opentelemetry.io/contrib/instrumentation/host v0.45.0 // indirect
go.opentelemetry.io/contrib/instrumentation/runtime v0.45.0 // indirect
go.opentelemetry.io/contrib/propagators/b3 v1.20.0 // indirect
go.opentelemetry.io/contrib/propagators/ot v1.20.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric v0.42.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v0.42.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.19.0 // indirect
go.opentelemetry.io/otel/sdk/metric v1.19.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v0.43.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.20.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.20.0 // indirect
go.opentelemetry.io/otel/sdk/metric v1.20.0 // indirect
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.26.0 // indirect
golang.org/x/mod v0.11.0 // indirect
golang.org/x/net v0.17.0 // indirect
golang.org/x/sys v0.13.0 // indirect
golang.org/x/sync v0.3.0 // indirect
golang.org/x/sys v0.14.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/tools v0.9.1 // indirect
golang.org/x/tools v0.10.0 // indirect
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20230822172742-b8732ec3820d // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20230920204549-e6e6cdab5c13 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20231012201019-e917dd12ba7a // indirect
google.golang.org/grpc v1.59.0 // indirect
google.golang.org/protobuf v1.31.0 // indirect
Expand Down
Loading

0 comments on commit 7a6d25e

Please sign in to comment.