こんにちは。FL.OPSの中の人モルです。
今回は、Zabbix3.2で追加された「イベントタグ」について、
実際に設定を入れてみて動きを見ていこうと思います。
Zabbix3.2では生成されたイベント毎に任意のタグ情報を設定することができます。
このタグ情報は以下のようなことに利用できます。
・イベント相関関係の条件に使用(イベントの障害復旧を指定されたタグ毎に管理)
・障害画面でのフィルタ条件 などなど
それではさっそく設定を入れてみましょう。
適当な監視中のログファイルに対してトリガーの設定をしていきます。
設定画面はこんな感じです。
赤枠のところが新しく追加された「イベントタグ」機能部分です。
ここではシンプルにタグ名に「Service」タグ値に「App」と設定します。
さっそくログを出力させてみます。
生成されたイベントを確認すると・・・
新しくタグという項目が追加されており、ここに設定したイベントタグが表示されました!
このタグ情報は最初に挙げた通り、障害画面でのフィルタ条件に使うことができます。
例えば、複数のファイルを監視している場合には予めタグを設定していることで、
特定のアプリケーション関連の情報に絞った表示などが可能です。
それでは次に、ネットワークのLink Up/Down のトラップ監視をイメージした設定を試してみます。
設定はこんな感じです。
① トリガーレベルのイベント相関設定
こちらも3.2から追加された機能で、イベントタグの情報をもとに復旧条件を設定できます。
今回の場合、Interfaceタグが一致した場合、復旧するよう設定しています。
②最新データからの部分抽出による値設定
タグ値には、{ITEM.VALUE}で取得されたデータから正規表現を用いて
部分的に値を抽出することができます。
こちらも3.2からの追加された機能で、regsub関数(またはiregsub 関数)を用いて設定します。
今回少し無理やりですが、取得されたトラップ情報から
NIC名とLinkの状態値を取るよう、以下のように設定してみました。
Interface {{ITEM.VALUE}.regsub("Link\s(\S*)\s\S*\s\S*\s(\S*)\.$", \2)}
Status {{ITEM.VALUE}.regsub("Link\s(\S*)\s\S*\s\S*\s(\S*)\.$", \1)}
上記設定状態で、以下のようなトラップを受信すると、
障害画面では取得されたトラップデータから抽出された値がタグ値に設定されています。
さらに、interfaceのeth1のみLink upすると、
Interfaceがeth1のイベントのみが復旧されました。
イベント相関は、今回のようにトリガーレベルでの指定もできますし、
グローバルな設定([設定]-[イベント相関]画面)も指定可能です。
以上、イベントタグ機能のお試しでした!