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 されたプロセスは終了されます。