1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2024-12-04 09:43:23 +02:00

[jaeger] Added WithBatchMaxCount as an option (#931)

This commit is contained in:
Michal Hruby 2020-07-10 15:28:45 +01:00 committed by GitHub
parent d979977a40
commit 4dec0addb0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -42,6 +42,9 @@ type options struct {
// BufferMaxCount defines the total number of traces that can be buffered in memory
BufferMaxCount int
// BatchMaxCount defines the maximum number of spans sent in one batch
BatchMaxCount int
Config *sdktrace.Config
// RegisterGlobal is set to true if the trace provider of the new pipeline should be
@ -65,6 +68,13 @@ func WithBufferMaxCount(bufferMaxCount int) Option {
}
}
// WithBatchMaxCount defines the maximum number of spans in one batch
func WithBatchMaxCount(batchMaxCount int) Option {
return func(o *options) {
o.BatchMaxCount = batchMaxCount
}
}
// WithSDK sets the SDK config for the exporter pipeline.
func WithSDK(config *sdktrace.Config) Option {
return func(o *options) {
@ -134,6 +144,11 @@ func NewRawExporter(endpointOption EndpointOption, opts ...Option) (*Exporter, e
bundler.BufferedByteLimit = o.BufferMaxCount
}
// The default value bundler uses is 10, increase to send larger batches
if o.BatchMaxCount != 0 {
bundler.BundleCountThreshold = o.BatchMaxCount
}
e.bundler = bundler
return e, nil
}