[log4j2] 사용 방법

KIM KYUBIN·2022년 10월 1일
0

0. 알아 두어야할 정보

0.1 Level

로그 레벨설명
FATAL아주 심각한 에러가 발생한 상태. 일반적인 어플리케이션에서는 사용할 일이 없음
ERROR요청을 처리하는 중 문제가 발생한 상태
WARN실행에는 문제가 없으나 향후 에러가 발생할 수 있는 경고성 메시지
INFO로그인, 상태변경과 같은 정보성 메시지
DEBUG디버그 용도로 사용하는 메시지
TRACE디버그 레벨보다 상세한 이벤트를 나타내는 메시지
  • 로그 레벨은 FATAL > ERROR > WARN > INFO > DEBUG > TRACE 순서를 가지며,
    DEBUG을 로그 레벨로 지정하면 상위 레벨인 FATAL ~ DEBUG까지 로그가 출력이 됩니다.

1. pom.xml에 Dependency 추가

<dependencies>
	<dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-core</artifactId>
       <version>2.17.1</version>
	</dependency>
	<dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-api</artifactId>
       <version>2.17.1</version>
	</dependency>
</dependencies>

2. src/main/resources에 log4j2.xml 생성

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
  
    <Appenders>
        <Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="%style{%d{yyyy/MM/dd HH:mm:ss,SSS}}{cyan} %highlight{[%-5p]}{FATAL=bg_red, ERROR=red,
            INFO=green, DEBUG=blue}  [%C] %style{[%t]}{yellow}- %m%n -"/>
        </Console>
    </Appenders>
    
    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="console" />
        </Root>
    </Loggers>
  
</Configuration>

3. 실행

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class HelloWorld {
	private static final Logger logger = LogManager.getLogger(HelloWorld.class);
	
	public static void main(String[] args) {
		logger.info("trace");
	}

}
profile
상상을 현실로 만들기 위해 노력하는 개발자

0개의 댓글