Logback
Logback is intended as a successor to the popular log4j project.
logback.xml example
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="CONSOLE" />
</root>
</configuration>
ddrm 의 plcGateway 에 사용된 로거:
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="3 seconds">
<property name="LOGS_ABSOLUTE_PATH" value="../log" />
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %-5level %logger{32} - %msg%n
</pattern>
</encoder>
</appender>
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOGS_ABSOLUTE_PATH}/plcGateway.log.%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 파일이름 패턴 -->
<maxHistory>30</maxHistory> <!-- 파일 저장 기간 -->
</rollingPolicy>
<encoder>
<pattern>%d{HH:mm:ss.SSS} %-5level %logger{32} - %msg%n</pattern> <!-- 파일에 기록할 로그 포맷 -->
</encoder>
</appender>
<root level="DEBUG">
<!-- <appender-ref ref="console" /> -->
</root>
<logger name="com.mseo" level="debug">
<appender-ref ref="file" />
</logger>
</configuration>
logback.xml 파일 위치 지정 방법
Logback은 기본적으로 클래스 패스에 있는 logback.xml
파일을 자동으로 로드합니다. 따라서 추가적인 설정 없이 클래스 패스에 해당 파일이 있으면 자동 로드됩니다. <- 확인 필요.
만약 특정 위치에 있는 logback.xml
파일을 읽도록 설정하고 싶다면, logback.configurationFile
시스템 속성을 통해 파일 경로를 지정할 수 있습니다:
See also
- Log4j
- SLF4J
- Log Aggregator - 여러 머신에서 쌓인 로그들을 한 번에 분석할 수 있도록 수집하여 주는 시스템을 말한다.