Keijir Blog

やっぱハワイ行きたいよね

eclipse + commons-logging + log4j


javalog4j の勉強してたらcommons-loggingを使うといいよ
http://www.h7.dion.ne.jp/~s_wat/jakarta/log4j.html

みたいなのをみつけて取り合えず動かしてみた.


src\log\MyLogger.java

package log;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class MyLogger {
    private static Log log = LogFactory.getLog(MyLogger.class);
    public static Log getInstance(){
    	return log;
    }
}

*1 修正

src\log\MyLoggerTest.java

package log;

public class MyLoggerTest {
	public static void main(String[] args) {
		MyLogger.getInstance().debug("debug"+i);
		MyLogger.getInstance().info("info"+i);
		MyLogger.getInstance().warn("warn"+i);
		MyLogger.getInstance().error("error"+i);
		MyLogger.getInstance().fatal("fatal"+i);
		}
	}
}


src\commons-logging.properties

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger


src\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="Appender1" class="org.apache.log4j.FileAppender">
      <param name="File" value="log\\log4j.log" />
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%-5p %d %c - %m [%t] (%F:%L)%n"/>
      </layout>
   </appender>
   <root>
      <level value="debug" />
      <appender-ref ref="Appender1" />
   </root>
</log4j:configuration>

src\log4j.dtd
apache-log4j-1.2.15の中から探してもってくる.


参考にしたとこ

*1:なんかテストで動かしたクラス名のままになってた...だけどカテゴリの指定あってるのかな???