依存アイテムの活用方法

依存アイテムとは

zabbix3.4以降のバージョンで、アイテムタイプに新たに追加されたものとなります。依存アイテムを、他の通常アイテムを親アイテムとして指定し設定した際に、親アイテムが監視データを取得した同じタイミングで、依存アイテムに設定した値を保存します。

依存アイテムは、マスターアイテム(親アイテム)と異なる更新間隔を設定することはできません。

 

【依存アイテムのメリット】

・監視データ収集処理による監視対象への負荷軽減

・同一タイミングでのデータ収集

・監視データ収集処理を効率よく行えるため、パフォーマンスの向上。

 

例)実現したいこと

■ログ監視にて取得したログ中に出力される各英数字を、1つのアイテムとしてそれぞれ値を保存する

 

【取得するログの例】

2024/04/09 11:13:30     SAMPLE       1       2       3       4       5       6       7       8       9       10       Running 0       11       12       13       14       15

 

【前提条件】

・各英数字ごとの区切りは「タブ」とする

・ログ監視にて取得するログは、一律(タブ区切り且つ、同じ位置に数字と文字列が出力される)である。

 

実現方法

・アイテム設定で親アイテム(ログ監視のアイテム)と依存アイテム(子アイテム)を作成します。

・依存アイテムを保存したい値の数分作成し、それぞれの保存前処理に正規表現を設定することで、取得したい値を保存します。

 

設定方法

実際にzabbixにて設定をしてみる。

■依存アイテムと保存前処理の設定以下参考URL

https://www.zabbix.com/documentation/6.0/jp/manual/config/items/itemtypes/dependent_items

親アイテム

zabbixポータル画面より、アイテム作成を行う。

[設定]⇒[ホスト]より対象のホストの「アイテム」を選択後、

画面右上の「アイテムの作成」を押下する。

■以下設定内容

名前:(任意)

タイプ:zabbixエージェント(アクティブ)

キー:logrt[/var/tmp/test.*_txt]

データ型:ログ

監視間隔:1m

依存アイテム(子アイテム)

上記、親アイテム同様、「アイテムの作成」を押下し作成する。

■以下設定内容

名前:(任意)

タイプ:依存アイテム

キー:(任意の文字列)

データ型:数値(整数)

マスターアイテム:(ホストに設定した親アイテム)

保存前処理(正規表現)

設定した依存アイテムの「保存前処理」タブを押下し、設定する。

■以下設定内容

 

名前:正規表現

パラメータ:SAMPLE\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})+\t(\d{1,})

出力:\1~\10

※正規表現は各アイテム(依存アイテム)につき、1つのみ設定する必要があります。

データ型:数値(整数)

設定内容確認方法

・設定したパラメータ内容で、意図した値が取得できるかのテストが実施可能です。

①設定した「保存前処理」の画面右側「テスト」を押下すると、上記画面が表示される。

②「値」の欄に、取得予定のログ内容を記載する。

③画面右下の「テスト」を押下すると、「結果」の欄に取得できる値が表示される。

実際に取得した値

zabbixのWebUI上にて「監視データ」⇒「最新の値」より、設定したアイテムの値が取得できていることを確認します。

・親アイテムはログを取得。依存アイテムは数値(整数)を取得します。

設定時の注意点

親アイテム

・親アイテムと依存アイテム(子アイテム)のデータ型は異なっていても問題ないが、

 監視間隔は親と子で別の監視間隔は設定できません。

依存アイテム

・依存アイテムは、取得したい値の個数分、設定する必要があります。

 (1つの依存アイテムに、複数正規表現を設定しても値は取得できません。)

・「出力」には「\1~\10」の10個までした設定できないため、11個目以降の値については、別途正規表現を作成する必要があります。

補足(親アイテムと依存アイテムの組み合わせ)

依存アイテムは、親アイテムのデータ形式(データフォーマット)によって保存前処理の設定を変更することで、簡単に指定したデータの取得が可能となります。

本記事では、親アイテムがタブ区切りのログデータを取得するため、依存アイテムに正規表現設定をしてデータ取得する方法を例として記載していますが、親アイテムと依存アイテムの組み合わせを変えることで、親アイテムが他のデータ形式でも一括で取得することができます。

例)親アイテム:JSONデータの場合、依存アイテムの保存前処理で「JSONPath」を使用する

【親アイテム】

【依存アイテム】

  [保存前処理]

zabbixインストール時に標準でインストールされるテンプレート「Remote Zabbix server health」では、実際に依存アイテムの保存前処理に「JSONPath」を使用する方式でデータ取得しています。
※上記画面スクショ参照。

いいね (←参考になった場合はハートマークを押して評価お願いします)
読み込み中...

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、当社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。

※当サイトはマイクロソフト社によるサポートページではございません。パーソルプロセス&テクノロジー株式会社が運営しているサイトのため、マイクロソフト社によるサポートを希望される方は適切な問い合わせ先にご確認ください。
 【重要】マイクロソフト社のサポートをお求めの方は、問い合わせ窓口をご確認ください