|
log4j.xmlのサンプルです。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender" >
<param name="threshold" value="warn"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy/MM/dd} %-5p [%t] (%F:%L) - %m%n"/>
</layout>
</appender>
<appender name="FILE" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="C:/temp/webapplication.log" />
<param name="Append" value="true" />
<param name="MaxFileSize" value="1MB"/>
<param name="MaxBackupIndex" value="5"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy/MM/dd} %p:%r:%c:%m%n" />
</layout>
</appender>
<category name="net.sf.hibernate">
<priority value="info" /><appender-ref ref="FILE" />
</category>
<category name="shiten.struts">
<priority value="info" /><appender-ref ref="FILE" />
</category>
<category name="org.apache.struts">
<priority value="info" /><appender-ref ref="FILE" />
</category>
<root>
<priority value="warn" /><appender-ref ref="STDOUT" />
</root>
</log4j:configuration>
|
XMLを書くのが面倒なときは、log4j.propertiesファイルでごく簡単に書いてしまいましょう。
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %5p %c{1} - %m%n
### direct messages to file mylog.log ###
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=mylog.log
#log4j.appender.file.Append=true
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d %5p %c{1} - %m%n
log4j.rootLogger=debug, stdout
#my.test=info, file
|
「%c」は完全修飾のクラス名を出力しますが、パッケージ階層が長いとログが大変読みづらくなります。
そこでお勧めが「%c{1}」という書き方で、これだとクラス名だけが出力されます。
commons-logging.propertiesのサンプルです。
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
#org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger
#org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
#.level = INFO
#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
#
#java.util.logging.FileHandler.pattern = C:/commonlogging.log
#java.util.logging.FileHandler.limit = 50000
#java.util.logging.FileHandler.count = 1
#java.util.logging.FileHandler.append = true
##java.util.logging.FileHandler.formatter = org.apache.commons.logging.impl.Jdk14Logger
#java.util.logging.FileHandler.formatter = org.apache.commons.logging.impl.Log4JLogger
#
#java.util.logging.ConsoleHandler.level = WARN
#java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
|
(first uploaded 2004/09/04 last updated 2007/01/05, URANO398)
|