Nagiosを日本語で使ってみる その1

Nagiosとは、システムとネットワーク監視をおこなうアプリケーションです。
指定したホスト、またはサービスの監視を行い、障害発生時には警告メールの送信等が出来ます。

うちの会社では、(私がこっそり)サーバ/サービスの死活チェックに使用しています。

機能的には問題ないのですが、海外のオープンソースモノってことで全て英語で書かれているのがネックとなり
使用を控えている方もいらっしゃるのではないでしょうか?

そこで、Nagiosを完全日本語で使ってみようと思い立ち、こっそり会社で試してみました。
どうせなら、現在の最新版の3.0.3でやっちゃいます。

1.Nagios本体のダウンロード
普通に本家からstable版をダウンロードします。

http://www.nagios.org/download/

2.日本語化パッチのダウンロード
日本語化パッチをダウンロードします。

http://osdn.dl.sourceforge.jp/nagios-jp/31797/nagios-3.0.3-ja-utf8.patch.gz

3.パッチの適用
ちゃっちゃとパッチを当てちゃいます。

gzip -dc nagios-3.0.1-ja-utf8.patch.gz | patch -p0

4.cgiのソースファイルを編集
extinfo.cgi、cmd.c、trend.cは、metaタグでcharsetが指定していないためブラウザによっては
日本語を使用すると文字化けします。
例)nagios-3.0.3/cgi/extinfo.cの582行目付近

	printf("<html>\n");
	printf("<head>\n");
	printf("<link rel=\"shortcut icon\" href=\"%sfavicon.ico\" type=\"image/ico\">\n",url_images_path);
	printf("<title>\n");
	printf("Extended Information\n");
	printf("</title>\n");

↓のように変更する。

	printf("<html>\n");
	printf("<head>\n");
	printf("<link rel=\"shortcut icon\" href=\"%sfavicon.ico\" type=\"image/ico\">\n",url_images_path);
	printf("<meta http-equiv='content-type' content='text/html;charset=UTF-8'>\n");
	printf("<meta http-equiv='Pragma' content='no-cache'>\n");
	printf("<title>\n");
	printf("Extended Information\n");
	printf("</title>\n");

5.make以下を実行
あとは普通にインストールしてあげれば、日本語環境で使えるはずです。
各設定ファイルをUTF8で日本語記述してあげれば、ホストのエイリアスやサービス名で日本語が使用できるはずです。




あとは需要があるようでしたら、警告メールの日本語化対応やpnp4nagiosの日本語化対応についても記述して行こうかと
考え中です。