04. SLF4J와 Logback을 이용한 로그 남기기 [Spring]
JAVA 에는 많은 로깅툴이 존재함.
- commons-logging
- log4j
- java util logging
- logback
commons-logging 제외시키기
porn.xml에서 spring.webmvc 밑에
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
SLF4J와 Logback 추가하기
porn.xml에서
org.slf4j
jcl-over-slf4j
logback-classic 추가하기
잘 나오지 않을때
window - Preferences - Maven - Download repository index updates on startup 클릭
Loogback 설정하기
src/main/resources 에 logback.xml file생성
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="console"
class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>
▶ %-5level %d{HH:mm:ss.SSS} [%thread] %logger[%method:%line] - %msg\n
</pattern>
</encoder>
</appender>
<logger name="org.springframework" level="INFO" />
<!-- URLInterceptor 설정후 -->
<logger name="interceptor" level="DEBUG" />
<root level="info">
<appender-ref ref="console" />
</root>
</configuration>
URLInterceptor 재설정해주기
private Logger logger = LoggerFactory.getLogger("Interceptor");
logger.info("클라이언트가 접속함!");
logger.info(request.getRemoteAddr());
logger.debug("컨트롤러 실행을 끝마침!");
로 바꿔주기
Logback Log Level
- TRACE
- DEBUG : 변수에 무엇이 들어있는지 if를 태웠을때 어떤게 탔는지
- INFO : 누가 회원가입을 했는지 누가 무엇을 했다
- WARN
- ERROR
목적에 따라서 보고싶을것을 보기위해 나눔