Struct BatchSpanProcessorOptions
Defined in File batch_span_processor_options.h
Struct Documentation
-
struct BatchSpanProcessorOptions
Struct to hold batch SpanProcessor options.
This is an aggregate type that supports C++20 designated initializers. Default values are read from environment variables when an instance is created:
OTEL_BSP_MAX_QUEUE_SIZE (default: 2048)
OTEL_BSP_SCHEDULE_DELAY (default: 5000ms)
OTEL_BSP_EXPORT_TIMEOUT (default: 30000ms)
OTEL_BSP_MAX_EXPORT_BATCH_SIZE (default: 512)
Usage notes:
If you use default initialization (e.g.,
BatchSpanProcessorOptions opts{}), all fields are set by reading the environment variables (or hardcoded defaults if unset).If you use aggregate initialization with explicit values (positional or designated), those values override the environment variable defaults for the specified fields.
With C++20 designated initializers, you can override only specific fields; unspecified fields will use environment variables or hardcoded defaults.
Examples: // All fields use env vars or hardcoded defaults BatchSpanProcessorOptions opts1{};
// C++20: Only max_queue_size overridden, other fields read from env vars/defaults BatchSpanProcessorOptions opts3{.max_queue_size = 100};
Public Members
-
size_t max_queue_size = batch_span_processor_options_env::GetMaxQueueSizeFromEnv()
The maximum buffer/queue size. After the size is reached, spans are dropped.
-
std::chrono::milliseconds schedule_delay_millis = batch_span_processor_options_env::GetScheduleDelayFromEnv()
-
std::chrono::milliseconds export_timeout = batch_span_processor_options_env::GetExportTimeoutFromEnv()
The maximum time allowed to export data. It is not currently used by the SDK and the parameter is ignored. TODO: Implement the parameter in BatchSpanProcessor
-
size_t max_export_batch_size = batch_span_processor_options_env::GetMaxExportBatchSizeFromEnv()
The maximum batch size of every export. It must be smaller or equal to max_queue_size.