2011年10月20日木曜日

例外ログをメール送信してウェブシステムの品質を無料改善しよう

今日は久しぶりにソフトウェアの話を書きます。独自システムによるウェブサイトを運営している会社なら、どこでも役に立つちょっとしたテクニックの話です。

ソフトウェアの品質管理は大変です。バグを取るにしても、どのようなテストをするべきか、どのようなテストを書くべきか、テストにも多大なコストがかかります。

バグ発見を無料でできてしまう一つのテクニックがあるのです。

それは簡単な仕組みです。

ウェブシステムでは、もしシステム内でエラーや例外が発生したら、それをキャッチしてユーザにエラー画面を表示していると思います。そして、そのログを記録しますよね。

弊社で行っている仕組みは、その例外ログを毎日1回まとめてメールで管理者に送信するということです。

そして管理者は、それをみてバグを直します。メールには、例外の名前とスタックトレースの最初の一行目を乗せていますので、一つのバグはほんの数分で直せるのです。

弊社では新システムにこれを実装してから、あっという間に数十個のバグを直すことができました。そして新しいバグを埋め込んでしまっても、翌日には気づいて直すことができます。これにより気づかずに一部ユーザに不便をかけ続けることがなくなりました。

また、サーバの一部が故障して冗長性が失われているときにも、この方法でログを記録していますので、同じ仕組みでハードウェアトラブルも管理することができて楽ちんです。

そのようにユーザには表示しないエラーが発生している場合でも、ログを記録するようにすることで、トラブルを早期に発見・治療することができます。

ウェブシステムを長年運用している会社ならどこでもやっているだろうテクニックですので、いまさら書くことでもないかとは思いましたが、知らない人もそれなりにいると思い、書くことにしました。