You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

1 集計関数

特に記載がない限り、ここに記載されているすべての関数は以下でサポートされています:

集計関数は、以下のいずれかで動作します:

  • アイテムの履歴、例: min(/host/key,1h)
  • foreach関数を唯一のパラメータとして、例: min(last_foreach(/*/key))(計算アイテムのみ; トリガーでは使用できません)

関数は追加情報なしでリストされています。関数をクリックすると詳細が表示されます。

関数 説明
avg 定義された評価期間内のアイテムの平均値。
bucket_percentile ヒストグラムのバケットからパーセンタイルを計算します。
count foreach関数によって返された配列内の値の数。
histogram_quantile ヒストグラムのバケットからφ-分位数を計算します。
item_count フィルタ条件に一致する設定内の既存アイテムの数。
kurtosis 定義された評価期間内の収集値の確率分布の「尖度」。
mad 定義された評価期間内の収集値の中央値絶対偏差。
max 定義された評価期間内のアイテムの最大値。
min 定義された評価期間内のアイテムの最小値。
skewness 定義された評価期間内の収集値の確率分布の非対称性。
stddevpop 定義された評価期間内の収集値の母集団標準偏差。
stddevsamp 定義された評価期間内の収集値の標本標準偏差。
sum 定義された評価期間内の収集値の合計。
sumofsquares 定義された評価期間内の収集値の二乗和。
varpop 定義された評価期間内の収集値の母集団分散。
varsamp 定義された評価期間内の収集値の標本分散。

共通パラメータ

  • /host/key は、ホストアイテムの履歴を参照する関数の共通の必須最初のパラメータです。
  • (sec|#num)<:time shift> は、ホストアイテムの履歴を参照する関数の共通の2番目のパラメータで、以下の通りです:
    • sec - 最大評価期間(秒単位、サフィックスが使用可能)、または
    • #num - 最新の収集値の最大評価範囲(ハッシュ記号が先頭に付く場合)
    • time shift(オプション)は、評価ポイントを過去に移動することができます。タイムシフトの指定方法については詳細をご覧ください。

関数の詳細

関数パラメータに関する一般的な注意事項:

  • 関数パラメータはカンマで区切ります
  • オプションの関数パラメータ(またはパラメータの一部)は < > で示されます
  • 関数固有のパラメータは各関数で説明されています
  • /host/key および (sec|#num)<:time shift> パラメータは決して引用符で囲まないでください
avg(/host/key,(sec|#num)<:time shift>)

定義された評価期間内のアイテムの平均値。
サポートされている値の型: FloatInteger
サポートされているforeach関数: avg_foreachcount_foreachexists_foreachlast_foreachmax_foreachmin_foreachsum_foreach

パラメータ: 共通パラメータを参照。

time shiftは、現在の平均値と過去の平均値を比較する必要がある場合に便利です。

例:

avg(/host/key,1h) #現在までの直近1時間の平均値
       avg(/host/key,1h:now-1d) #現在から25時間前から24時間前までの1時間の平均値
       avg(/host/key,#5) #最新5つの値の平均値
       avg(/host/key,#5:now-1d) #直近24時間で受信した値を除く最新5つの値の平均値
bucket_percentile(item filter,time period,percentage)

ヒストグラムのバケットからパーセンタイルを計算します。

パラメータ:

コメント:

  • 計算アイテムでのみサポートされています;
  • この関数は histogram_quantile(percentage/100, bucket_rate_foreach(item filter, time period, 1)) のエイリアスです。
count(func_foreach(item filter,<time period>),<operator>,<pattern>)

foreach関数によって返された配列内の値の数。
サポートされているforeach関数: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach

パラメータ:

  • func_foreach - 返された値の数をカウントするforeach関数。foreach関数の詳細を参照してください。count_foreachとbucket_rate_foreachは追加パラメータをサポートしていることに注意してください。
  • item filter - アイテムフィルタを参照;
  • time period - 時間期間を参照;
  • operator (ダブルクォーテーションで囲む必要があります)。サポートされているoperator:
    eq - 等しい
    ne - 等しくない
    gt - より大きい
    ge - 以上
    lt - より小さい
    le - 以下
    like - パターンを含む場合に一致(大文字小文字を区別)
    bitand - ビットごとのAND
    regexp - patternで指定された正規表現の大文字小文字を区別した一致
    iregexp - patternで指定された正規表現の大文字小文字を区別しない一致
  • pattern - 必要なパターン(文字列引数はダブルクォーテーションで囲む必要があります);operatorが3番目のパラメータで指定されている場合にサポートされます。

コメント:

  • count()を履歴関連のforeach関数(max_foreach、avg_foreachなど)と一緒に使用するとパフォーマンスに影響を与える可能性がありますが、exists_foreach()(構成データのみで動作)はそのような影響はありません。
  • オプションのパラメータoperatorまたはpatternは、カンマの後に空のままにすることはできず、完全に省略する必要があります。
  • 3番目のパラメータとしてbitandを使用する場合、4番目のpatternパラメータは「/」で区切られた2つの数値として指定できます:number_to_compare_with/mask。count()は値とmaskから「ビットごとのAND」を計算し、その結果をnumber_to_compare_withと比較します。「ビットごとのAND」の結果がnumber_to_compare_withと等しい場合、その値がカウントされます。
    number_to_compare_withmaskが等しい場合は、maskのみを指定すればよく(「/」なし)、number_to_compare_withは省略できます。
  • 3番目のパラメータとしてregexpまたはiregexpを使用する場合、4番目のpatternパラメータは通常の正規表現またはグローバル(「@」で始まる)正規表現にできます。グローバル正規表現の場合、大文字小文字の区別はグローバル正規表現の設定から継承されます。regexpマッチングの目的で、float値は常に「.」の後に4桁の小数で表されます。また、大きな数値の場合、10進数(データベースに保存)と2進数(Zabbixサーバーで使用)の表現の違いにより、4番目の小数点以下の桁に影響を与える可能性があることに注意してください。

例:

count(max_foreach(/*/net.if.in[*],1h)) #今から直近1時間でデータを受信したnet.if.inアイテムの数
       count(last_foreach(/*/vfs.fs.size[*,pused]),"gt",95) #ディスク使用率が95%を超えるファイルシステムの数
histogram_quantile(quantile,bucket1,value1,bucket2,value2,...)

ヒストグラムのバケットからφ-分位数を計算します。
サポートされているforeach関数: bucket_rate_foreach

パラメータ:

  • quantile - 0 ≤ φ ≤ 1;
  • bucketN, valueN - 手動で入力するパラメータのペア(2つ以上)またはbucket_rate_foreachの応答。

コメント:

  • 計算アイテムでのみサポートされます;
  • 機能的にはPromQLの'histogram_quantile'に対応します;
  • 最後の'Infinity'バケット("+inf")の値が0の場合は-1を返します。

例:

histogram_quantile(0.75,1.0,last(/host/rate_bucket[1.0]),"+Inf",last(/host/rate_bucket[Inf]))
       histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s))
item_count(item filter)

フィルター条件に一致する設定済みアイテムの数。
サポートされる値の型: 整数

パラメータ:

  • item filter - アイテム選択のための条件。ホストグループ、ホスト、アイテムキー、タグによる参照が可能。ワイルドカードがサポートされている。詳細はitem filterを参照。

コメント:

  • 計算アイテムでのみサポートされる;
  • count(exists_foreach(item_filter)) 関数のエイリアスとして動作する。

例:

item_count(/*/agent.ping?[group="Host group 1"]) #「Host group 1」内で*agent.ping*アイテムを持つホストの数
kurtosis(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の確率分布の「尖度」。詳細は Kurtosis を参照してください。
サポートされている値の型: Float, Integer
サポートされている foreach関数: last_foreach

パラメータ: 共通パラメータ を参照してください。

例:

kurtosis(/host/key,1h) #直近1時間の尖度
mad(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の中央値絶対偏差。参照: 中央値絶対偏差
サポートされている値の型: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照。

例:

mad(/host/key,1h) #現在までの直近1時間の中央値絶対偏差
max(/host/key,(sec|#num)<:time shift>)

定義された評価期間内のアイテムの最大値。
サポートされている値の型: Float, Integer
サポートされているforeach関数: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach

パラメータ: 共通パラメータを参照。

例:

max(/host/key,1h) - min(/host/key,1h) #現在までの直近1時間の最大値と最小値の差分(値のデルタ)を計算する
min(/host/key,(sec|#num)<:time shift>)

定義された評価期間内のアイテムの最小値。
サポートされている値の型: Float, Integer
サポートされているforeach関数: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach

パラメータ: 共通パラメータを参照。

例:

max(/host/key,1h) - min(/host/key,1h) #現在までの直近1時間の最大値と最小値の差分(値のデルタ)を計算する
skewness(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の確率分布の非対称性。参考: Skewness
サポートされている値の型: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照。

例:

skewness(/host/key,1h) #現在までの直近1時間の歪度
stddevpop(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の母集団標準偏差。参考: 標準偏差
サポートされている値の型: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照。

例:

stddevpop(/host/key,1h) #直近1時間の母集団標準偏差
stddevsamp(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の標本標準偏差です。参考: 標準偏差
サポートされている値のタイプ: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照してください。

この関数を動作させるには、少なくとも2つのデータ値が必要です。

例:

stddevsamp(/host/key,1h) #現在までの直近1時間の標本標準偏差
sum(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の合計。
サポートされている値のタイプ: Float, Integer
サポートされているforeach関数: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach

パラメータ: 共通パラメータを参照。

例:

sum(/host/key,1h) #現在までの直近1時間の値の合計
sumofsquares(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の二乗和。
サポートされている値の型: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照。

例:

sumofsquares(/host/key,1h) #現在までの直近1時間の二乗和
varpop(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の母分散。分散も参照してください。
サポートされている値の型: Float, Integer
サポートされているforeach関数: last_foreach

パラメータ: 共通パラメータを参照してください。

例:

varpop(/host/key,1h) #現在までの直近1時間の母分散
varsamp(/host/key,(sec|#num)<:time shift>)

定義された評価期間内に収集された値の標本分散。参考: 分散
サポートされる値の型: Float, Integer
サポートされるforeach関数: last_foreach

パラメータ: 共通パラメータを参照。

この関数を動作させるには、少なくとも2つのデータ値が必要です。

例:

varsamp(/host/key,1h) #現在までの直近1時間の標本分散

サポートされているすべての関数を参照してください。