log4j는

 log4j-1.2.9.jar 파일을 lib에 임포트하고

classes 폴더아래 log4j.properties 또는 log4j.xml 파일을 설정해 주면 된다.

 

===========================================================

<<log4j.xml>> => 방법1 및 ibatis 쿼리로그보기 설정

===========================================================

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <!-- 콘솔로 보기(디버그) -->
    <appender name="CONSOLE-debug" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%p - %C{1}  :  %M  %m %n"/>
        </layout>
    </appender>
   
    <!-- 콘솔로 보기(인포) -->
    <appender name="CONSOLE-info" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%m ---%d %n"/>
        </layout>
    </appender>
   
    <!-- 콘솔로 보기(ibatis)
    <appender name="sql" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d [%t] %-5p %c{1} - %m%n" />
    </layout>
        <filter class="org.apache.log4j.varia.StringMatchFilter">
         <param name="StringToMatch" value="Result" />
            <param name="AcceptOnMatch" value="false" />
        </filter>
 </appender>
 -->
 
 <!-- 파일로 보기(ibatis) -->
    <appender name="sql" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="file" value="D:\\project\\maptest\\log\\ibatis.log"/>
        <param name="Append" value="true"/>
        <param name="DatePattern" value="'.'yyyy-MM-dd"/>
        <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d [%t] %-5p %c{1} - %m%n" />
    </layout>
    </appender>
 

 <category name="com.ibatis">
    <priority value="debug" />
  </category>
  <category name="java.sql">
    <priority value="debug" />
    <appender-ref ref="sql" />
  </category>
    
    <logger name="org.apache">
        <level value="WARN"/>
    </logger>
   
    <root>
        <level value="INFO"/>
        <appender-ref ref="CONSOLE-debug"/>
       
        <!--<appender-ref ref="LOGFILE-DAILY"/>-->
        <!--<appender-ref ref="LOGFILE-SIZE"/>-->
        <!--<appender-ref ref="CONSOLE-info"/>-->
        <!--<appender-ref ref="LOGFILE-XML"/>-->
    </root>
</log4j:configuration>
 

 

 

===========================================================

<<log4j.properties >> => 방법2

===========================================================

#root logger
log4j.rootLogger = INFO, stdout1,stdout2

#logger level ALL( all은 모든로그를 출력 )
log4j.logger.com.ex = ERROR
log4j.logger.org.apache.jsp = FATAL

#console appender (option 1 큰솔에 출력)
log4j.appender.stdout1 = org.apache.log4j.ConsoleAppender
log4j.appender.stdout1.layout = org.apache.log4j.SimpleLayout

#file appender(option 2 파일에 출력)
log4j.appender.stdout2 = org.apache.log4j.FileAppender
log4j.appender.stdout2.file = d:\\project\\maptest\\log\\weblog.log
log4j.appender.stdout2.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout2.layout.ConversionPattern = %d{HH:mm:ss} %t %M %m \n

 

===========================================================

테스트 하기(JUNIT 을 이용하여 테스트 하였다.)

===========================================================

import junit.framework.*;
import org.apache.log4j.Logger;
//import org.apache.log4j.BasicConfigurator;

public class TestCaseLog extends TestCase{
 
 static Logger logger = Logger.getLogger(TestCaseLog.class);
 
 public void testLog()
 {
  //BasicConfigurator.configure();

        logger.debug("[DEBUG] Hello log4j."); //no print
        logger.info ("[INFO]  Hello log4j."); //print
        logger.warn ("[WARN]  Hello log4j."); //print
        logger.error("[ERROR] Hello log4j."); //print
        logger.fatal("[FATAL] Hello log4j."); //print
        //loger.log( Level.DEBUG , "debug") 와 동일하다.
 }
}

[출처] log4j 설정하기 및 ibatis 쿼리 로그 보기|작성자 깨비


+ Recent posts