Calculates the rate for a counter field. This function can show the rate at which a counter changes. The result is returned in a field named _rate with the unit being events/second.

counterAsRate is often expected to be used as the function parameter in a timeChart() or groupBy(). Note, this function requires at least two points for calculating a rate. When used in a Time Chart, it is important to have at least two points in each bucket to get a rate.

This function expects the field to have monotonic increasing values over time. If this is not the case no result is returned. Counters are often reset at server restarts or deployments. Running Rate over a reset, would not return a result. Using counterAsRate() in a timeChart() returns a rate for each bucket where the counter was not reset and nothing for the buckets where the counter was reset.

Function Traits: Aggregate

ParameterTypeRequiredDefaultDescription
asstringoptional_rate Name of output field.
field[a]stringrequired  Field from which to extract a number and over which to calculate rate.

[a] The argument name field can be omitted.

The parameter name for field can be omitted; the following forms are equivalent:

logscale
counterAsRate("value")

and:

logscale
counterAsRate(field="value")

countasrate() Examples

Show the rate of a counter over time

logscale
timechart(function=counterasrate(counter))

Show the rate of a counter with one series for each host over time, displaying the rate as events per minute.

logscale
timechart(host, function=counterasrate(counter), unit="1/sec to 1/min")