본문 바로가기
프로그래밍/slf4j 사용하기

slf4j 와 log4j 2 연동

by Flow.X 2022. 1. 7.
728x90

앞에서 했던 slf4j 와 logback 연동도 있는데

간단히 소스코드 수정 없이 log4j 2 와 연동하는법도 정리해보려 한다.

 

maven이나 gradle을 쓰면 되는데 이해하는데 구찮음. (언젠간 해야겠지...)

 

2021.12.28 - [프로그래밍/slf4j 사용하기] - slf4j 와 logback연동

 

slf4j 와 logback연동

java에서 다양한 log framework이 있다. 요즘은 maven이나 gradle등으로 설정하면 다 되는데 생각보다 standalone으로 셋팅한는 법이 없어 정리해보려 한다. 그중에 logback 과 slf4j 연동을 한번 해보려 한다 sl

flowx.tistory.com

 

 slf4j 사이트로 가보자

https://www.slf4j.org/manual.html

연동하려는게 log4j2 임으로 log4j2 사이트로 가보자

 

slf4j 와 연동하는 설명이 여기에 있네

https://logging.apache.org/log4j/2.x/log4j-slf4j-impl/index.html

 

두개(log4j-slf4j-impl-2.0.jar , log4j-to-slft4j-2.0.jar) 를 두개를 같이 쓰지말라고 하는듯..

slf4j 연동시 주의점

아래에서 log4j 2 사용을 위해 두개 log4j-api-${latest.stable.version}.jar , log4j-api-core-${latest.stable.version}.jar를

사용하고, Bind 하기위해서 하나가 더 필요하겠지.

 

여기에 설명이 있다.

log4j-slf4j-impl 이고,  log4j-to-slf4j 와 같이 사용하지 말랜다..

 

다운로드 받자

아래에서 다운받아서 풀면 엄청 나온다.

그중 3개만 가져오자.

https://logging.apache.org/log4j/2.x/download.html

 

vscode 설명

log4j2.xml을 만들자.

그리고 돌려보면 끝.

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
  <!-- Define custom levels before using them for filtering below. -->

  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <Root level="trace">
      <!-- Only events at DIAG level or more specific are sent to the console. -->
      <AppenderRef ref="Console"/>
    </Root>
  </Loggers>
</Configuration>

소스 수정은 없이 모듈교체, log 환경설정파일만 변경으로도 잘 돌아간다.

 

728x90

'프로그래밍 > slf4j 사용하기' 카테고리의 다른 글

slf4j 와 logback연동  (0) 2022.01.10