SNMPでのWindowsXPのプロセス監視(メモリ)

いつもお世話になっております。

SNMPによるWindowsXPのプロセス監視(メモリ)の設定についてご教授願います。

実現したいことですが、以下2点になります。
?HDD使用率(%)、CPU使用率(%)、メモリー使用率(%)のグラフの表示
?HDD使用率(%)、CPU使用率(%)、メモリー使用率(%)が一定条件に達した場合、トリガー実行にて、メールの発砲

監視対象として、Windows XP端末にSNMP Informantをインストールしてみまして、SNMPによる監視を行なってみました。

監視対象ホストのポートは 161での監視にしてます。

HDDの空き容量(%)
CPU使用率(%)
これら2つに関しては、%での取得できるoidがありましたので
グラフ、一定条件に達したらメールの発砲 は実現できました。

メモリに関しては、Free Memory 、Commit memory のアイテム作成から グラフの表示は可能です。
ただ、取得データは(%)ではなく(値)です。

メモリーの場合、グラフには、100%を意味するTotal Memoryの値を表示したいと考えております。
(%)で取得できるoidがわかれば良いのですが、、、、

====■アイテムについて■===========================================================

グラフに割り当てるアイテムのイメージですが、以下のような感じです。
=================================================================
MAX値  SNMP_Windows_Total Memory
    SNMP_Windows_Commit memory
SNMP_Windows_Free Memory
0
=================================================================

Total memoryの算出のoid ですが、

hrStorageAllocationUnits .1.3.6.1.2.1.25.2.3.1.4.5
hrStorageSize      .1.3.6.1.2.1.25.2.3.1.5.5

hrStorageAllocationUnits * hrStorageSizeでほぼtotalとなります。

また、Commit memory+Free Memory こちらはアバウトになってしまいますが、こちらもTotalっぽくなります
Commit memory      .1.3.6.1.4.1.9600.1.1.2.4.0
Free Memory     .1.3.6.1.4.1.9600.1.1.2.1.0

これら4このアイテムを作成した後、
さらに以下のように計算されたアイテムを作成することはできないでしょうか?
?アイテムにアイテム*アイテム
 アイテムにアイテム+アイテム
?アイテムにoid(A)の値*oid(B)の値
 アイテムにoid(A)の値+oid(B)の値


アイテム名 total memory
アイテムの内容 hrStorageAllocationUnits * hrStorageSize
      または {.1.3.6.1.2.1.25.2.3.1.4.5} * {.1.3.6.1.2.1.25.2.3.1.5.5}
        または Commit memory + Free Memory
        または{.1.3.6.1.4.1.9600.1.1.2.4.0} + {.1.3.6.1.4.1.9600.1.1.2.1.0} 

グラフにはアイテムしか選択できないようですし、、、、、

可能でしたら、グラフにわりあてるアイテムは以下3つとなりますが。

Total memory (hrStorageAllocationUnits * hrStorageSize)
または(Commit memory+Free Memory)
Commit memory
Free Memory

また、そもそも、Windows XP のTotal Memoryを取得できるoidはあるのでしょうか?

現状は、グラフに以下の2つアイテムを割り当てて、正常に表示はされてます。
Commit memory
Free Memory

ただ、MAXメモリは不明な状態のグラフです。また、テンプレート目的の為、MAX固定の値は入力したくはないです。

zabbix-agent導入では
テンプレートWINDOWSがあるので、以下の2つのアイテムをグラフに割り当てればさくっと実現可能ですね。
キー vm.memory.size[total]
キー vm.memory.size[free]

それは、確認済みですが、SNMPでのMAXメモリをグラフに反映することは、実現可能でしょうか?

==========================================================================

====■トリガーについて■===========================================================
先ほどの上のアイテム4つを作成し、
メールを発砲する条件として、
メモリーの空き容量が10%以下の時とする場合ですが、

グラフにMAX値が割り当てられなくても、メールの発砲は可能とおもいますが、トリガー内容は、このような感じでよいでしょうか?
例1
100*{HOSTNAME:Free Memory.last(0)}/{HOSTNAME:Memory hrStorageAllocationUnits.last(0)*HOSTNAME:Memory hrStorageSize.last(0)}<10

例2
100*{HOSTNAME:Free Memory.last(0)}/{HOSTNAME:Free Memory.last(0)+HOSTNAME:Commit memory.last(0)}<10

上記の記載があっているかも自身がないのですが、
さらに条件として、10回連続してメモリーの空き容量が10%以下の場合、という条件の記載方法もお解かりでしたらご教授願います。
==========================================================================

長くなりましたが、何卒、宜しくお願いいたします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー kodai の写真

こんにちは。

これら4このアイテムを作成した後、
さらに以下のように計算されたアイテムを作成することはできないでしょうか?
&#65533;アイテムにアイテム*アイテム
 アイテムにアイテム+アイテム
&#65533;アイテムにoid(A)の値*oid(B)の値
 アイテムにoid(A)の値+oid(B)の値

複数アイテムを使ったの計算機能は1.8.1から実装されてますので、そちらを使っていただくのが良いと思います。1.8以前では実現は難しいですね。

また、そもそも、Windows XP のTotal Memoryを取得できるoidはあるのでしょうか?

うーん、どうなんでしょう。SNMPを使ってWindowsを監視したことがないので私は分からないです。通常Windowsの場合はZabbixエージェントを入れて、もともと用意されているキー+perf_counterでパフォーマンスモニタの値を使って監視してます。

ただ、MAXメモリは不明な状態のグラフです。また、テンプレート目的の為、MAX固定の値は入力したくはないです。

zabbix-agent導入では
テンプレートWINDOWSがあるので、以下の2つのアイテムをグラフに割り当てればさくっと実現可能ですね。
キー vm.memory.size[total]
キー vm.memory.size[free]

それは、確認済みですが、SNMPでのMAXメモリをグラフに反映することは、実現可能でしょうか?

参考までにですが、1.8以降ではアイテムのデータを使ってグラフのY軸の最大値を決めることができるようになってます。

グラフにMAX値が割り当てられなくても、メールの発砲は可能とおもいますが、トリガー内容は、このような感じでよいでしょうか?
例1
100*{HOSTNAME:Free Memory.last(0)}/{HOSTNAME:Memory hrStorageAllocationUnits.last(0)*HOSTNAME:Memory hrStorageSize.last(0)}<10

例2
100*{HOSTNAME:Free Memory.last(0)}/{HOSTNAME:Free Memory.last(0)+HOSTNAME:Commit memory.last(0)}<10

試していないのですが、以下のように{}や()で囲わないとだめかもしれません。

(100*{HOSTNAME:Free Memory.last(0)}/({HOSTNAME:Free Memory.last(0)}+{HOSTNAME:Commit memory.last(0)}))<10

さらに条件として、10回連続してメモリーの空き容量が10%以下の場合、という条件の記載方法もお解かりでしたらご教授願います。

アイテムやトリガーを駆使してどうにか実現できるかもしれませんが、1.6系で実現する方法はすぐには思いつきませんでした。これを実現するためには、1.8のアイテム計算機能を使うか、アイテムで直接メモリの使用率を取得する方法を考えた方が良いんじゃないかと思います。

ユーザー MOSA の写真

kodai様
ご連絡ありがとうございます。

ZABBIX Ver1.8.1以降でしたら、実現可能な項目が結構あるんですね。情報ありがとうございます。

トリガーに関しまして、kodai様の(){}を参考にし、動作いたしました。
(100*{HOSTNAME:Free Memory.last(0)}/({HOSTNAME:Memory hrStorageAllocationUnits.last(0)}*{HOSTNAME:Memory hrStorageSize.last(0)}))<10

10回連続してメモリーの空き容量が10%以下の場合、という条件に関しましては、現状も試行錯誤中です。

良い関数等ありましたら、ご教授願います。
また、それに関するトリガーなどできましたら、ご報告させていただきますね。

宜しくお願いいたします。