Spring Boot에서 log4j2 설정 방법

2023. 7. 13. 14:02카테고리 없음

반응형

Spring Boot에서 로깅을 구성하는 방법 중 하나는 log4j2를 사용하는 것입니다. log4j2는 구성이 유연하고 높은 성능을 제공하므로 많은 개발자들이 선호합니다.

아래는 Spring Boot에서 log4j2를 구성하는 방법입니다.

 

1. log4j2를 추가합니다.

먼저, Maven 또는 Gradle을 사용하여 log4j2 의존성을 추가합니다. Maven의 경우 다음과 같이 추가할 수 있습니다.

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.14.1</version>
</dependency>

 

2. log4j2 구성 파일을 작성합니다.

log4j2.xml 또는 log4j2.yml과 같은 구성 파일을 작성합니다. 이 예제에서는 log4j2.xml 파일을 사용합니다.

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d %p %C{1.} [%t] %m%n" />
    </Console>
  </Appenders>
  <Loggers>
    <Root level="info">
      <AppenderRef ref="Console" />
    </Root>
  </Loggers>
</Configuration>

 

이 예제에서는 콘솔에 로그를 출력하기 위해 Console appender를 사용합니다. 패턴 레이아웃은 로그 메시지의 출력 형식을 지정합니다. 이 예제에서는 로그 메시지의 날짜, 로그 레벨, 로그를 출력한 클래스 이름, 쓰레드 이름, 로그 메시지의 내용 및 개행 문자를 출력합니다.

 

3. log4j2 구성 파일을 프로젝트에 추가합니다.

구성 파일을 src/main/resources 폴더에 추가합니다.

 

4. Spring Boot 애플리케이션을 시작합니다.

이제 Spring Boot 애플리케이션을 시작하면 log4j2가 구성 파일을 읽고 로깅을 시작합니다.
예를 들어, Spring Boot 애플리케이션의 클래스에서 로그를 기록하려면 다음과 같이 작성할 수 있습니다.

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class MyService {
  private static final Logger logger = LoggerFactory.getLogger(MyService.class);

  public void doSomething() {
    logger.info("doSomething.");
  }
}

이제 MyService 클래스의 doSomething 메소드가 실행될 때 "doSomething 메소드가 실행되었습니다."라는 메시지가 콘솔에 출력됩니다.

반응형