Telegraf Agent Configuration To Avoid Metric Buffer Overflow

- 1 answer

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 of metric_batch_size and could not be less than 2 times metric_batch_size .
  • flush_interval : Default data flushing interval for all outputs. You should not set this below interval . Maximum flush_interval will be flush_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 !



Answered and solved thanks to Jay_Clifford

Yes. Data will be sent at the next flush interval.

(cf. Telegraf community post)