티스토리 뷰

Spring

Spring Logging 설정

토마's 2017. 3. 26. 11:26

안녕하세요. 오늘은 Spring Logging을 설정하는 방법에 대해서 포스팅하려고 합니다.

 

프로젝트를 생성하면 기존에 설정되어 있는 log를 logback으로 변경해보도록 하겠습니다.

 

우선, pom.xml에 있는 log관련 library를 변경합니다.

<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>

으로 설정 되어 있는 것들을 아래와 같은 방법으로 변경합니다.

<!-- Logging -->
<dependency>
  <groupid>org.slf4j</groupid>
  <artifactid>jcl-over-slf4j</artifactid>
  <version>1.7.21</version>
</dependency>
<dependency>
  <groupid>ch.qos.logback</groupid>
  <artifactid>logback-classic</artifactid>
  <version>1.1.7</version>
</dependency>

 

그리고 나서 기존에 있는 log4j.xml 파일을 삭제하고 그 위치에 logback.xml을 생성합니다.

 

 

logback.xml을 만들고 다음과 같이 설정해줍니다.

<!--?xml version="1.0" encoding="UTF-8"?-->
<configuration>
 
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <layout class="ch.qos.logback.classic.PatternLayout">
      <pattern>
        %d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n
      </pattern>
    </layout>
  </appender>
 
  <logger name="org.springframework" level="info" additivity="false">
    <appender-ref ref="STDOUT">
  </appender-ref></logger>
 
  <!-- Application Loggers -->
  <logger name="com.test.example" level="debug" additivity="false">
    <appender-ref ref="STDOUT">
  </appender-ref></logger>
   
  <root level="error">
    <appender-ref ref="STDOUT">
  </appender-ref></root>
 
</configuration>

맨 위에 <!-- --> 주석 처리 부분은 주석 처리 안하셔도 됩니다.

확인을 위해 Server를 시작하면 기존과 다른 로그 출력을 확인하실 수 있습니다.

 

 

 

이상으로 spring logging 설정법의 포스팅을 마치도록 하겠습니다. :)