This is a translation of the original English documentation page. Help us make it better.

Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

3 Trigger

概要

trigger は、item によって収集されたデータを "評価" し、現在のシステム状態を表す論理式です。

項目はシステムデータを収集するために使用されますが、アラームや注意を要する状態を待って、常にこれらのデータを
追うことは非常に非現実的です。データを "評価” する仕事は、trigger 表現に任せることができます。

trigger 式は、どのような状態のデータが "許容範囲" であるかの閾値を定義することができます。
したがって、入力されるデータが許容範囲を超えた場合、trigger は "発射" され、ステータスが "問題あり" に変更されます。

trigger は、次のようなステータスを持つことができます:

説明
OK これは正常な trigger 状態です。
PROBLEM 通常、何かが起こったことを意味します。例えば、プロセッサの負荷が高すぎる。

基本的な trigger では、あるデータ、例えば、CPU負荷の5分平均のしきい値を設定したいかもしれません。
これは、以下のような trigger 式を定義することで実現されます。

  • item キーで受け取った値に'avg'関数を適用する
  • 5分間を評価期間とする
  • しきい値を'2'に設定する
avg(host/key,5m)>2

この trigger は、5分間の平均が2以上であれば、"発火" します(problemになる)

より複雑な trigger では、式は複数の関数と複数の閾値の組み合わせを含むことができます。
Trigger expressionを参照してください。

ほとんどの trigger 関数はhistoryデータに基づいて評価されますが、 一部の trigger 関数は長期的な分析のために評価されます。例えば、trendavg(), trendcount() などの 長期分析のためのいくつかの trigger 関数は、trends データを使用します。

トリガーを有効にした (構成ステータスを Disabled から Enabled に変更)後、トリガー式は、その項目が値を受け取るか、時間ベースの関数を処理する時間が来るとすぐに評価されます。

ほとんどのトリガー関数はアイテムの値のヒストリデータに基づいて評価されますが、一部のトリガー関数は長期的な分析に使用されます。 trendavg()trendcount() などはトレンド データを使用します。

計算時間

Zabbixサーバーが式の一部である新しい値を受け取るたびに、トリガーが再計算されます。 新しい値を受け取ると、式に含まれる各関数が再計算されます (新しい値を受け取った関数だけではありません)。

さらに、式で時間ベースの関数が使用されている場合は、新しい値が受信されるたび、および30 秒ごとにトリガーが再計算されます。

時間ベースの関数は、nodata()date()dayofmonth()dayofweek()time()now() です。 ; これらは、Zabbix 履歴同期プロセスによって 30 秒ごとに再計算されます。

トレンド関数 のみ を参照するトリガーは、式の最小期間ごとに 1 回評価されます。 トレンド関数も参照してください。

評価期間

評価期間とは、item の履歴を参照する関数で使用されるもので、対象とする期間を指定します。
評価期間は、期間(30秒、10分、1時間)、値域(最新値5個分)のいずれでも指定可能です。

評価期間は "now "まで計測され、ここで "now "は trigger の最新の再計算時間です(上記のCalculation timeを参照)。 "now "は server の "now"時間ではありません。

評価期間では、どちらかを指定します。

  • "now-time period "と "now "の間のすべての値(または、タイムシフトを使用する場合、 "now-time shift-time period "と "now-time_shift "の間)を考慮する。
  • 過去の値のうち、"now" までの num カウントを考慮しない。
    • 指定された期間や数に対して、利用可能な値が0である場合、この関数を使用する trigger や計算 item は、サポートされなくなる。

ということに注意してください。

  • trigger で単一の関数(データ history の参照)のみが使用されている場合、"now" は常に最新の受信値である。 例えば、1時間前に最後の値を受信した場合、評価期間は最新の値までとみなされます。
  • 新しい trigger は、最初の値が受信されるとすぐに計算されます(history 機能)、時間ベースの機能では30秒以内に計算されます。 したがって、trigger が作成されてから、設定された評価期間(たとえば1時間)が経過していなくても、trigger は計算されます。 また、評価範囲が例えば最新の 10 個の値に設定されていたとしても、trigger は最初の値の後に計算されます。

状態不明

次の場合は、トリガー式に不明なオペランドが現れる可能性があります。

  • サポートされていないアイテムが使用されている
  • サポートされているアイテムの関数評価がエラーになる

この場合トリガーは一般的に"不明"と評価されます (例外もあります)。詳細についてはオペランドが不明な式を参照してください。

未知のトリガーについて 通知を受けることも可能です。