티스토리 뷰
1. pom.xml의 properties에
<!-- jcl로 보내는 로그들을 slf4j로 넘겨서 받음(브릿지라이브러리?) -->
<jcloverslf4j.version>1.7.6</jcloverslf4j.version> <logback.version>1.1.1</logback.version>
위 2개를 입력
2. pom.xml의 dependencies에
<!-- Logback 얘를 커몬 로깅으로 인식해야함 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${jcloverslf4j.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
위 내용추가
3. src/main/resources 밑에 logback.xml 추가
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<charset>UTF-8</charset>
<Pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n
</Pattern>
</encoder>
</appender>
<appender name="fileAppender2" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/xorwnTest/quicksilver-exception.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n
</Pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<FileNamePattern>/test/mysite-exception.%i.log.zip</FileNamePattern>
<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>
</rollingPolicy>
<triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>100MB</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="com.douzone.mysite.exception" level="debug" additivity="false">
<appender-ref ref="fileAppenderException" />
</logger>
<logger name="com.douzone.quicksilver.aspect" level="debug" additivity="false">
<appender-ref ref="fileAppender" />
</logger>
<logger name="com.douzone.exception" level="debug" additivity="false">
<appender-ref ref="fileAppender2" />
<appender-ref ref="consoleAppender" />
</logger>
<root level="info"> <!-- 레벨단계떄문에 로그안뜰수도있으니 debug로 -->
<appender-ref ref="consoleAppender" />
</root>
</configuration>
4. appender는 File, Console이 있으며 Logger로 해당 패키지를 설정해두면 그 패키지에서 발생하는 error or log를 appender가 받아서 File or console로 출력
5. Logger에 등록한 패키지의 클래스중 log를 남길 클래스에
private static final Log LOG = LogFactory.getLog(GlobalExceptionHandler.class);
이와 같이 LOG를 생성
LOG.debug( "#ex2 - debug log" );
LOG.info( "#ex2 - info log" );
LOG.warn( "#ex2 - warn log" );
LOG.error( "#ex2 - error log" );
위와 같이 메세지를 설정해두면 LOG가 생성된다
'Spring' 카테고리의 다른 글
[Spring] JAI를 이용하여 썸네일 이미지 등록 (0) | 2019.05.13 |
---|---|
StandardServletMultipartResolver 설정 (0) | 2019.04.29 |
spring boot + react 과정 (Eclipse) (0) | 2019.04.19 |
Spring boot & Maven MultiProject (0) | 2019.03.25 |
ServletContainerInitializer를 이용한 방법 (0) | 2019.03.22 |