• ベストアンサー

ログについて

唐突な質問で申し訳ないのですがログに書き込むケースってどのような場合ですか? 例えばphpのエラーは画面に表示させずログに書き込むというのはわかるのですがその他でログを 取る場合についてどんな時にどのようなログを書き込むのか箇条書きでも構いませんので具体例をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • denbee
  • ベストアンサー率28% (192/671)
回答No.3

>それこそログインや登録等の重要な場合の処理に限ると思うのですがこのような場合もdieで >停止する前に渡された引数の値等もログに残すべきでしょうか? 元の質問自体が漠然とし過ぎているため、確答できません。 テストの工程であれば、バグが存在するのが前提ですから、ログのレベルは詳細なほどよいでしょう。 #dieが発生すれば、当然その原因の追及と対策が必要になるわけですが、 #引数の情報なしで「何故dieが発生したか?」という疑問に答えられますか? 実運用であれば、ファイル容量や性能への影響からログはあまり沢山とらない方がいい という考え方がある一方で、障害発生時に頼りになるのがログだけという状況があるため、 (多くの場合、ユーザは有益な情報を殆ど提供出来ないことが多い) エラー系だけでなく、どんな操作や処理を行っていたのかを確認するために要所要所で 情報の出力を行うという考え方があります。 しかし、セキュリティの観点で見ると、不正な利用や外部からの侵入者を検知するために、 セキュリティ観点でのログを最大限に取得するという考え方もあります。 このように、システムの方針が分からない限り、ログの取得レベルと言うのは、 明確な回答が出来ないものです。

その他の回答 (2)

  • nak777r
  • ベストアンサー率36% (49/136)
回答No.2

ログって、履歴とか情報を記録に残す事の意味ですよね 掲示板の書き込まれた情報もログですし エラーの情報を記録するのもログです まぁ、上記以外に調査をする為のログというのもあります どんなキーワードで検索を行なったか、 抽出条件として多く使われている物はなにか、 ソート条件として多く使われている物はなにか 等ログを取って集計すれば ユーザーが、このページで何を求めているのかを調べ る事ができて、HPの改善に役立ちますよね

dcx147
質問者

お礼

お返事ありがとうございます。 なるほど。検索キーワードやソート順等は納得です!DBから検索やDBのデータをソートは よくある話ですがこれらの動作をDBに入れるということも見かけないですが残しておけば貴重な情報になりますね。 >掲示板の書き込まれた情報もログですし これは書き込み情報をDBに入れる場合もDBと同様にログを残すという意味でしょうか? それともDBには書き込まない内容(例えばIPアドレス)をログに残すという意味でしょうか?

  • denbee
  • ベストアンサー率28% (192/671)
回答No.1

あくまで一般的な話になりますが・・・  ・エラーが発生した場合   →エラー系ログ  ・ログインやデータの登録のような、重要な処理を実施する(した)とき  ・周期的な処理を行ったとき   (例えば、定期的にバッチを実施している場合など)   →運用系ログ  ・システムの性能のチェックを行いたい契機   (例えば、DBのレスポンス時間、メモリやディスクの使用量)   →システム系ログ 基本的には、そのシステムでどんな処理を行っていたか、 極力ログの情報だけで推測が可能にすることが目的です。 (主にエラー時の解析や、性能問題の解析など) そのためには情報量が多いほどいいわけですが、一方で不要な情報まで 取得するとログを読み解くときのノイズになりますし、ファイル容量の圧迫したり、 処理速度にも影響を与えます。 「適切なレベルで」ログをとるべきですが、これはシステムによって レベルは異なります。テストを通じてレベルを見極める必要があります。

dcx147
質問者

お礼

お返事ありがとうございます。 >極力ログの情報だけで推測が可能にすることが目的です。 例えばGETの値を利用してなんらかの処理をする場合に値の検証はすると思うのですが現状は 予期せぬ値であった場合にdie等で停止させています。厳密にはエラー文は表示させていませんが。 それこそログインや登録等の重要な場合の処理に限ると思うのですがこのような場合もdieで 停止する前に渡された引数の値等もログに残すべきでしょうか? 残そうと思えばいくらでもログは残せるのですが適切なレベルの見極めが難しいですね^^;