2 トリガーの設定

このページでは、ZabbixのWebインターフェースでトリガーを設定する方法について説明します。

公式のZabbixテンプレートには、あらかじめ定義されたトリガーが含まれていることに注意してください。
Linuxの監視にテンプレートを適用する方法については、ガイドを参照してください。
また、設定済みのトリガーを一括更新することも可能です。

その他のリソース:

設定

トリガーを設定するには、次の手順を実行します。

  • データ収集 > ホスト に移動する
  • ホストの行にある トリガー をクリックする
  • 右側の トリガーの作成 をクリックする(または、既存のトリガーを編集するにはトリガー名をクリックする)
  • フォームにトリガーのパラメーターを入力する

トリガー タブには、トリガーの基本属性がすべて含まれています。

必須入力フィールドには、赤いアスタリスクが付いています。

Parameter Description
Name トリガー名。
サポートされるマクロは次のとおりです: {HOST.HOST}, {HOST.NAME}, {HOST.PORT}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.VALUE.AGE}, {ITEM.VALUE.DATE}, {ITEM.VALUE.TIME}, {ITEM.VALUE.TIMESTAMP}, {ITEM.LASTVALUE}, {ITEM.LASTVALUE.AGE}, {ITEM.LASTVALUE.DATE}, {ITEM.LASTVALUE.TIME}, {ITEM.LASTVALUE.TIMESTAMP}, {ITEM.LOG.*}, および {$MACRO} ユーザーマクロ。
$1, $2...$9 マクロは、式の1番目、2番目...9番目の定数を参照するために使用できます。
: $1-$9 マクロは、比較的単純でわかりやすい式で定数を参照している場合に正しく解決されます。たとえば、名前 "Processor load above $1 on {HOST.NAME}" は、式が last(/New host/system.cpu.load[percpu,avg1])>5 の場合、自動的に "Processor load above 5 on New host" に変わります。
Event name 定義すると、この名前が問題イベント名の作成に使用されます。デフォルトでは、イベント名はトリガー名と同じです。
イベント名は、問題データを含む意味のあるアラートを作成するために使用できます(を参照)。
トリガー名と同じマクロセットに加えて、{TIME}, {TIMESTAMP}, および {?EXPRESSION} 式マクロがサポートされます。
Operational data 運用データでは、マクロとともに任意の文字列を定義できます。マクロは 監視 > 問題 でリアルタイムデータに動的に解決されます。トリガー名内のマクロ(上記参照)は、問題発生時点の値に解決され、静的な問題名の基礎になりますが、運用データ内のマクロは、最新情報を動的に表示し続けることができます。トリガーレベルで運用データが設定されていない場合は、式に含まれるすべてのアイテムの最新値が表示されます。
トリガー名と同じマクロセットがサポートされます。
Severity ボタンをクリックして、必要なトリガーの深刻度を設定します。
Expression 問題の条件を定義するために使用する論理
時間サフィックスおよびメモリサイズサフィックスがサポートされます。
式に含まれるすべての条件が満たされると、つまり式が TRUE と評価されると、問題が作成されます。Recovery expression で追加の復旧条件が指定されていない限り、式が FALSE と評価された時点で問題は解決されます。
OK event generation OKイベント生成のオプション:
Expression - 問題イベントと同じ式に基づいて OK イベントが生成されます。
Recovery expression - 問題式が FALSE と評価され、復旧式が TRUE と評価された場合に OK イベントが生成されます。
None - この場合、トリガーは自動的に OK 状態に戻りません。
Recovery expression 元の問題式がすでに FALSE と評価された後、問題が解決される前に満たす必要がある追加条件を定義する論理(任意)。
復旧式は、トリガーのヒステリシスに役立ちます。問題式がまだ TRUE の場合、復旧式だけで問題を解決することはできません
このフィールドは、OK event generation で 'Recovery expression' が選択されている場合にのみ使用できます。
PROBLEM event generation mode 問題イベントの生成モード:
Single - トリガーが初めて 'Problem' 状態になったときに1つのイベントが生成されます。
Multiple - トリガーの 'Problem' 評価のたびにイベントが生成されます。
OK event closes OKイベントが閉じる対象を選択します:
All problems - このトリガーのすべての問題。
All problems if tag values match - イベントタグ値が一致するトリガーの問題のみ。
Tag for matching イベント相関に使用するイベントタグ名を入力します。
このフィールドは、OK event closes プロパティで 'All problems if tag values match' が選択されている場合に表示され、この場合は必須です。
Allow manual close このトリガーによって生成された問題イベントの手動クローズを許可する場合にチェックします。手動クローズは、問題イベントを確認する際に可能です。
Menu entry name 空でない場合、ここで入力した名前(最大64文字)が、Menu entry URL パラメーターで指定されたトリガーURLのラベルとして、いくつかの Webインターフェース上の場所で使用されます。空の場合は、既定の名前 Trigger URL が使用されます。
トリガー名と同じマクロセットに加えて、{EVENT.ID}, {HOST.ID}, および {TRIGGER.ID} がサポートされます。
Menu entry URL 空でない場合、ここで入力したURL(最大2048文字)は、イベントメニュー内のリンクとして、たとえば 監視 > 問題 で問題名をクリックしたときや、ダッシュボードウィジェット 問題 で利用できます。
トリガー名と同じマクロセットに加えて、{EVENT.ID}, {HOST.ID}, および {TRIGGER.ID} がサポートされます。注: 秘密値を持つユーザーマクロはURL内で解決されません。
Description このトリガーに関する追加情報を提供するためのテキストフィールドです。特定の問題の修正手順、担当者の連絡先などを含めることができます。
トリガー名と同じマクロセットがサポートされます。
Enabled 必要に応じて、このボックスのチェックを外すとトリガーを無効にできます。
無効化されたトリガーの問題は Webインターフェースに表示されなくなりますが、削除されるわけではありません。

Tags タブでは、トリガーレベルのタグを定義できます。 このトリガーのすべての問題には、ここで入力した値のタグが付与されます。

さらに、Inherited and trigger tags オプションを使用すると、トリガーがそのテンプレートに由来する場合に、テンプレートレベルで定義されたタグを表示できます。 同じタグを持つテンプレートが複数ある場合、それらのタグは1回だけ表示され、テンプレート名はカンマで区切られます。 トリガーはホストレベルのタグを「継承」して表示することはありません。

Parameter Description
Name/Value トリガーイベントを識別するためのカスタムタグを設定します。
タグはタグ名と値のペアです。名前のみを使用することも、値と組み合わせることもできます。トリガーには、同じ名前で値が異なる複数のタグを設定できます。
ユーザーマクロ、コンテキスト付きユーザーマクロ、低レベルディスカバリマクロ、および {{ITEM.VALUE}}, {{ITEM.LASTVALUE}} を使用するマクロ関数がイベントタグでサポートされます。低レベルディスカバリマクロは、マクロコンテキスト内で使用できます。
{TRIGGER.ID} マクロはトリガータグ値でサポートされます。これは、トリガープロトタイプから作成されたトリガーを識別したり、たとえばメンテナンス中にこれらのトリガーからの問題を抑制したりするのに役立ちます。
展開後の値の合計長が255を超える場合、255文字に切り詰められます。
イベントタグでサポートされるすべてのマクロを参照してください。
イベントタグは、イベント相関、アクション条件で使用でき、監視 > 問題 または 問題 ウィジェットでも表示されます。

Dependencies タブには、トリガーのすべての依存関係が含まれています。

新しい依存関係を追加するには、Add をクリックします。

既存のトリガーを開き、Clone ボタンをクリックしてから別の名前で保存することでも、トリガーを設定できます。

トリガー式のテスト

受信した値に応じて、式の結果がどうなるかをテストできます。

以下の公式テンプレートの式を例として使用します。

avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}
or
last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}

式をテストするには、式フィールドの下にある Expression constructor をクリックします。

Expression constructor では、個々の式がすべて一覧表示されます。
テストウィンドウを開くには、式一覧の下にある Test をクリックします。

テストウィンドウでは、サンプル値(この例では '80'、'70'、'0'、'1')を入力し、Test ボタンをクリックして式の結果を確認できます。

個々の式の結果と、式全体の結果の両方を確認できます。

"TRUE" は、指定した式が正しいことを意味します。
この例の A では、"80" は {$TEMP_WARN} で指定された値より大きく、この例では "70" です。
予想どおり、"TRUE" の結果が表示されます。

"FALSE" は、指定した式が正しくないことを意味します。
この例の B では、{$TEMP_WARN_STATUS} の "1" は、指定された値であるこの例の "0" と等しくなければなりません。
予想どおり、"FALSE" の結果が表示されます。

選択されている式の種類は "OR" です。
指定された条件の少なくとも 1 つ(この場合は A または B)が TRUE であれば、全体の結果も TRUE になります。
つまり、現在の値が警告値を超えており、問題が発生していることを意味します。