監視先のファイル監視
こんにちは。
管理先にあるLogファイルから一部を抜き出すために新しくトリガーを設定したいのですが
上手くいきません、どのようにすれば上手くいくでしょうか?
{{HOSTNAME}:system.run[cat /Logfile/log.log | grep Memory | tail -1 | awk '{print $8}' | sed 's/.*://' | sed 's/%//''].last(0)}>90
をトリガーの条件式に設定しようとしています。
よろしくお願い致します。
ちなみに
cat /Logfile/log.log | grep Memory | tail -1 | awk '{print $8}' | sed 's/.*://' | sed 's/%//'' を監視先で実行したところ想定している数値が上手く取れました。
yk_taiko - 投稿数: 184
「上手いかない」状態が具体的に記載されていないので、アドバイスが難しいです。
何か確認されたこととか、エラーが出力されていたりとかしないでしょうか。
気になったこととして、
system.run の引数の最後にある「'」はどこにかかってるものでしょうか。
Ryo_Takamura - 投稿数: 16
アイテムを追加したらトリガーの作成が上手くいきました。
具体的なエラー文などを掲載せずに投稿してしまい申し訳ありませんでした。
引数の最後の'は誤字でした。
ありがとうございました。
heya - 投稿数: 319
・アイテムの値はちゃんと取得できているのでしょうか?
コマンドの最後の部分、 's/%//'' となっていますが、最後の / の後にシングルクォートが二つあるのは変な気がします。それで、値が取れているんならいいですが。
・アイテムではデータ型を数値(整数)か数値(浮動小数)にしていますか?
さらに、コマンドの結果は必ず数値が返ってくるんでしょうか?数値以外の(例えば「うまく値が取れない」みたいな)文字列になることは無いのでしょうか?
・トリガーの条件式に {HOSTNAME} とあるのが気になります。
そういうマクロはありませんし、{HOST.NAME} というのはありますがそれはトリガーの条件式には使えません。なので、ここは書くとしたら、実際のホスト名かテンプレート名になるはず。
余談ですが、そのコマンドであれば、cat は不要ですね。
grep Memory /Logfile/log.log | tail -1 | ...
もう一つ余談。このコマンドがそうそう変更されないのであれば、ユーザーパラメーターを使った方がいいかもしれません。
参考:http://www.zabbix.jp/node/1032 の最初の回答
--- 追記 ---
書いているうちに yk_taiko さんが同じことを指摘されていたようです。