Collects events into sessions, which are series of events that are no further than maxpause apart (defaults to 15m), and then performs an aggregate function across the events that make up the session.

Function Traits: Aggregate

ParameterTypeRequiredDefaultDescription
function[a]Array of Aggregate Functionsoptionalcount(as=_count) Specifies which aggregate functions to perform on each session.
maxpausestringoptional15m Defines the maximum pause between sessions i.e., events more than this far apart will become separate sessions.

[a] The argument name function can be omitted.

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

logscale
session("count(as=_count)")

and:

logscale
session(function="count(as=_count)")

session() Examples

Count unique visitors (each visitor defined as non-active for 15 minutes)

logscale
groupby(client_ip, function=session(maxpause=15m))
| count()

Find the visits with most clicks

logscale
groupby(cookie_id, function=session(maxpause=15m, count(as=clicks)))
| sort(clicks)

Find the minimum and maximum values of the field bet within each session

logscale
groupby(cookie_id, function=session([max(bet),min(bet)]))