accum
accum operator は、フィールドの累積合計を計算します。特定の期間別の数を調べたり、全期間を通じた合計実行数を調べたりできます。
構文
accum <field> [as <field>] [by <field1>, <field2>, ...]
ルール
- accum のエイリアスは省略可能です。エイリアスが指定されない場合、_accum がデフォルトのエイリアスとなります。
- 指定されるフィールドには数値が含まれている必要があります。
- 行に数値以外の値が含まれている場合、その行はスキップされます。
- accum operator を含むクエリをダッシュボードに追加するには、accum operator の前に group by 関数を追加する必要があります。
例
現在までの合計別のリクエスト。accum operator を使用すると、現在までの合計としてユーザ別のリクエストの数を調べることができます。次のようなクエリを実行するとします。
_sourceCategory=IIS/Access (Wyatt OR Luke)
| parse "* * * * * * * * " as date, time, csmethod, cs_uri_stem, cs_uri_query, s_port, c_ip, cs_username
| timeslice by 1m
| count as requests by _timeslice,cs_username
| sort by _timeslice asc,cs_username
| accum requests as running_total
これにより、次のようなすべてのリクエストの現在までの合計の結果が得られます。
ユーザ名別の現在までの合計。もう 1 つのオプションとして、各ユーザのリクエストの現在までの合計を調べることができます。次のようなクエリを実行するとします。
_sourceCategory=IIS/Access (Wyatt OR Luke)
| parse "* * * * * * * * " as date, time, csmethod, cs_uri_stem, cs_uri_query, s_port, c_ip, cs_username
| timeslice by 1m
| count as requests by _timeslice,cs_username
| sort by _timeslice asc,cs_username
| accum requests as running_total by cs_username
これにより、次のような各ユーザのリクエストの現在までの合計の結果が得られます。