バックアップデータを導入(リストア)すると、イベントログが再検知されてしまう事象について
お世話になります。
Zabbixのeventlog[]キー使用時の再検知についてご相談させてください。
■環境
ZabbixServerのOS:RHEL_8.1
ZabbixServerのバージョン:5.4.12
対象ホストのOS:Windows2022
対象ホストのエージェントバージョン:5.4.12
対象アイテムキー:eventlog[application,,"ERROR",,,,skip]
■今回の事象について
監視対象サーバでリストア作業を行い、バックアップデータを導入したところ過去のイベントログが再検知されてしまい大量の障害通知が飛んでしまった。
以下、リストア作業の流れ
10:00 サーバ停止
10:30 バックアップデータ抽出
11:00 サーバ起動
12:00 サーバ停止
13:00 リストア作業としてバックアップデータ導入
13:30 サーバ起動 ←ここで過去のイベントログが読み込まれる
■再検知した原因として考えていること
①監視サーバはDBに「item_rtdata」というテーブルが存在し、「items」テーブルの【itemid】に紐づいたデータが格納されている。
また、イベントログの場合「item_rtdata」に格納されているデータは、「items」テーブルの【key_】のWindowsイベントログの種類(application,systemなど)の情報である。
※【key_】に深刻度やソースを記載していてもイベントログの種類のみを考慮している
②「item_rtdata」テーブルの【lastlogsize】には対象イベントログの最新のイベントレコードIDが登録されている。
この値がzabbixエージェントが確認したイベントレコードIDと一致している、もしくは低ければ値の更新を行っている。
③今回バックアップデータ抽出後にサーバを起動したため、バックアップの最新のイベントレコードIDと【lastlogsize】の値にズレが生じた。
13:30にサーバ起動した際、【lastlogsize】がzabbixエージェントが確認したイベントレコードIDより値が大きかったためイベントログを再検知してしまった。
■お尋ねしたいこと
上記事象の対応策として
・リストア作業時はメンテナンス設定を行ない、イベントログによる通知を一時停止する
ということを考えていますが、zabbix側ではイベントログの障害を大量に再検知していることには変わりありません。
メンテナンスで通知を一時停止する以外に対応策はありますでしょうか?
以上、よろしくお願いします。
TNK - 投稿数: 4769
データベースのリストア作業をやめるか、バックアップ前にログアイテムを
削除してからバックアップを取得して、リストア後にログアイテムを追加
しなおすしかないのではないでしょうか。
ログアイテムでSkipオプションを指定していれば、新規に作成したアイテム
であれば、過去のログを読み飛ばすはずです。
そうでなければ、メンテナンス設定する方法になると思います。
gonzales - 投稿数: 7
TNK様
お世話になってます。
ご回答ありがとうございました。
リストアの中止や、アイテムの削除はこちらの事情的に難しそうです。
アイテムキーで対応できるのであれば対応したかったのですが、やはりメンテナンスでの抑止が無難な気がしますね。
ご確認いただきありがとうございました。
gonzales - 投稿数: 7
こちらクローズとさせていただきます。