nagiosには非常に多くのプラグインがあります。 プラグインの大規模なコレクションはnagiosplugins.orgにあります。 自分に合ったものを見つけ、人生を置き、楽しむことができます。 しかし、単一のプラグインが機能に合わない場合はどうしますか? なし。 独自に書きましょう。 とても簡単です。
それでは始めましょう。
最も単純なプラグインを作成するために最初に知っておくべきことは、nagiosが基本レベルでどのように機能するかです。
彼は設定を解析し、そこでプラグインを起動するコマンドを見つけて起動します。 たとえば、php -f checkServer.php。 checkServer.phpは、サーバーをチェックするいくつかのジョブを実行し、応答としてステータスメッセージとシャットダウンコードを返します。
Nagiosは4つのシャットダウンコードを理解します
- 0-すべては問題ありません。
- 1-警告
- 2-重大なエラー
- 3-不明なことが起こりました
ステータスメッセージは、スクリプトによって標準出力に出力される情報です。
したがって、スクリプト自体は(phpでの)nagiosの最も単純なプラグインです。
define( "STATUS_OK", 0 );
define( "STATUS_WARNING", 1 );
define( "STATUS_CRITICAL", 2 );
define( "STATUS_UNKNOWN", 3 );
$checkFilePath = 'file';
if(file_exists($checkFilePath))
{
echo 'File exists. Everything is ok';
exit(STATUS_OK);
}
echo 'File does not exists';
exit(STATUS_CRITICAL);
それだけです-nagiosで接続し、ファイルが存在するかどうかを確認します。 もちろん、phpunitによる自動テストまで、プロジェクトのビジネスロジックの検証を整理できます。