32. 独自プラグイン管理マニュアル

X-MON では、弊社で作成した公式プラグインの他、サードパーティで作成された監視プラグインや、ユーザが独自に作成した監視プラグインを利用した監視を行うことができます。

ユーザが独自に作成した監視プラグインの管理は、「独自プラグイン管理」で行います。

32.1. 用語

32.1.1. 監視コマンド

監視コマンドファイルです。監視プラグインの実行時に、引数付きで実行されます。

プログラムを記載したファイルを、 X-MON にアップロードし、登録します。

「監視コマンド一覧」メニューにて管理します。

32.1.2. 監視プラグイン

監視プラグイン設定です。

X-MON の「サービス設定」で利用する監視プラグインを作成します。

実行するコマンドとして「監視コマンド」を指定します。

合わせて実行する引数についてもこちらで設定します。

32.2. クイックスタート

独自の監視コマンドを登録し、監視プラグイン設定を作成、作成した監視プラグイン設定を利用して、サービス監視を行う流れについて説明します。

check_nagios_latency という、サードパーティ製の監視コマンドを利用する場合を例にご説明します。

check_nagios_latency を監視コマンドとして登録、監視プラグイン設定を作成し、監視登録を行います。

大きな流れとしては以下の通りです。

  • 監視コマンドを登録します。

  • 監視プラグインを登録します。

  • サービス監視を登録します。

32.2.1. 監視コマンドの登録

「管理者メニュー > 高度な設定 > 独自プラグイン管理」に遷移します。

image-20240520-033425.png

「監視コマンド一覧」画面にて「登録」をクリックし、監視コマンドを登録します。

image-20240520-033645.png

監視コマンドファイルをアップロードします。

今回の例であれば、「check_nagios_latency」をアップロードしてください。

image-20240520-033728.png

「登録」をクリックします。「check_nagios_latency」がアップロードされます。

警告

同名のコマンドファイルが既に存在している場合、後からアップロードしたファイルで上書きされます。

これで、監視コマンドの登録は完了です。

image-20240520-033743.png

アップロードしたコマンドファイルは、 /opt/x-mon/lib/usercommand/ 以下に保存されています。

以下のようにして、コマンドラインからの実行が可能です。:

# /opt/x-mon/lib/usercommand/check_nagios_latency -n /opt/x-mon/sbin/nagiostats -w 0.4 -c 0.5
LATENCY OK 0.000s| Latency=0.000;0.4;0.5;;

警告

コマンドファイルは実行、および情報の参照にとどめ、権限等を変更しないようにしてください。

誤って変更してしまった場合は、管理画面から再アップロードを行ってください。

32.2.2. 監視プラグインの登録

次に、監視プラグインを登録します。「登録」をクリックします。

image-20240520-033758.png

image-20240520-034349.png

各カラムについて入力します。

今回は、以下のように設定します。

項目

コマンドID

check_user_xmon_latency

コマンド名称

X-MON 遅延監視

コマンドタイプ

サービス用コマンド

コマンドグループ

その他

実行コマンド

check_nagios_latency

引数

-n /opt/x-mon/sbin/nagiostats -w '$ARG1$' -c '$ARG2$'

各項目の詳細な説明については、ヘルプページをご参照ください。

引数については、アップロードしたプログラムの仕様に従って指定してください。

今回は監視コマンドの README の記述を参照し、次のように決定します。

Checks the latency of the Nagios server

Usage
=====

check_nagios_latency [-hvV?] -w warning -c critical

   -c         critical threshold
   -h, -?     this help message
   -n path    nagiostats path
   -v         verbose output
   -V         version
   -w         warning threshold

Example
=======

./check_nagios_latency -w 0.4 -c 0.5

引数に $ARGx$ を指定した場合は追加で入力が求められますので、以下のように設定します。

デフォルト値には、監視プラグインをサービス登録する際に初期値として表示される値を指定します。指定は任意のため、未指定のままでも問題はありません。

今回は、監視コマンドの README の使用例に従って次のように指定します。

項目

項目名

デフォルト値

$ARG1$

warning

0.4

$ARG2$

critical

0.5

image-20240520-034420.png

「作成」をクリックし、監視プラグイン設定を作成します。

image-20240520-034452.png

作成されました。

32.2.3. サービス監視の登録

作成した監視プラグイン設定をサービスとしてホストに登録します。

「管理者メニュー > ホスト・サービス管理」に遷移した後、 X-MON のサービス設定画面に遷移します。

image-20240520-034555.png

「作成」をクリックし、サービスの新規作成画面に遷移します。

「基本設定 > サービス監視用コマンド」にて、先ほど作成した監視プラグインを、「サービス監視用コマンド」として登録します。

image-20240520-034656.png

サービスの作成後、 X-MON の再起動を行い、設定を反映します。

image-20240520-034743.png

独自監視プラグインを作成し、 X-MON 公式にない監視を実装することができました。

image-20240520-034830.png

なお、「独自監視プラグイン管理」で登録した監視プラグインではグラフ描画が行えませんのでご了承ください。