Hi everyone,
After getting some metric buffer overflow warning messages, I am trying to understand better how the fundamental agent parameters interval
, metric_batch_size
, metric_buffer_limit
and flush_interval
impact each other.
Looking the specification, these 3 parameters are defined as:
- interval : Default data collection interval for all inputs
-
metric_batch_size : Telegraf will send metrics to output in batch of at most
metric_batch_size
metrics. -
metric_buffer_limit : Telegraf will cache
metric_buffer_limit
metrics for each output, and will flush this buffer on a successful write. This should be a multiple ofmetric_batch_size
and could not be less than 2 timesmetric_batch_size
. -
flush_interval : Default data flushing interval for all outputs. You should not set this below
interval
. Maximumflush_interval
will beflush_interval
+flush_jitter
What I understand is that
- Data is only written to the output at each
flush_interval
. - If not all the data can be written, it uses the buffer to store.
What I am not sure to understand is when will the buffered data be written to the output again ? Will it be at next flush_interval
occurence ?
Thanks in advance for your help on this !