[Pandora-jp] ディスク容量チェックで動作がおかしいのですが

Junichi Satoh junichi @ pandorafms.jp
2012年 7月 17日 (火) 13:39:01 JST


さとうです。

From: "三反田@ひむか流通ネットワーク" <santanda @ himuka.ne.jp>
Subject: [Pandora-jp] ディスク容量チェックで動作がおかしいのですが
Date: Sun, 15 Jul 2012 12:46:29 +0900

> Pandora_Agentの標準のディスク容量チェックで動作がおかしいのですが。。。
> /etc/pandora/pandora_agent.conf内で以下のように設定してますが
> 添付画像の通り、Criticalになってしまいます。
正しい動作のように見えますが...

> 設定がマズイのかもしれませんので正しい設定をご教示頂ければ助かります。
> 
> module_begin
> module_name disk_var_free
> module_type generic_data
> module_exec df -kh /var | tail -1 | awk '{ print 100-$5 }'
> module_max 100
> module_min 0
> module_description Free disk Percentage of var partition
ここの説明(*Free* disk)にある通り、これはディスクの「空き」率を取得する
設定なので、

> module_min_warning 80
> module_max_warning 89
> module_min_critical 90
> module_max_critical 100
> module_end
空きが 80〜89% で警告、空きが 90〜100% で障害になります。
Pandora FMS としては、*設定された通りに正しく* 動いています。
#たぶん、このような設定を意図されたわけでは無いのだと思いますが...

> 実際のdfで見ますと以下の通りです。
> Filesystem           サイズ  使用   残り  使用% マウント位置
> /dev/sda6             6.0G  364M  5.3G   7% /
> /dev/sda5              10G  2.5G    7.1G  26% /home
> /dev/sda2              40G  936M   37G   3% /var
> 
> /var は使用率3%(相当な空きがある)にも関わらず、Criticalが出ます。
上記の通り、pandora_agent.conf の設定例は、「使用率」ではなく「空き率」を
見る設定ですので、空きが 97% ですから、障害(つまりCritical)と判断されます。

> ちなみに、次の通りにすると、本来の使用率がデータとして表示されますが
はい、空きではなく「使用率」を取得したい場合は "100-" を取り除いた設定
をするという考え方で問題はありません。

> 今度は、モニタリングで「不明」扱いとなってしまいます。
> module_begin
> module_name disk_var_free
> module_type generic_data
> module_exec df -kh /var | tail -1 | awk '{ print $5 }'
>                        ↑
>                       100- 除去
ただし、ここで単純に 100- を消しただけですと、module_exec の出力結果に "%"
という文字が含まれてませんか?
数値データを期待しているモジュールに文字列は入れられません。

"%" を削除する処理が必要です。たとえば、次のように変更するとどうですか?

awk '{ print $5 }' → awk '{ printf "%d", $5 }'

ちなみに、上の例の awk '{ print 100-$5 }' (100-がついている) の場合は、
awk が勝手に $5 を数値とみなして計算するので、出力結果に % が含まれません。
なので問題ないのです。
---
佐藤 淳一
junichi @ pandorafms.jp


Pandora-jp メーリングリストの案内