中の技術日誌ブログ

C#とC++/CLIと
VBと.NETとWindowsで戯れる
 

目次

Blog 利用状況

ニュース

自己紹介

東京でソフトウェアエンジニアをやっています。
お仕事大募集中です。
記事執筆や、講師依頼とかでも何でもどうぞ(*^_^*)
似顔絵 MSMVPロゴ
MSMVP Visual C# Since 2004/04-2013/03

記事カテゴリ

書庫

日記カテゴリ

00-整理

01-MSMVP

ログという化け物4

昨今のシステムでログ取りを要件としていますよね?の4回目

ログというのは非常に厄介で、前提で挙げたような構成の場合、Webサーバは2台あるし、DB、帳票と様々なところを経由して画面は表示されますし、WebサーバAとBに同時にアクセスして、HTML情報とjs情報を取得するなんてことになります。

同時にアクセスされた場合に、各々のWebサーバでログを記載していると、実際の結果はAとBとマージしないとわからないことになります。

時間も厄介な要素です。サーバ群をドメイン環境に組んでいる場合にはある程度あちらのサーバも、こちらのサーバも同じ時間といえるのですが、ドメインを組んでいない場合に10分とかずれていたりしたりします。

この場合問題が発生した状況を時系列に並び替えようと思っても、時系列に並べられないという問題があります。

次にテキストファイルであるという問題点があります。

大多数のログは人がみてわかるようにとテキストファイルで書かれています。

コマンドシェルVSパワーシェルとおなじく、ただのテキストファイルは人の目にはやさしいのですが、機械には著しくやさしくありません。

DBにログを残せばいいじゃないかという意見も挙がることでしょう。

確かにある程度の規模までは有力な解だといえます。

気をつけるべきポイントは絶対にロールバックさせてはいけないということです。

処理に失敗した場合にでもロールバックさせてしまうとその処理自体がなくなってしまいます。それはログとはいえないでしょう。

また大量のINSERTにさらされるので、読み取る際には注意が必要です。特にSQLServerのばあいにはダーティリードなり、スナップショット分離レベルで除くように心掛けないといけません。とくにログを覗くのは人手が多いので、忘れがちです。

つづく

投稿日時 : 2007年3月27日 17:04

コメントを追加

No comments posted yet.
タイトル
名前
URL
コメント