現在位置: ホーム / 製品・サービス / 統合システム監視 MIRACLE ZBX / MIRACLE ZBX - Zabbix テック・ラウンジ / Zabbix / MIRACLE ZBX ServerのPollerプロセスのエラー処理

Zabbix / MIRACLE ZBX ServerのPollerプロセスのエラー処理

前回はZabbix / MIRACLE ZBX ServerのPollerプロセスが正常にアイテムがデータを取得する処理について解説を行いました。今回はPollerプロセスによるアイテムのデータ取得においてエラーが発生した場合の挙動について解説します。

Pollerプロセスのエラー処理解説

前回に引き続きPollerプロセスについて解説を行います。前回はPollerプロセスが正常にアイテムがデータを取得する処理について解説を行いました。

前回の記事

Zabbix / MIRACLE ZBX ServerのPollerプロセスの全体像解説

 今回はPollerプロセスによるアイテムのデータ取得においてエラーが発生した場合の挙動について解説します。

なお、今回の調査に使用した環境は以下の通りです。

  • MIRACLE ZBX v3.0.7

データを取得する際のエラーには大きく分けて、下記の2種類があります。

1. ネットワークの問題又はタイムアウト
2. 取得不可(Not supported)

1. ネットワークの問題又はタイムアウト

アイテムのデータ取得において、「ネットワークの問題又はタイムアウト」が発生した場合の挙動を解説します。

このエラーはZabbixサーバからZabbixエージェントへの接続やデータの送受信が成功しないことにより発生します。また、データを取得する一連の処理に掛かる時間がZabbixサーバのタイムアウトを越えた場合に発生します。タイムアウトの設定は、Timeoutパラメータ(zabbix_server.conf)により行います。

Zabbixエージェント側においてタイムアウトが発生した場合もこのエラーとなります。Zabbixエージェントのタイムアウトの設定は、Timeoutパラメータ(zabbix_agentd.conf)により行います。このタイムアウト値は、Zabbixサーバとのデータの送受信や、アイテムのデータを取得する処理に使用されています。

「ネットワークの問題又はタイムアウト」が発生した場合、Zabbixサーバの設定や発生状況により、監視を行うタイミングや挙動が変化します。

下図は、あるアイテムの監視において、正常にデータを2回取得し、「ネットワークの問題又はタイムアウト」が5回発生した後、正常にデータを取得した場合の挙動を示しています。

以下、図中の番号に沿って解説を進めます。

取得タイミングの関係(zbx-tl-016用)

① 正常な監視データの取得
アイテムの更新間隔(Update Interval)毎にデータの取得が行われます。

 

② エラー発生(初回)
次回のデータ取得がエラーが発生した時刻からUnreachableDelay(zabbix_server.conf)秒後に行われるようにセットされます。

<file:/etc/zabbix/zabbix_server.conf>

### Option: UnreachableDelay
# How often host is checked for availability during the unreachability period, in seconds.
#
# Mandatory: no
# Range: 1-3600
# Default:
# UnreachableDelay=15
UnreachableDelay=15

また、Zabbixサーバのログには下記のようなログが出力されます。このログは直前の監視において正常にアイテムのデータが取得できていた状態において、エラーが発生した場合に出力されます。

<file:/var/log/zabbix/zabbix_server.log>

17817:20171013:174430.730 Zabbix agent item "dummy.echo[foo]" on host "zbx222" failed: first network error, wait for 15 seconds

 

③ エラーの発生(2回目以降)
再び同様に問題が発生した場合は下記のようなログが出力されます。この場合、同様にUnreachableDelay(zabbix_server.conf)秒後に次回の監視データ取得時刻がセットされます。

<file:/var/log/zabbix/zabbix_server.log>

23435:20171013:192358.298 Zabbix agent item "dummy.echo[foo]" on host "zbx222" failed: another network error, wait for 15 seconds

 

④ エラーの発生(最初のエラー発生からUnreachablePeriodが経過)
最初にエラーが発生してからUnreachablePeriod(zabbix_server.conf)秒が経過していた場合、ホストの状態がunavailableにセットされます。

<file:/etc/zabbix/zabbix_server.conf>

### Option: UnreachablePeriod
# After how many seconds of unreachability treat a host as unavailable.
#
# Mandatory: no
# Range: 1-3600
# Default:
# UnreachablePeriod=45
UnreachablePeriod=45

この場合の挙動は以下の通りです。

a) 次回の監視時刻が、UnnavailableDelay(zabbix_server.conf)秒後にセットされる。

<file:/etc/zabbix/zabbix_server.conf>

### Option: UnavailableDelay
# How often host is checked for availability during the unavailability period, in seconds.
#
# Mandatory: no
# Range: 1-3600
# Default:
# UnavailableDelay=60
UnavailableDelay=60

 

b) Zabbixサーバのログに下記のようなログが出力される

23435:20171013:192404.314 temporarily disabling Zabbix agent checks on host "zbx222": host unavailable

 

c) Webフロントエンドにおいては、[設定]->[ホスト]のエージェントの状態カラムにある"ZBX"のアイコンの色が赤になる。

タイムアウト(zbx-tl-016用)

 

d)該当するホストのトリガーが全て"不明"にセットされる

 (ただし、アクティブチェック、状態が無効であるアイテムに紐づいたトリガー条件式、nodata()等の時間ベースの関数を使用した条件式等は除く)

 

⑤ 正常な監視データの取得(エラー状態からの復旧)
問題なくデータが取得された場合、下記のようなログが出力されます。
データの取得成功したあとはアイテムの更新間隔でデータの取得が行われるようになります。

<file:/var/log/zabbix/zabbix_server.log>

17818:20171013:174445.729 resuming Zabbix agent checks on host "zbx222": connection restored

 

2. 取得不可(Not supported)

このエラーは、アイテムのキーの設定が不正である場合や、取得したデータの型が設定と一致しない、Zabbixエージェント内でデータの取得が成功しない等の場合に発生します。

このエラーが発生した場合の挙動は以下の通りとなります。

a) アイテムのステータスが”取得不可”となる
Zabbix Webフロントエンドの下記のページにおける該当のアイテムのステータスが”取得不可”となり、情報のカラムに”X”のアイコンが表示されます。また、そのアイコンをクリックするとエラーの内容が表示されます。

 [設定] -> [ホスト] -> 該当するホストのアイテム

取得不可(zbx-tl-016用)

 

b) ”取得不可アイテムの更新間隔(秒)”後に次回のデータ取得時刻がセットされる
取得不可アイテムの更新間隔はZabbix Webフロントエンドより、下記の画面で設定を行います。

[管理] -> [一般設定]->プルダウンメニューの[その他] -> 取得不可アイテムの更新間隔(秒)

 

c) 該当するアイテムに紐づいている全てのトリガーのステータスが”不明”となる
d) 
関連のログ出力

 Zabbixサーバのログに以下のようなログが出力されます。

 <file:/var/log/zabbix/zabbix_server.log> 

 19795:20171024:125654.407 item "zbx222:dummy.echo[1sec]" became not supported: Received value [1sec] is not suitable for value type [Numeric (float)]

 

 関連情報

 

注意事項

本ドキュメントの内容は、予告なしに変更される場合があります。
本ドキュメントは、限られた評価環境における検証結果をもとに作成しており、全ての環境での動作を保証するものではありません。
本ドキュメントの内容に基づき、導入、設定、運用を行なったことにより損害が生じた場合でも、当社はその損害についての責任を負いません。あくまでお客さまのご判断にてご使用ください。

 

MIRACLE ZBX 製品・サポートサービス 詳しくはこちら

MIRACLE ZBX Virtual Appliance V3.0 評価版のお申し込み

製品・サービスについてのお問い合わせ

お問い合わせフォームMIRACLE ZBX製品やサポートサービスについてのご相談やご質問は、「お問い合わせフォーム」よりお気軽にお問い合わせください。