お世話になります。
監視データ>ホスト>グラフにて Windows Memory Utilization メモリ使用率の監視を しておりますが、PCが電源OFFの状態なった場合においても 最新の値をそのまま表示し続けており、しきい値と時間で アラートを表示していますが、電源OFFなのに アラートが出てしまうという現象が起きております。
電源がOFFの場合にメモリ使用率”データなし”にするという 方法がわかりましたら、ご教授願います。
Zabbix バージョンは 6.0(Zabbix Agent 2 6.0.23.2400)を使用しております。
電源がOffになっていて値が取得できなくなっていれば、「取得不可」という状態になりグラフのラインも表示されなくなります。 表示している時間帯がおかしくなっているのではありませんか?
連絡頂きありがとうございます。 電源がOFFの時、”Windows CPU Utilization”は”[データなし]”と表示されております。 しかしながら、Memoryは電源OFF直前の値を表示し続けております。 時間帯についても、CPU,Memoryが同時刻である旨、確認しております。
具体的に 「Memoryは電源OFF直前の値を表示し続けております。」 と表示されているのがどの場所であるのかを詳細にお教えください。
Memory utilizationのグラフであるならば、表示されているのは、 トリガーで設定されている閾値のラインであって電源OFF直前の値 ではないと思います。
連絡頂きありがとうございます。 実際のグラフの部分を添付いたします。 添付 5/3 17:00に電源OFFをしたのでアラートが表示されております。 しかしながら、Memory使用率が一直線で表示されております。 閾値は点線部分 80%での表示となっております。
値が取得できていなければグラフの線は描画されません。 17:30の時点でも値が取得できているのでグラフの線が表示されているのでしょう。 17時に電源OFFとおっしゃられているのは、短時間だけでそれ以降再起動したりされたのではありませんか?
もしくは、電源をOFFされたホストとは別のホストのグラフを見ているのだと思います。
今回のケースは5/3 17:00に電源off、5/8 10:52 電源onしております。 メッセージは以下の通りです。 2024/5/3 17:00 警告 2024/5/8 10:53 解決済 @PC_DELL Windows: Zabbix agent is not available (for 3m) 4d 17h 53m いいえ class: oscomponent: systemscope: availability 2024/5/8 10:52 警告 2024/5/8 10:55 解決済 @PC_DELL Windows: Host has been restarted (uptime < 10m) 2m 56s いいえ class: oscomponent: systemscope: notice 全て同じホストのグラフを見ております。
前者のイベントは、応答が得られなかったという状態を検知したこ とは示しますが、電源Offになったという確証ではありません。
グラフが描画されているのは、その期間に値は取得できています。 確認しているホストの不一致でないのならば、値は取得できていた 状態ですので、最新データなどから値が取得できていたかを確認 してみてください。
memory utilization アイテムの計算式で使われているアイテムの値が取得できなかったことで計算出来なくなったことが原因と思われます。(私も同じ事象が起きていました。)
希望されているデータなし状態にする方法は見つけられておりませんが、私は代替案として0になるように式を修正しております。 (私はZabbixバージョン7.0 RC1を使っておりますので6.0では式が違うかもしれませんが)
last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100 * mod(nodata(//vm.memory.size[used],120)+1,2)
ご参考になれば幸いです。
改めて確認すると、Zabbix 6.0.29のデフォルトだと計算アイテムで以下の式になっているようです。
last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100
last()を使っているので、この式だと最後に取得した値で計算し続けてしまいますね。 失礼しました。
ご参考:計算アイテムの紹介と知っておくと得するTips https://qiita.com/chrolis/items/b9fbda012d54f4c176aa
回答頂きました方々、ありがとうございました。 アイテム計算式を変更し、0となる事を確認しました。 日常は監視運用に携わっており、計算式までは立ち入る事が なかったのですが、またこれを機に理解を深めていこうと思います。
以上、御礼方々
アカウント名 tval
Zabbix関連
tval - 投稿数: 6
Zabbix バージョンは 6.0(Zabbix Agent 2 6.0.23.2400)を使用しております。
TNK - 投稿数: 4755
電源がOffになっていて値が取得できなくなっていれば、「取得不可」という状態になりグラフのラインも表示されなくなります。
表示している時間帯がおかしくなっているのではありませんか?
tval - 投稿数: 6
連絡頂きありがとうございます。
電源がOFFの時、”Windows CPU Utilization”は”[データなし]”と表示されております。
しかしながら、Memoryは電源OFF直前の値を表示し続けております。
時間帯についても、CPU,Memoryが同時刻である旨、確認しております。
TNK - 投稿数: 4755
具体的に
「Memoryは電源OFF直前の値を表示し続けております。」
と表示されているのがどの場所であるのかを詳細にお教えください。
Memory utilizationのグラフであるならば、表示されているのは、
トリガーで設定されている閾値のラインであって電源OFF直前の値
ではないと思います。
tval - 投稿数: 6
連絡頂きありがとうございます。
実際のグラフの部分を添付いたします。
添付 5/3 17:00に電源OFFをしたのでアラートが表示されております。
しかしながら、Memory使用率が一直線で表示されております。
閾値は点線部分 80%での表示となっております。
TNK - 投稿数: 4755
値が取得できていなければグラフの線は描画されません。
17:30の時点でも値が取得できているのでグラフの線が表示されているのでしょう。
17時に電源OFFとおっしゃられているのは、短時間だけでそれ以降再起動したりされたのではありませんか?
もしくは、電源をOFFされたホストとは別のホストのグラフを見ているのだと思います。
tval - 投稿数: 6
今回のケースは5/3 17:00に電源off、5/8 10:52 電源onしております。
メッセージは以下の通りです。
2024/5/3 17:00 警告 2024/5/8 10:53 解決済 @PC_DELL Windows: Zabbix agent is not available (for 3m) 4d 17h 53m いいえ class: oscomponent: systemscope: availability
2024/5/8 10:52 警告 2024/5/8 10:55 解決済 @PC_DELL Windows: Host has been restarted (uptime < 10m) 2m 56s いいえ class: oscomponent: systemscope: notice
全て同じホストのグラフを見ております。
TNK - 投稿数: 4755
前者のイベントは、応答が得られなかったという状態を検知したこ
とは示しますが、電源Offになったという確証ではありません。
グラフが描画されているのは、その期間に値は取得できています。
確認しているホストの不一致でないのならば、値は取得できていた
状態ですので、最新データなどから値が取得できていたかを確認
してみてください。
touhlen - 投稿数: 5
memory utilization アイテムの計算式で使われているアイテムの値が取得できなかったことで計算出来なくなったことが原因と思われます。(私も同じ事象が起きていました。)
希望されているデータなし状態にする方法は見つけられておりませんが、私は代替案として0になるように式を修正しております。
(私はZabbixバージョン7.0 RC1を使っておりますので6.0では式が違うかもしれませんが)
last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100 * mod(nodata(//vm.memory.size[used],120)+1,2)
ご参考になれば幸いです。
TNK - 投稿数: 4755
改めて確認すると、Zabbix 6.0.29のデフォルトだと計算アイテムで以下の式になっているようです。
last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100
last()を使っているので、この式だと最後に取得した値で計算し続けてしまいますね。
失礼しました。
ご参考:計算アイテムの紹介と知っておくと得するTips
https://qiita.com/chrolis/items/b9fbda012d54f4c176aa
tval - 投稿数: 6
回答頂きました方々、ありがとうございました。
アイテム計算式を変更し、0となる事を確認しました。
日常は監視運用に携わっており、計算式までは立ち入る事が
なかったのですが、またこれを機に理解を深めていこうと思います。
以上、御礼方々