11 外部チェック
概要
外部チェックは、Zabbixサーバーがシェルスクリプトを実行するか、またはバイナリを実行して行うチェックです。ただし、ホストがZabbixプロキシによって監視されている場合、外部チェックはプロキシによって実行されます。
外部チェックでは、監視対象のホスト上でエージェントを実行する必要はありません。
アイテムキーの構文は次のとおりです。
script[<parameter1>,<parameter2>,...]
各要素の意味は次のとおりです。
| ARGUMENT | DEFINITION |
|---|---|
| script | シェルスクリプトまたはバイナリの名前。 |
| parameter(s) | 省略可能なコマンドラインパラメータ。 |
スクリプトにパラメータを渡したくない場合は、次のように指定できます。
script[] or
script
Zabbixサーバーまたはプロキシは、外部スクリプト用に指定されたディレクトリを検索し、コマンドを実行します(Zabbixサーバー/プロキシ設定ファイルの ExternalScripts パラメータを参照してください)。
コマンドはZabbixサーバー/プロキシと同じユーザーで実行されるため、必要に応じて、アクセス権限や環境変数はラッパースクリプト内で処理する必要があります。
また、そのユーザーが実行できるように、コマンド自体の権限も設定されている必要があります。
実行可能なのは、指定されたディレクトリ内のコマンドのみです。
外部チェックを過度に使用しないでください。各スクリプトの実行にはZabbixサーバー/プロキシによるforkプロセスの開始が必要であり、多数のスクリプトを実行するとZabbixのパフォーマンスが大幅に低下する可能性があります。
使用例
最初のパラメータ '-h' を指定してスクリプト check_oracle.sh を実行します。2番目のパラメータは、ホストのプロパティでの選択に応じて、IPアドレスまたはDNS名に置き換えられます。
check_oracle.sh["-h","{HOST.CONN}"]
ホストがIPアドレスを使用するように設定されている場合、Zabbixサーバー/プロキシは次を実行します。
check_oracle.sh '-h' '192.168.1.4'
外部チェックの結果
外部チェックの戻り値は、チェックによって生成される標準出力と標準エラー出力です。
テキスト(character、log、またはtext型の情報)を返すアイテムは、標準エラー出力があっても未サポートにはなりません。
戻り値は16MBに制限されています(切り捨てられる末尾の空白文字を含む)。データベースの制限も適用されます。
要求されたスクリプトが見つからない場合、またはZabbixサーバー/プロキシにその実行権限がない場合、アイテムは未サポートになり、対応するエラーメッセージが表示されます。
タイムアウトした場合、アイテムは未サポートになり、対応するエラーメッセージが表示され、スクリプト用にforkされたプロセスは終了されます。