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 | マクロを含む文字列を入力すると、監視 > 障害 に動的なリアルタイムデータを表示できます。あるいは、このフィールドを空欄にすると、トリガー式に含まれるすべてのアイテムの最新値が表示されます。 トリガー名と同じマクロセットがサポートされ、動的に解決できます。たとえば、次のようになります。 {ITEM.VALUE<1-9>} は、トリガーの状態が変更された時点のアイテム値に解決されます(障害の作成、復旧、手動クローズ、または相関によるクローズ)。 {ITEM.LASTVALUE<1-9>} は最新のアイテム値に解決されます。 障害を手動でクローズしても新しい値は生成されないため、どちらのマクロも引き続き障害発生時点の値を表示します。また、最新値が 最大履歴表示期間 より古い場合、両方のマクロは UNKNOWN に解決されることに注意してください(管理 > 一般 を参照)。 |
| Severity | ボタンをクリックして、必要なトリガーの 深刻度 を設定します。 |
| Expression | 障害の条件を定義するために使用される論理 式 です。 時間サフィックス と メモリサイズサフィックス がサポートされています。 式に含まれるすべての条件が満たされると、つまり式が TRUE と評価されると、障害が作成されます。Recovery expression に追加の復旧条件が指定されていない限り、式が FALSE と評価されるとすぐに障害は復旧します。 |
| OK event generation | OKイベント生成オプション: Expression - 障害イベントと同じ式に基づいて OKイベントが生成されます; Recovery expression - 障害式が FALSE と評価され、復旧式が TRUE と評価された場合に OKイベントが生成されます; None - この場合、トリガーは自動的に OK 状態に戻りません。 |
| Recovery expression | 元の障害式がすでに FALSE と評価された後、障害が復旧する前に満たす必要がある追加条件を定義する論理 式(任意)です。 Recovery expression は、トリガーの ヒステリシス に役立ちます。障害式がまだ 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文字)は、イベントメニュー のリンクとして、いくつかの Webインターフェース上の場所で利用できます。たとえば、監視 > 障害 で障害名をクリックしたときや、ダッシュボードの 障害 ウィジェットで利用できます。 トリガー名と同じマクロセットに加えて、{EVENT.ID}, {HOST.ID}, {TRIGGER.ID} がサポートされます。注: 秘密値を持つユーザーマクロはURL内で解決されません。 |
| Description | このトリガーに関する追加情報を提供するためのテキストフィールドです。特定の障害を修正するための手順、担当者の連絡先などを含めることができます。 トリガー名と同じマクロセットがサポートされます。 |
| Enabled | 必要に応じて、このチェックボックスをオフにするとトリガーを無効にできます。 無効化されたトリガーの障害は Webインターフェースに表示されなくなりますが、削除されることはありません。 |
タグ タブでは、トリガーレベルの タグ を定義できます。 このトリガーのすべての障害には、ここで入力した値がタグとして付与されます。

さらに、継承されたタグとトリガータグ オプションを使用すると、トリガーがそのテンプレート由来の場合に、テンプレートレベルで定義されたタグを表示できます。 同じタグを持つテンプレートが複数ある場合、それらのタグは1回だけ表示され、テンプレート名はカンマで区切られます。 トリガーはホストレベルのタグを「継承」して表示することはありません。
| Parameter | Description |
|---|---|
| Name/Value | トリガーイベントを識別するためのカスタムタグを設定します。 タグはタグ名と値のペアです。名前のみを使用することも、値と組み合わせることもできます。トリガーには、同じ名前で値が異なる複数のタグを持たせることができます。 ユーザーマクロ、コンテキスト付きユーザーマクロ、低レベルディスカバリマクロ、および {{ITEM.VALUE}}, {{ITEM.LASTVALUE}} を含むマクロ 関数 がイベントタグでサポートされています。低レベルディスカリマクロは、マクロコンテキスト内で使用できます。{TRIGGER.ID} マクロはトリガータグ値でサポートされています。これは、トリガープロトタイプから作成されたトリガーを識別したり、たとえばメンテナンス中にこれらのトリガーからの障害を抑制したりするのに役立ちます。 展開後の値の合計長が255を超える場合、255文字に切り詰められます。 イベントタグでサポートされるすべての マクロ を参照してください。 イベントタグ は、イベント相関、アクション条件で使用でき、監視 > 障害 または 障害 ウィジェットでも表示されます。 |
依存関係 タブには、トリガーのすべての 依存関係 が含まれています。
新しい依存関係を追加するには、追加 をクリックします。
既存のトリガーを開き、クローン ボタンをクリックしてから別名で保存することでも、トリガーを設定できます。
トリガー式のテスト
受信した値に応じて、式の結果がどうなるかをテストできます。
以下の公式テンプレートの式を例として使用します。
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 になります。
つまり、現在の値が警告値を超えており、問題が発生していることを意味します。