不定期にインプットされるデータをグラフ化したい
お世話になります。
zabbix 1.8.3を使っているのですが、Radiusサーバの管理をしようと思い、zabbix_senderを用いて認証のOK/NGを認証要求処理毎にZabbix_Serverに送っています。
キーとして
radius.auth.ok/radius.auth.ng
を指定し、OK/NGの時毎にNumberとして1を送っています。
これをZabbix側で加工して認証ユーザ数のグラフを作成することは出来ないものでしょうか?
たとえば
2011/2/18 10:11:15 radius.auth.ok=1
2011/2/18 10:11:16 radius.auth.ok=1
2011/2/18 10:11:18 radius.auth.ng=1
....
とデータなってこの期間中をグラフ化して2011/2/18 10:11:00-10:12:00 にOK=3/NG=1みたいな値をとり、グラフ化したいという感じです。
calcurateを使えば何とかなるかな? とも思ったのですが、どうすればよいか見当が付きません。
heya - 投稿数: 319
こんにちは。
具体的な設定がわからないので、適当に名前とかは変えてください。
例えば、トラッパーが
タイプ:ZABBIXトラッパー
キー:radius.auth.ok ←他と重複しなければ何でもいい
データ型:数値(整数)
のような設定なら、
タイプ:計算
キー:radius.auth.ok.count ←他と重複しなければ何でもいい
条件式:count(radius.auth.ok,60,1)
データ型:数値(整数)
更新間隔(秒):60
みたいなアイテムを作るとよさそうです。ngも同様。
count(radius.auth.ok,60,1)のradius.auth.okはトラッパーのキー、60は最後の60秒間、1は値が1であるもの、という意味です。
トリガーとは微妙に指定方法が違うんですね・・・。
あとは、この計算アイテムのグラフを表示させれば目的は果たせるかな、と。
ただ、注意していただきたいのは、radius.auth.ok.countで取れるのは、過去60秒の間に届いた数、というだけであって、それが0秒から開始するという保証はありません。例えば、必ず10:11:00-10:12:00の数となるわけではなく、10:11:12-10:12:12の数、となるかもしれないということです。この辺はZabbixのスケジューリングの話になるので、設定ではどうにもできません(たぶん)。
どうしてもそこまでする必要があるなら、トラップ送信側で一分間の数を合計してZabbixサーバーに送るとかした方が簡単だと思います。