Telegraf Source Code Questions Config AggProcessors

I am recently reading Telegraf source code, from telegraf/agent.go at master · influxdata/telegraf · GitHub it mentioned AggProcessors.
What is the meaning of AggProcessors and what is the difference between Processors and AggProcessors?

Hello @MarkSCQ,
Welcome!
I’m not sure but I bet @jpowers might know :slight_smile:

1 Like

Some light Friday night reading? :slight_smile:

What is the meaning of AggProcessors and what is the difference between Processors and AggProcessors?

The current order of operation in Telegraf is:

  1. Inputs
  2. Processors
  3. Aggregators
  4. Processors, again
  5. Outputs

The AggProcessors are the processors that run after aggregators.

At some point “long ago”, processors were set up to run again after aggregators to be able to modify the output or operate on aggregator output. While this seems harmless, this can also break data if your processors are manipulating or scaling data. We have an open issue to be able to prevent this behavior, but it is not something we have worked on yet.

Good question :slight_smile:

1 Like

Thank you so much for this!!! This confused me for a lot!!!