728x90
log4j란?
▶아파치에서 만든 오픈 소스 라이브러리
▶설정을 통해 로그를 선택적(레벨별)로 콘솔에 남기거나 파일에 생성하는 기능
▶어떤 값이 넘어오는지 확인하기 위해 System.out.print()를 찍었던 것을 log 를 통해 좀 더 기능적으로 사용할 수 있음
1. 설정 (Pom.xml)
<!-- Logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${org.slf4j-version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<exclusions>
<exclusion>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</exclusion>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
</exclusions>
<scope>runtime</scope>
</dependency>
2. 프로젝트를 생성했을 때 log4.xml
▶log4.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Appenders -->
<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: %c - %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="com.board.controller">
<level value="info" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- Root Logger -->
<root>
<priority value="warn" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
로그레벨 | 내용 |
TRACE | 디버그 레벨이 너무 광범위한것을 해결하기 위해서 좀 더 상세한 이벤트를 나타낸다. |
DEBUG | 개발시 디버그 용도로 사용하는 메시지를 나타낸다 |
INFO | 어떠한 상태변경과 같은 정보성 메시지를 나타낸다. |
WARN | 프로그램의 실행에는 문제가 없지만, 향후 시스템 에러의 원인이 될 수 있는 경고성 메시지를 나타낸다 |
ERROR | 어떠한 요청을 처리하는 중 문제가 발생한 상태를 나타낸다. |
FATAL | 아주 심각한 에러가 발생한 상태를 나타낸다. |
( ※ 순서대로 레벨을 가지며, 출력 레벨 설정에 따라 설정 레벨 이상의 로그가 출력 )
private static final Logger logger = LoggerFactory.getLogger(BoardController.class);
728x90
'Spring' 카테고리의 다른 글
[Spring]Tomcat 구동부터 웹페이지 동작 까지 과정 (0) | 2022.05.25 |
---|---|
[spring]스프링으로 메일 발송 하기 (0) | 2022.05.15 |
[SpringFramework]Context란? (0) | 2022.04.28 |
[RedirectAttributes] 원리 (0) | 2022.04.16 |
[Springboot]@Requestpar (0) | 2022.04.03 |
댓글