スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ログ重要

Webアプリケーションのログ管理について

この記事は、ログ出しの概要。サワり。cronのログはエラーだけ出すよ(なるほど)。rsynclogなどのツール。
ログ重要、現在関わってる案件で改めて思い知らされた。ログの出力内容と出し方も重要。ユーザーの操作ログとっても便利。次回からは操作ログ必ず出すようにする。ログのローテーションで日時と最大ローテーション数指定できるのが一番良さそう。気をつけないとログだけで数Gなんてすぐ。


スポンサーサイト

slf4j 参考サイト

Log4J徹底解説~使い方(logback)

ここで概要をつかんで。


SLF4J

ここからダウンロード。とはいえダウンロードは実際にはmaven頼りだけど。


Logback Home

設定ファイルのドキュメントはここから。


C#だとlog4net?

log4net, LoggingAB, NLogを比較してみた « 来栖川電算

リンク変わってた、ので (追記:20091013)


log4net, LoggingAB, NLogを比較してみた » EnterpriseLibrary » 来栖川ブログ

C#でもロギング結構あった気がしてたんだけど、3つのライブラリについて比較されている。 この結果みるとlog4netが無難なように思える。そういうこと。
リンク切れだが、404ページがかわいらしい。


log4j忘れてた

久しぶりにlog4j使おうと思ったら忘れてた。

Log4J徹底解説~使い方(2)

もうこのサイトは、定番かもしれない。必要十分な情報が得られます。

log4jの後継って...

Logback Project - Logback Site

ma2の日記 - log4jはlogbackへ
log4jの後継なのか? なんでまた新しいものを? これ普及する?

log4net

使い方

特に難しいということはない、設定箇所だけ押えておけば後は使うだけ。

  1. log4net.dllをプロジェクトで参照
  2. アセンブリファイル(AssemblyInfo.cs)に1行追加
  3. [assembly:log4net.Config.XmlConfigurator(Watch=true)]
  4. 構成ファイルをどっかから持ってくるか書く
  5. 構成ファイルのファイル名を「モジュール名(xxx.exe|dll).config」とする
  6. 実行モジュールと同じディレクトリに置く?

Log4Netのちょっと良い設定より
(o^-')b グッ!
以下の設定をすると「アプリ名.日付.log」というファイル名になります。
<log4net>
  <appender name="RollingLogFileAppender" 
 type="log4net.Appender.RollingFileAppender">
   <param name="File" value="MyApp" />
   <param name="AppendToFile" value="true" />
   <param name="MaxSizeRollBackups" value="10" />
   <param name="MaximumFileSize" value="100KB" />
   <param name="RollingStyle" value="date " />
   <param name="StaticLogFileName" value="false" />
   <param name="DatePattern" value='"."yyyy-MM-dd".log"' />
   <layout type="log4net.Layout.PatternLayout">
    <param name="Header" value="[Header]\r\n" />
    <param name="Footer" value="[Footer]\r\n" />
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
   </layout>
  </appender>

  <!-- Setup the root category, add the appenders and set the default level -->
  <root>
   <level value="INFO" />
   <appender-ref ref="RollingLogFileAppender" />
  </root>
 </log4net> 

LogViewer

フリーでWindows上で動作するLogViewerを調べてみた。
ファイルに出力したログをリアルタイムで見たい場合に便利なので探してみたけど。
SourceForge.net: Tail for Win32

仕事で使った。でもBuggy。その上未完成。

SourceForge.net: LogViewer

.NET Framework製。

Log4j project - Chainsaw v2

JavaによるLog4j用のapacheプロジェクト製。

Log4Net Viewer 0.7.0.0

.NET Framework製。

log4cplus 設定ファイルサンプル

ログファイルxxx.logとコンソールへの出力を日替わりでの出力
# RootLogger
log4cplus.rootLogger=DEBUG, FILE, CONSOLE
#log4cplus.logger.xxxx.logger=DEBUG, FILE

# FILE Appneder
log4cplus.appender.FILE=log4cplus::DailyRollingFileAppender
#log4cplus.appender.FILE.Threshold=ERROR
log4cplus.appender.FILE.Schedule=DAILY
#log4cplus.appender.FILE.MaxBackupIndex=14
log4cplus.appender.FILE.File=xxxx.log
log4cplus.appender.FILE.DatePattern='.'yyyy-MM-dd
log4cplus.appender.FILE.layout=log4cplus::PatternLayout
#log4cplus.appender.FILE.layout.ConversionPattern=%d{%m/%d/%y %H:%M:%S} [%t] %-5p %c{2} %%%x%% - %m [%l]%n
log4cplus.appender.FILE.layout.ConversionPattern=%D{%Y/%m/%d %H:%M:%S} %-5p %c{2} - %m %n

# CONSOLE 
log4cplus.appender.CONSOLE=log4cplus::ConsoleAppender
#log4cplus.appender.CONSOLE.Threshold=INFO
log4cplus.appender.CONSOLE.layout=log4cplus::PatternLayout
log4cplus.appender.CONSOLE.layout.ConversionPattern=%D{%Y/%m/%d %H:%M:%S} %-5p %c{2} - %m %n

# .

log4php

log4php

完成度高そうに見える。使い方もlog4jとほぼ同様。実際にlog4jのpropertiesファイルにほんの少しの修正で動作した(log4j->log4php、org.apache.log4j->'')。
※注意
ファイル出力先が存在しない、あるいはパーミッションが不正の場合に何の警告、エラーも出力されないので気をつけること
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。