外部チェックの戻り値について
お世話になります。
zabbix 1.8.15をAmazon Linuxで動かしています。
あるサーバーのリソース監視を外部スクリプト(シェルからPHPをキックしています。)を起動して行なっております。
監視データ>最新データ>ヒストリ
で取得した値の確認をしているのですが、動作自体は問題なく、正常に値が取得できています。
ただ、改行を含む値が取得できずに困っています。
===========================================
アイテム設定
ホスト
説明
タイプ 外部チェック
キー
データ型 文字列 or ログ or テキスト
更新間隔(秒)
例外の更新間隔(秒) 例外の更新間隔はありません
例外の更新間隔の作成 間隔 期間
ヒストリの保存期間(日)
ステータス
アプリケーションの作成
アプリケーション
============================================
※データ型は「文字列」「ログ」「テキスト」の3種類を試しましたが、結果は同じでした。
外部スクリプトで取得する具体的な値は以下の様な値です。
2013-01-19T03:26:22.595Z Restored from snapshot
2013-01-19T03:26:34.193Z Backing up DB instance
2013-01-19T03:29:20.440Z Finished DB Instance backup
2013-01-19T19:17:29.749Z Backing up DB instance
2013-01-19T19:19:34.650Z Finished DB Instance backup
2013-01-20T19:17:34.771Z Backing up DB instance
2013-01-20T19:19:39.938Z Finished DB Instance backup
上記は、外部スクリプト内で、改行を入れて結果を出力していまして、zabbix側では一番上の一行しか表示されない状態です。
下記のように改行しないで出力すれば、もちろん一行でzabbix側のヒストリに表示されますが、大変見にくいため困っています。
2013-01-19T03:26:22.595Z Restored from snapshot 2013-01-19T03:26:34.193Z Backing up DB instance2013-01-19T03:29:20.440Z Finished DB Instance backup2013-01-19T19:17:29.749Z Backing up DB instance2013-01-19T19:19:34.650Z Finished DB Instance backup2013-01-20T19:17:34.771Z Backing up DB instance2013-01-20T19:19:39.938Z Finished DB Instance backup
zabbixの仕様なのか、なにか解決策があるのかご教授いただければと思いますので、どうぞよろしくお願い致します。
fripper - 投稿数: 495
外部チェックにおける複数行動作については‥
申し訳ありません、経験ないためお力になれません
代わりの案として、こういうのはいかがでしょうか?という程度で聞き流していただければ。
外部チェックで、直接値を取り込むのではなく、そのアイテムでは 0/1 などの成功・失敗だけを取得しておいて
別途、ログアイテム・Trapperアイテムを定義しておいて、
外部チェックのスクリプト内部から、zabbix_sender経由で値を複数叩きこむとか
いかがでしょうか?
TNK - 投稿数: 4769
Zabbixのバージョンが2.0以降であれば対応しています。
データ型として「テキスト」を選択すれば、Zabbixサーバが取得し
た時のタイムスタンプと、外部スクリプトで取得した複数行の文字
列を受け取ることができます。
Zabbix 1.8ですと、複数行は送れないようです。
実現方法としては、fripperさんが書かれていたように、その外部
チェックで取得できているテキストを、一行づつzabbix_senderを
利用してZabbixサーバに送るようにする方法が良いかもしれません。
devzabbi - 投稿数: 2
fripperさん、TNK さん
返信ありがとう御座いました!
バージョンアップするか、別途fripperさんの仰るようにzabbix_sender経由で行なうか検討したいと思います。