1
votes

I am trying to wrap my head around how collectd reports metrics per specified time period.

For example, I have my reporting interval set to 10 seconds, so it samples once every 10s. So if I get a metric of 500K received on a network interface, is that 500K total received over the 10s time period since the last sample, OR is it 500K received in that one second when collectd was sampling?

(context): I'd like to understand whether the values on a collectd.iface.* metric in Graphite are reported as octets per 10 seconds (in which case I'd have to divide by 10 to get a true octets/s value), or is it already octets/s (in which case what's doing the averaging? Collectd or Graphite?)

Thank you in advance.

1

1 Answers

1
votes

Your mileage may vary, and I can't say more without seeing more details. What I can say is that the "interface" plugin is reporting counters. This means that you have either one of two solutions:

  1. Configure the plugin to transform the counters to rates: this is usually being achieved using the "StoreRates" option

  2. Configure the output plugin to send raw counters (usually the default), and configure graphite to compute the derivative in the render API (I don't recall the exact option name)