Last Updated on 2021年7月4日 by かんりにん
[pukiwiki]
nagiosで設定される引数がどこで定義されているのかをちょっと調べてみた。
システム内で使われる変数はマクロとして扱われる。
(言うなればnagiosの環境変数、的な?ちょっと語弊があるかも)
例:$HOSTNAME$、$HOSTADDRESS$、$USERn$など
**システム定義マクロ
一部は設定ファイルでよく見るのでなじみがあるが、あまり見かけない定義も多数あるので
設定ファイル内のパラメータとマクロ変数の相関関係などを確認する場合は、下記公式ページを参照のこと。
マクロ一覧はこちら。
http://nagios.sourceforge.net/docs/3_0/macrolist.html
ソースファイル中の、”common/macros.c”で確認することができる。
以下、macros.cから抜粋。
-”マクロ”HOSTNAME”の場合”
case MACRO_HOSTNAME:
*output = (char *)strdup(temp_host->name);
break;
-”マクロ”HOSTSTATE”の場合”
case MACRO_HOSTSTATE:
if(temp_host->current_state == HOST_DOWN)
*output = (char *)strdup(“DOWN”);
else if(temp_host->current_state == HOST_UNREACHABLE)
*output = (char *)strdup(“UNREACHABLE”);
else
*output = (char *)strdup(“UP”);
break;
**ユーザー定義マクロ
ユーザーが定義できる引数マクロ。etc/resource.cfgに記述し、最大32個まで定義できる。
引数:$USERn$
[/pukiwiki]