集計計算は、Zabbixサーバーによって複数のアイテムから情報を収集し、使用する集計関数に応じて集計を計算できる計算アイテムタイプです。
集計計算では、監視対象のホストでエージェントを実行する必要はありません。
集計を取得するには、サポートされている集計関数のいずれかを使用します: avg、max、min、sumなど。次にforeach関数を唯一のパラメーターとして使用し、そのアイテムフィルターを使用して必要なアイテムを選択します
foreach関数(例: avg_foreach、count_foreachなど)は、選択されたアイテムごとに1つの集計値を返します。アイテムは、アイテムフィルター(/host/key?[group="host group"]
)を使用してアイテムヒストリから選択されます。詳細については、foreach関数を参照してください。
一部のアイテムに要求された期間のデータがない場合、計算では無視されます。どのアイテムにもデータがない場合、関数はエラーを返します。
または、集計のパラメーターとして複数のアイテムをリストすることもできます:
ここでfunction
はヒストリ/トレンド関数でなければならないことに注意してください。
集計の結果が浮動小数点値になった場合、集計されたアイテムの情報の種類が数値 (符号なし)であれば、整数に切り詰められます。
ユーザーマクロとローレベルディスカバリマクロは、次の場合にサポートされます:
集計計算は、次の場合にサポートされなくなる可能性があります:
集計のためのキーの例です。
ホストグループ 'MySQL Servers' の総ディスク容量
そのホストでnet.if.in[*]に一致するすべての item の最新値の合計
ホストグループ ’MySQL Servers' の平均プロセッサ負荷
ホストグループ ’MySQL Servers’ の1秒あたりのクエリ数の5分平均値
特定のタグを持つ複数のホストグループに属する全ホストのCPU負荷の平均値
avg(last_foreach(/*/system.cpu.load?[(group="Servers A" or group="Servers B" or group="Servers C") and (tag="Service:" or tag="Importance:High")]))
ホストグループ全体の最新の item 値合計で計算します
sum(last_foreach(/*/net.if.out[eth0,bytes]?[group="video"])) / sum(last_foreach(/*/nginx_stat.sh[active]?[group="video"]))
ホストグループ'Zabbix servers'でサポートされていないアイテムの総数。
式 (関数呼び出しを含む) は、ヒストリー、トレンド、または foreach 関数 パラメーターとして使用できません。 ただし、これらの関数自体は、他の (非ヒストリ) 関数パラメーターで使用できます。
式 | 例 |
---|---|
有効 | avg(last(/host/key1),last(/host/key2)*10,last(/host/key1)*100) max(avg(avg_foreach(/*/system.cpu.load?[group="Servers A"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers B"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers C"],5m))) |
I無効 | sum(/host/key,10+2) sum(/host/key, avg(10,2)) sum(/host/key,last(/host/key2)) |
次のような表現に注意してください。
式の両方の部分が常に同じ値のセットになるとは限りません。 式の一部が評価されている間に、要求された期間の新しい値が到着し、式の他の部分が異なる値のセットを持つことがあります。