Java JHipster는 사용자 정의 로깅 수준 및 구성을 지원하는 강력한 로깅 프레임워크를 제공합니다. 다음은 Java JHipster의 로깅 수준을 변경하고 로깅 설정을 사용자 지정하는 방법에 대한 안내입니다.
1. logback-spring.xml
파일 수정
Java JHipster에서는 logback-spring.xml
파일을 사용하여 로깅 구성을 제어합니다. 이 파일은 보통 src/main/resources/config
디렉토리에 위치하며, 로깅 수준 및 기타 로깅 설정을 변경할 수 있습니다.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- 로그 패턴 설정 -->
<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
<!-- 로그 레벨 설정 -->
<root level="INFO">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
<!-- Console Appender 선언 -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<!-- File Appender 선언 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<file>logs/myapplication.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/myapplication.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
<maxHistory>20</maxHistory>
</rollingPolicy>
</appender>
</configuration>
위의 설정 파일에서는 루트 로거의 레벨을 INFO
로 설정하고, CONSOLE
과 FILE
두 개의 Appender를 정의하고 있습니다. 필요한 경우 이 파일에서 로깅 수준이나 패턴을 원하는대로 변경할 수 있습니다.
2. 애플리케이션 프로파일별 로깅 구성
Java JHipster는 프로파일별로 로깅 설정을 구성할 수 있습니다. 예를 들어, application-dev.yml
파일을 사용하여 개발 프로파일에 대한 로깅을 지정할 수 있습니다. 아래는 application-dev.yml
파일의 예입니다.
logging:
level:
ROOT: INFO
com.example.myapp.service: DEBUG
file: target/myapplication.log
이 예에서는 루트 로거의 로깅 수준을 INFO
로 설정하고, com.example.myapp.service
패키지의 로깅 수준을 DEBUG
로 지정합니다. 또한 로그 파일을 target/myapplication.log
로 지정합니다.
3. 로깅 사용자 지정
Java JHipster는 사용자 지정된 로깅 설정을 지원합니다. 다음은 사용자 지정 로깅 설정을 추가하는 예입니다.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class MyService {
private final Logger log = LoggerFactory.getLogger(MyService.class);
public void doSomething() {
log.debug("Debug 메시지");
log.info("Info 메시지");
log.warn("Warn 메시지");
log.error("Error 메시지");
}
}
위의 예에서는 org.slf4j.Logger
인터페이스를 사용하여 로그를 기록합니다. LoggerFactory.getLogger()
메서드를 사용하여 로거 인스턴스를 가져올 수 있으며, 로깅 레벨에 따라 메시지를 기록할 수 있습니다.
참고 자료
이 글은 Java JHipster의 로깅 수준 및 설정 변경 방법에 대한 간단한 소개였습니다. JHipster 문서와 SLF4J 문서를 참조하여 자세한 내용을 확인하시기 바랍니다.