メモリ使用率について

ご教授願います。

監視対象WindowsXPに対して、
メモリ使用率を取得しようと思っています。

Key:vm.memory.size[free]
Key:vm.memory.size[total]

で取得できましたが、
使用率の取得方法がわかりません。

UserParameterなるものを使用しなければ
ならないのでしょうか?
そしてスクリプトなるものも・・・
(Windows育ちでかなり抵抗が・・・)
(いずれ勉強しなければならないと思っておりますが・・・)

余計なことを書いてしまいました。
よろしくお願いいたします。

コメント表示オプション

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

こんにちは。

メモリの使用率を取得するアイテムはデフォルトでは用意されていません。代替案としては、Windowsエージェントではperf_counter[]を利用してパフォーマンスカウンタから値を取得することができます。

ちなみに、WindowsエージェントのUserParameterはWindowsのスクリプトしか利用できませんので、Linuxのスクリプトは理解できなくても問題ありません。

ユーザー welsys の写真

ありがとうございます。

早速、パフォーマンスカウンタより取得を試みました。
が、うまくいきません。

監視対象は同じくWindowsXP
コントロールパネルより「パフォーマンス」にて
「カウンタ ログ」を新たに作成し、カウンタに
\\フルコンピュータ名\Memory\% Committed Bytes In Use
を追加しました。

ためしにコマンドプロンプトで
C:\zabbix>zabbixw32.exe test perf_counter[\Memory\% Committed Bytes In Use]
を試してみると
ERROR: Invalid command line argument
Usage: zabbixw32 [options] [command]
以下省略・・・

次に「"」でくくると、
C:\zabbix>zabbixw32.exe test perf_counter[\Memory"\% Committed Bytes In Use"]
Using configuration file "C:\zabbix_agentd.conf"
Configuration file OK
[09-May-2007 15:23:41] *************** Log file opened ****************
[09-May-2007 15:23:41] Collector thread initialized successfully
perf_counter[\Memory\% Committed Bytes In Use] [26.965366]

で値取得成功。

ところが、いざItemを登録しようとすると、
Not Supported
ちなみに私は
Type ZABBIX agent
Key perf_counter[\Memory"\% Committed Bytes In Use"]
Type of information Numeric(float)
Units %
でダメでした。
(ほかにもいろいろ試しましたが・・・)
しかも次にItemを開くとKeyの設定が
perf_counter[\Memory
と変化します。("から後が消えてしまいます)
Keyの「"」をとってもNot Supportedでした。

perf_counter[]はどのようにItem設定すればよいのでしょうか?
ご教授願います。
よろしくお願いいたします。

ユーザー kodai の写真

こんにちは、回答が遅くなりました。

ZABBIXサーバー/エージェントのログには何か出力されていないでしょうか。通常、アイテムの監視が行えない場合は、何かしらのエラーが出力されていると思います。

また、Webフロントエンドからは「"」や「'」などSQL文として意味を持つ文字列は入力できないようになっているため、「"」から後ろが削除されるのは正常は動作です。

ユーザー welsys の写真

ありがとうございます。

さっそくエージェントのログを調べると・・・
「Unable to add performance counter ""\Memory\% Committed Bytes In Use"" to query: カウンタ パスを解析できません。指定したパスのフォーマットと構文を確認して」
となっていました。

やはり、構文がまちがっているのですね。

ためしに
perf_counter[\Memory\% Committed Bytes In Use]
とKeyに入れると、
あら?あっさりとデータ取得できるじゃないですか!
(以前ためしたはずなんだけどなぁ・・・)

すいません。お騒がせ致しました。解決です。
ちなみにItem設定は以下の通りです。
Type ZABBIX agent
Key perf_counter[\Memory\% Committed Bytes In Use]
Type of information Numeric(float)
Use multiplier Do not use

ハードディスク未使用率もモニタしてみました。
perf_counter[\LogicalDisk(_Total)\% Free Space]

ご教授ありがとうございました。
またよろしくお願いいたします。

ユーザー kodai の写真

こんにちは。

ためしに
perf_counter[\Memory\% Committed Bytes In Use]
とKeyに入れると、
あら?あっさりとデータ取得できるじゃないですか!
(以前ためしたはずなんだけどなぁ・・・)

解決できて何よりです。前回試したはずなのに...というのは私もよく経験します :-)

ちなみにItem設定は以下の通りです。
Type ZABBIX agent
Key perf_counter[\Memory\% Committed Bytes In Use]
Type of information Numeric(float)
Use multiplier Do not use

ご報告どうもありがとうございました。