Zabbixにおいて、トリガーを追加する方法について紹介します。
トリガー作成の手順
① Zabbix サーバにログインし、左メニューから 「データ収集」 → 「ホスト」をクリックします。
② 画面中央リストから対象のホスト名をクリックし、サブタブの 「トリガー」 を開きます。
③ 右上の[トリガーの作成]をクリックして作成フォームを開きます。
④ 以下の「各パラメータ解説」を参考に入力 し、画面右下の「追加」を押して保存します。
① [設定] -> [ホスト] をクリックします。
② トリガーを追加したいホスト名の横にある[トリガー]をクリックします。
以下のパラメータを表に整理しました。
パラメータ | 説明 |
---|---|
Name | トリガー名。{HOST.NAME} 、ユーザーマクロ {$MACRO} 、定数参照マクロ $1 ~$9 が利用可能 |
Expression | 監視アイテムの関数呼び出し+比較演算子で構成 例: {MyServer:system.cpu.load[percpu,avg1].last()}>5 シンタックスハイライト+括弧整形補助付き |
Severity | 問題の重大度を選択(Not classified/Information/Warning/Average/High/Disaster) |
OK event generation | ・Expression:問題式と同じ式が FALSE に変化すると OK イベント発生 ・Recovery expression:問題式が FALSE かつ回復式が TRUE のとき OK ・None:自動 OK イベントを抑止 |
Recovery expression(任意) | 問題式解除に追加で必要な条件を定義。ヒステリシス制御に有効 |
Dependencies | 他トリガーとの依存関係を設定し、親トリガー発生中は子トリガーの通知を抑止 |
Tags | 複数のタグでトリガーを分類。ダッシュボードやフィルタでの絞り込みに活用 |
Comments | トリガーの補足説明や運用担当へのヒントを記入 |
表現式の書き方ポイント
- 主なアイテム関数:
.last()
,.min()
,.max()
,.avg()
,.count()
,.str()
- 比較演算子:
=
,>
,<
,<>
,=0
,>5
など - 複合条件:
and
,or
,not
- 定数マクロ:
$1
~$9
(単純な式内の定数を名称に埋め込む)
5. 実例:ログ監視トリガーの追加
Ricecake24book の手順を参考に、ログ内文字列検知トリガーを例示します。
- 事前にアイテム(Zabbix エージェントの log[])を作成
- ホスト → Triggers → Create trigger
- Name:
LogError_rt01
- Expression:
{MyHost:log[/var/log/app.log].str("ERROR")}=1
- Recovery expression:
{MyHost:log[/var/log/app.log].str("ERROR")}=0
- Severity: Warning
- 保存して、Problem/OK イベントが正しく発生するか Monitoring → Problems で確認
ベストプラクティス
- 依存関係でノイズを排除し、真の上位障害だけを通知
- テンプレートを活用して同種トリガーをまとめる
- 重要度や時間経過によるエスカレーションはアクション(Trigger action)で設定
- 定期的に不要トリガーや重複トリガーを洗い出し、チューニングを行う
–
Zabbixでトリガーを追加する手順は以下のとおりです。
例えば、以下のように設定すると、icmppingが値0が3回連続すると、重度障害としてアラートを出します。
項目 | 設定値 |
---|---|
名前 | ping-alert |
深刻度 | 重度の障害 |
条件式 | max(/ホスト名/icmpping,#3)=0 |
関連ページ
Zabbixの使い方については以下ページにまとめています。

Zabbix入門 使い方まとめ
Zabbixとは?使い方やインストール方法について紹介します。
Ubuntuの使い方については以下ページにまとめています。

【Ubuntu】初心者向けに使い方を解説
Ubuntuの使い方を初心者向けに解説します。
コメント