sidetech

(元)インフラエンジニアの寄り道メモ。

System Answer G2でWindows ZABBIX Agent経由でパフォーマンスモニタを取る

やけに長いタイトルです。

前回、ZABBIXエージェントの情報を引っこ抜く話をしましたが、色々と試してみたら、少し調子悪い部分がでてきてしまったので、スクリプトを改修しました。と、いっても公開してないスクリプトだけど[E:coldsweats01]

で、前回はとりあえずZABBIXゲッチュでデータが取れたと喜んでいたんですが、ZABBIXエージェントで良い部分としては、やっぱり?ある程度エージェントとして作りこまれた部分なので、その恩恵を引き継いでしまおうという作戦なのですが、その一番例えがよいのがWindowsのパフォーマンスモニタかなー?という事で、引っ張ってみる事にしました。

・・・。

あれ・・・エラーになっちゃうぞ。[E:coldsweats02]

コマンドの引数を渡すのにスペースが含まれていると調子悪いっちゅうことで「””」で括っているのにおかしいなぁ・・・コンソールからは正常なのにSystemAnswerG2(以下SAG2)はエラーを吐いている・・・。

取りあえず、拾ったサンプルは
perf_counter[\PhysicalDisk(_Total)\Avg. Disk Read Queue Length]
perf_counter[\PhysicalDisk(_Total)\Avg. Disk Write Queue Length]
perf_counter[\System\File Read Bytes/sec]
perf_counter[\System\File Write Bytes/sec]
perf_counter[\System\threads]

こんな感じで。

だけんど、上手く取れない。

色々調べてみた所、SAG2のオプション指定の所でスペースが入っていると取り込まれるときにTAB扱いになってしまう様子。これに気が付くのに4時間[E:weep]

ずっとエスケープシーケンスの組み合わせがよくないんだと格闘していたのに・・とほほ。

まぁなにはともあれ・・・取り出すことには成功しました[E:happy02]

Zabiget001
Zabiget002
Zabiget003

スペースは影響の無さそうな置き換え文字をスペースの代わりに入れて、スクリプト側で文字変換を掛けました。

$opts{keys}=~ s/(?:@)/ /g

こんな感じで「@」を全て空白に変換するという感じで。
で、以下の様な妙な設定方法だけど、スクリプト任せで出来る様になると。
Zabiget03

今度、Muninのフォーマットも調べて取り出してみようかな。

てことで、スクリプトはまたAWSの課金のほうに戻ります・・・(今週には完成させたひ)。