-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Description
Component(s)
exporter/elasticsearch
Is your feature request related to a problem? Please describe.
PR #41338 updated the used configuration to migrate to the new QueueBatch configuration and deprecated the batcher configuration. These changes were released in v0.132.0.
The Elasticsearch exporter should start using sending_queue as the default and remove its own internal batching+buffering logic.
Describe the solution you'd like
Remove batcher configuration and default to sending_queue#batch enabled. Choose the default configuration to be as close to the Elasticsearch exporter's internal async buffering as possible. Current defaults are:
- Exporter will batch data internally in an async manner and flush the data on maturity as per the defined configuration.
- The current default configurations are as follows:
batcher: flush_timeout: 10s # This is not used sizer: "items" min_size: 5000 flush: bytes: 5MB interval: 10s num_workers: runtime.NumCPU() timeout: 90s # This is defined using confighttp#ClientConfig and is used to define the flush timeout
sending_queue configuration closest to the default ES exporter configuration would be something like below:
sending_queue:
enabled: true
num_consumers: 10
wait_for_result: false
block_on_overflow: true
sizer: requests
queue_size: 10 # defined based on the size of the `items` buffered channel in async bulk indexer
batch:
flush_timeout: 10s # This is equivalent to flush interval
min_size: 5e+6
max_size: ?? (TBD)
sizer: "bytes"
Note that the sending queue configuration does not use batcher or flush. Infact both these configs conflict with exporterhelper's configuration and cause confusion and maintenance overhead.
Describe alternatives you've considered
Alternatively, we can continue supporting both (ES exporter's internal batching and sending queue). This option creates maintenance overhead and difficulty to adapt the latest deveopments in exporterhelper.
Additional context
No response
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.