タイガー!タイガー!じれったいぞー!(SE編)

AS400, Java, JavaEE, JSF等の開発、習慣など。日々の気づきをまとめたブログ(備忘録)

正常時の状態を知る

サーバ監視には、オープンソースのZabbixを使わせてもらっている。主に、ICMPによる死活監視、SNMPでのネットワーク監視、WEB等のサービス監視、さらには温湿度監視まで。アラートが上がると、チャットへ通知が来るので、スマートフォンからリアルタイムで確認できる。休みの日でも「システムは正しく動いているか?」という不安を解消してくれた。

先月、ICMPの応答時間閾値を超えたとき、さらにインターネット回線で遅延が生じ、ファイアウォールがプライマリからセカンダリへ自動切替したとき、多くの通知が届くことになった。得てして、こういったものは、夜間に届くものである。

アラート結果は、どちらの場合も、閾値の設定に問題があった。先の例では、サーバ側で高負荷のバッチ処理が走ったとき、日によって応答時間が掛かることがわかった。


監視を始めた時によくあることだが、最初は仕掛ける項目の「正常時の状態」を正しく把握しておらず、2、3日後にアラートが届いたりする。 その場合、直近の監視ログを確認すれば、取得する値の最小値、最大値、平均値、最頻値などを確認し、「このラインを超えたら、通知してもらおう」と以前よりも現実的な設定値を仕掛けられるわけだ。

ここでの学びは、このような小さい改善においても、何か新しいことを始めるときには、正解は誰もわからないということ。「トライ&エラーを繰り返せ」とよく耳にする言葉だが、何も新製品の開発やイノベーションでなくても、目の前の仕事でも使えるスキルである。

監視システムやログ管理システムは、平常時・異常時に関わらず、常に「今」という一瞬一瞬をプロットしてくれる。これに加えて、異常に気付くためには、正常時の状態を自分の感覚で知っておきたい。それは機器から発生する「音」からもしれないし、ブラウザ操作での「応答時間」かもしれない。我々の五感で「正常時」の状態を把握しておけば、いざというときに必ず役に立つ。


もし何らかの問題が発生しても、監視システムという名の「相棒」とあなたの「感覚・勘」がミックスされたとき、事件は急速に解決に向かうことになるだろう。