Log4j 2 XML Configuration
Xml 파일 위치
XML 파일 (log4j2.xml)을 작성하고, WEB-INF/classes 하위에 포함될 수 있도록 위치시킨다.
Log4j 2가 초기화될 때 자동으로 위 설정 파일을 읽어들인다
Xml 파일 정의 Sample
파일 (log4j.xml)을 작성 시 Log4j 2에서는 최상의 요소가 <Configuration>으로 변경 되었음을 기억해야 합니다.
<Configuration>요소 아래에 Logger, Appender, Layout 설정 등과 관련한 하위 요소를 정의
<?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" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%-5p: %d] %m [%c]%n" />
</layout>
</appender>
<logger name="jdbc.audit" additivity="false">
<level value="warn" />
<appender-ref ref="console" />
</logger>
<logger name="jdbc.resultset" additivity="false">
<level value="warn" />
<appender-ref ref="console" />
</logger>
<logger name="jdbc.resultsettable" additivity="false">
<level value="info" />
<appender-ref ref="console" />
</logger>
...
<root>
<priority value="debug" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
관련/참고 사이트
http://logging.apache.org/log4j/2.x/manual/configuration.html
http://logging.apache.org/log4j/2.x/manual/configuration.html#XML
Logger의 사용
public class SampleClass extends HandlerInterceptorAdapter {
protected Logger logger = LoggerFactory.getLogger(SampleClass.class);
public String sampleMethod(Object obj) throws Exception {
logger.debug("logger 내용");
}
log Level
Log Level에 따라 log의 출력여부를 지정할 수 있다.
Log Level | DESC |
FATAL | 아주 심각한 에러가 발생한 상태를 나타냄. 시스템적으로 심각한 문제가 발생해서 어플리케이션 작동이 불가능할 경우가 해당하는데, 일반적으로는 어플리케이션에서는 사용할 일이 없음. |
ERROR | 요청을 처리하는중 문제가 발생한 상태를 나타냄. |
WARN | 처리 가능한 문제이지만, 향후 시스템 에러의 원인이 될 수 있는 경고성 메시지를 나타냄. |
INFO | 로그인, 상태변경과 같은 정보성 메시지를 나타냄. |
DEBUG | 개발시 디버그 용도로 사용한 메시지를 나타냄. |
TRACE | 디버그 레벨이 너무 광범위한 것을 해결하기 위해서 좀더 상세한 상태를 나타냄. |
Appender 설정
ConsoleAppender : 이클립스 console 같은곳에 로그를 출력하기 위해 사용합니다.
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d %5p [%c] %m%n" />
</Console>
FileAppender ; 로그를 파일에 저장할 때 사용합니다.
<File name="file" fileName="./log file path/sample.log" append="false">
<PatternLayout pattern="%d %5p [%c] %m%n" />
</File>
log를 File과 Console에 동시에 쌓는 코드
<root>
<priority value="debug" />
<appender-ref ref="console" />
</root>
'Development > Java' 카테고리의 다른 글
log4j 2.x 버전 다운로드 (0) | 2021.12.14 |
---|---|
[log4j] org.quartz.core.QuartzSchedulerThread 로그가 보기 싫을때 (0) | 2021.05.27 |
JDBC 드라이버 사용시 오라클 클라이언트 설치가 필요할까? (0) | 2020.12.07 |
iReport Designer Tool 가이드 (0) | 2020.03.30 |
Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener (0) | 2019.02.04 |