7 外部チェック
概要
外部チェックは、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'
外部チェックの結果
外部チェックの戻り値は、チェックによって生成された標準出力と標準エラーです。
テキスト(文字列、ログ、テキスト型の情報)を返すアイテムは、標準エラー出力があっても未サポートにはなりません。
戻り値は16MB(末尾の空白も含み、切り捨てられます)に制限されます。データベースの制限も適用されます。
要求されたスクリプトが見つからない場合や、Zabbixサーバー/プロキシに実行権限がない場合、アイテムは未サポートとなり、対応するエラーメッセージが表示されます。
タイムアウトの場合、アイテムは未サポートとなり、対応するエラーメッセージが表示され、スクリプト用にforkされたプロセスは終了します。