Webサービス開発におけるトレースログの大切さ

  • このエントリーをはてなブックマークに追加

Webサービスを開発する際にきちんとトレースログ(操作ログ)は取っていますでしょうか?

Windowsアプリケーションの開発などではトレースログを取るのは常識ですが、実際に今までWebシステムなどに関わってきて、トレースログをきちんと取っているサービスやシステムは正直少ないように思います。
(取る慣習があまりないようにも感じます。)

もちろん取っているところ、サーバ容量の問題などでわざと取っていないところもあるでしょう。

不特定多数のユーザーが利用するサービスの場合、不具合があって問い合わせがあったとしても、閲覧環境など状況を細かく質問するのは非常に困難です。

自社内で再現しないような不具合も操作ログを取っておけば解決の糸口になります。
バグが発生した時によくある「状況が分からないとなんとも解決のしようがない!」というエンジニアの悩みもトレースログがあれば解決が早いですね。

もう一度トレースログの大切さについて考えてみました。


社内バグチェックの際に便利

少人数で開発している会社などですと、バグチェックをするのがディレクターであったりすることが多く、バグの発生した状況やバグ内容をエンジニアにうまいこと伝えられないことがあったります。

そういった場合にトレースログでどのユーザーが何をして何のエラーを吐いたのか分かれば大体のことは察しが付くわけです。

テスト会社にお願いしたり、テストに慣れたテスターがいるような環境で開発を行っていれば別ですが、当社のような少人数で制作しているような制作会社ではトレースログによってバグさえ発見してもらえれば修正できるので重宝するわけです。

 

ユーザーに閲覧環境や操作を確認するのは困難なので

ユーザーから受けた不具合で特定の環境下や予測していない操作などで再現がなかなかに難しい不具合があります。

ユーザーにどういう環境で、とか操作を詳しくといったことをヒアリングするのは現実的ではありません。
これは社内バグチェックの際と同様ですが、リリースしたサービスこそ、こちらの予測のつかない操作によってバグが発覚することは多々あります。

報告されたバグに対して、テスト環境などで再現テストを何度も行うのであれば、操作内容とエラー内容をログに吐き出していれば解決は早いでしょう。

 

よく使われる機能など、次の改善にもつながる

トレースログはバグなどの不具合の原因解明だけではなく、サービスの改善にも役立ちます。

サーバのアクセスログを見ればどのページにアクセスが集中しているのか、ということは分かりますが、操作までは分かりません。
PVとか投稿されたデータ数や時間を総合的に見ていけば大体のことは察しが付きますが、トレースログをとっておいた方がより明確に分かりやすいです。

例えば最近ではいちいち画面遷移しないで処理されるようなサービスも多いのでユーザーがどのボタン、どの機能をよく使っているか、逆に使われていないか、など正確なデータを取るためにもトレースログを取った方が良いでしょう。

 

ログを取る際に気をつけたいこと。

吐き出す内容

ログを取る際にリリース前やテスト環境でのデバッグ時のログとリリース用のログは吐き出す内容を分けておいた方がよいでしょう。テスト段階では細かくログを取っていたとしても、リリース時には要所要所を取っておいた方が、不必要にサーバの容量を取られません。

保存サイクル

これもサーバ容量の問題ですが、保存するサイクル、たとえば一週間分など決めておく必要があります。
この設定を忘れて無限に取るとログのせいで容量が圧迫されてしまい本末転倒です。

保存の仕方

これもポイントなのですが、ひとつのファイルに複数ユーザーの動向をすべて吐き出すとログを解析する時間がとられます。例えば会員制のWebサービスなどですと会員毎にログファイルを保存するなど、後で解析するのに効率が良い方法で保存するほうが良いです。

========

これらのトレースログにプラスしてエラー発生時にメールアラートが飛ぶようにしておけば安心ですね。

早くリリースすることを目標にしているとなかなか忘れがちですが、運用に入ってから役に立ちますので、社内でもトレースログを徹底していこうと思います。

執筆者:高本

株式会社8bit 取締役の高本です。 社内のWebサービス企画、プログラミングや、売上・請求管理にいたるまで幅広く担当しております。

関連記事

WordPress

WordPressの会員限定記事配信プラグイン「Simple Analytics」をリリースしました!

WordPressのイベントカレンダープラグイン「Simple Analytics」をリリースしました! ※この記事は2024年10月現在の情報です。 目次1 Simple Analyticsとは?2 こんなお悩みにおすすめです3 Simple Analyticsで できること3.1 月別・週別アクセス数3.1.1 確認できる項目3.2 ページ別アクセス数3.3 外部サイトからのアクセス数3.4 地域・デバイス別アクセス数3.5 時間帯別アクセス数3.6 ページ毎の直帰率3. […]

WordPress

WordPressの会員限定記事配信プラグイン「Limited Post Maker」をリリースしました!

WordPressのイベントカレンダープラグイン「Limited Post Maker」をリリースしました! ※この記事は2024年10月現在の情報です。 目次1 Limited Post Makerとは?2 どんなシーンで使える?3 Limited Post Makerで できること3.1 オウンドメディア、ブログの記事を会員のみに配信3.2 会員登録・ログインフォーム3.3 会員情報の管理4 使い方について5 システム要件6 導入のお問い合わせについて Limited P […]

WordPress

WordPressのフォームプラグイン「Easy Form Maker」をリリースしました!

WordPressのイベントカレンダープラグイン「Easy Form Maker」をリリースしました! ※この記事は2024年10月現在の情報です。 目次1 Easy Form Makerとは?2 どんなシーンで使える?3 Easy Form Makerで できること3.1 お問合せフォームを作成3.2 質問を自由に決めてアンケートフォームを作成3.3 Webサイトへの設置はショートコード1行3.4 問合せやアンケート結果をデータベースへ蓄積3.5 複数のフォームを設置するこ […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。