投稿日 2010年5月6日 木曜日 カテゴリ ZABBIX, ツール 投稿者 sugimotoコメント(0) » 

tt_graphic

sugimotoです。

Webサービスの運用ではサーバーやサービスの監視が欠かせないと思います。 オープングルーヴでも突然のサーバー停止や、サービス停止、定期処理の失敗などに備え、監視システムを使って障害発生時にはメール通知するようにしています。

GW中に出かける途中で、監視システムとして運用しているZABBIXから警告メールが飛んできました。

パソコンを持たずに出かけていて、長距離バスに乗っていたんですが、iPhoneにインストールしていたTouchTermを使いました。

TouchTermはiPhoneアプリとして動作するSSHターミナルです。 アプリケーション内で作成したSSHキーのパブリックキーをあらかじめサーバーにおいておくことで、サーバーにSSH経由でログインすることができます。

iPhoneの画面とキーでも十分にサーバー上のログや状況の確認が可能で、問題の箇所をすぐに特定、対応することができました。

iPhoneの画面とキーを使っての操作のため、長時間操作や大きな設定変更は難しいですが、緊急時の一時的な対応には十分使えるツールです。

ソフトウェアエンジニアのためのバグトラッキングシステム : Ciklone

ソフトウェアエンジニアのためのバグトラッキングシステム

ソフトウェアエンジニアのためのバグトラッキングシステム

投稿日 2010年1月14日 木曜日 カテゴリ ZABBIX 投稿者 sugimotoコメント(0) » 

sugimotoです。

ZABBIX agent をWindowsにいれて、Windowsサーバーの監視をしているんですが、イベントログのエラー監視をしたくなりました。

ログ監視によるフィルタリングはうまくできそうになかったので次のような UserParameter を zabbix_agentd.conf で設定するとエラー数がカウントできました。

UserParameter=eventlog.count[*],c:\windows\system32\cscript 
    c:\windows\system32\eventquery.vbs /FI "type eq $1" 
    /L application /FO csv /NH | find /c ","

eventquery の各パラメーターは以下の通りです。

  • /FI : イベントログをフィルタします – type er xxx でログタイプを指定
  • /L : イベントログの種類を指定します – 今回はアプリケーションログでした(system|security)など指定
  • /FO : アウトプットの形式 – 余計な行をフィルタしたいのでCSVを指定しました
  • /NH : ヘッダを表示しない – カウントするのでヘッダはいらないですね

すべてのオプションを確認するには、コマンドプロンプトで以下のコマンドを実行します

c:\windows\system32\cscript c:\windows\system32\eventquery.vbs /?

あとはWebインターフェイスで item に eventlog.count[error] とか指定するとエラーをカウントします。eventlog.count[warn] とかも指定可能

ただし、期間を指定してないので、itemのほうでDiffをとるように設定しましょう。

ソフトウェアエンジニアのためのバグトラッキングシステム : Ciklone

ソフトウェアエンジニアのためのバグトラッキングシステム

ソフトウェアエンジニアのためのバグトラッキングシステム

投稿日 2009年12月9日 水曜日 カテゴリ ZABBIX, サーバーインフラ 投稿者 sugimotoコメント(0) » 

sugimotoです。

昨日、ZABBIX 1.8 をインストールしていたところ、Web UIのインストールではまりました。 環境は CentOS でPHPなど、必要なライブラリは yum でインストールしていました。

サーバーの設定確認をするステップ、次の画面で、MB string supportfalseになっていました。

zabbix_install

php-mbstring をインストールしていなかったことに気がつき、mbstring をインストールしたけど、OKにならず。。

しばらく悩んだあと、Googleで調べるとこんなエントリがありました。

mbstring ライブラリのチェックでPHP 5.2 から導入された関数をチェックしているため、PHP5.1以前のバージョンをインストールした環境の場合、mbstringが設定されててもチェックが通らないらしい。

includes/locales.inc.php

     39 function mbstrings_available(){
     40         $mbstrings_fnc_exist =
     41                 function_exists('mb_strlen') &&
     42                 function_exists('mb_strtoupper') &&
     43                 function_exists('mb_strpos') &&
     44                 function_exists('mb_substr') &&
     45                 function_exists('mb_stristr') &&
     46                 function_exists('mb_strstr');
     47
     48 return $mbstrings_fnc_exist;
     49 }

対応として、44-46行目を変更

includes/locales.inc.php

     39 function mbstrings_available(){
     40         $mbstrings_fnc_exist =
     41                 function_exists('mb_strlen') &&
     42                 function_exists('mb_strtoupper') &&
     43                 function_exists('mb_strpos') &&
     44                 function_exists('mb_substr'); # &&
     45  #               function_exists('mb_stristr') &&
     46  #               function_exists('mb_strstr');
     47
     48 return $mbstrings_fnc_exist;
     49 }

これでうまくとおりました。めでたしめでたし。

よくみたら、ZABBIX1.8の “known problems” に書いてました。。マニュアルはよくみましょう。。

ソフトウェアエンジニアのためのバグトラッキングシステム : Ciklone

ソフトウェアエンジニアのためのバグトラッキングシステム

ソフトウェアエンジニアのためのバグトラッキングシステム