/*
Log4j.xml 을 이용한 로그 설정
=============================
이번엔 log4j.xml을 이용한 설정을 이용해 보자.
설정 내용은 거의 같다고 보면 되고, xml형식에 맞춰 작성되는것 밖에
차이가 없다.
파일위치는 properties와 같은 위치에 생성하면 된다.
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">
<!-- 패턴 레이아웃 설정.. -->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%t> [%d{yyyy-MM-dd HH:mm:ss}] [%c{1}] [%L] [%p] %m %n"/>
</layout>
</appender>
<!-- 날짜별 로그 -->
<appender name="dailyout" class="org.apache.log4j.DailyRollingFileAppender">
<!-- 이것은 날짜별로 로그를 남김. 파일명.확장자.DatePattern으로 정의 함-->
<param name="file" value="dailyout.log"/>
<param name="Append" value="true"/>
<param name="DatePattern" value="'.'yyMMdd"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%t> [%d{yyyy-MM-dd HH:mm:ss}] [%c{1}] [%L] [%p] %m %n"/>
</layout>
</appender>
<!-- 특정 크기마다 백업하며 로그-->
<appender name="rolling" class="org.apache.log4j.RollingFileAppender">
<param name="file" value="rolling.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="1kb"/>
<param name="MaxBackupIndex" value="1"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%t> [%d{yyyy-MM-dd HH:mm:ss}] [%c{1}] [%L] [%p] %m %n"/>
</layout>
</appender>
<!-- xml 로그-->
<!-- xml형식으로 로그를 남김 -->
<appender name="xmlout" class="org.apache.log4j.FileAppender">
<param name="file" value="log4jxml.xml"/>
<param name="Append" value="true"/>
<layout class="org.apache.log4j.xml.XMLLayout"/>
</appender>
<root>
<level value="WARN"/>
<appender-ref ref="dailyout"/>
</root>
</log4j:configuration>
이번엔 특별하게 xml형식의 로그까지 설정했다.
최 하단에 있는 rootLogger 설정에서 사용할 로그를 모두 설정하였다.
xml을 이용해 일정 값을 가져온다던지 .
아니면 원격에 있는 xml 로그정보를 확인할 일이 생긴다면
xml log로 남기는것도 괜찮아 보인다.
*/
import org.apache.log4j.*;
public class Log4J_Sample004_UseXML {
static Logger logger = Logger.getLogger(Log4J_Sample004_UseXML.class);
public static void main(String arg[]) {
// 로그를 계속 쌓아두기 위해 MAX_COUNT값을 정의 함.
final int MAX_COUNT = 10;
for (int i=0;i<MAX_COUNT;i++) {
// 각각의 레벨에 맞춰 로그를 남김
logger.debug("debug 로그");
logger.info("info 로그");
logger.warn("warn 로그");
logger.error("error 로그");
logger.fatal("fatal 로그");
}
System.out.println("끝~~~~~~");
}
}
댓글 없음:
댓글 쓰기