Logback-test.xml 구성에서 하나의 로그 파일이 아닌 두 개의 로그 파일을 생성하시겠습니까?
실행을 중지할 때spring-boot
애플리케이션 생성되는 로그 파일은 하나가 아니라 두 개입니다(하나가 예상됨).
내게 무슨 문제가 있습니까?Logback-test.xml
아래 파일이 원인일 수 있습니까?
logback-test.xml:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<timestamp key="myTimestamp" datePattern="yyyy-MM-dd'_'HH-mm-ss.SSS"/>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<logger name="org.springframework.web" level="INFO"/>
<!-- Send debug messages to System.out -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- By default, encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
<encoder>
<pattern>%d{HH:mm:ss.SSS} - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>C:\path\to\my\file\myLog-${myTimestamp}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%d{yyyy-MM-dd_HH:mm:ss.SSS} - %msg%n</Pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<FileNamePattern>myLog.%i{yyyy-MM-dd_HH:mm:ss.SSS}}.log</FileNamePattern>
<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>2MB</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="com.my.package" level="INFO" additivity="false">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</logger>
<!-- By default, the level of the root level is set to DEBUG -->
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>
생성되는 두 개의 파일은 다음과 같습니다.
myLog-2016-04-22_15-47-30.126.log
and
myLog-2016-04-22_15-47-30.922.log
타임스탬프는 구성을 구문 분석할 때 생성됩니다.Spring Boot은 시작하는 동안 로그백을 한 번 다시 초기화하므로 두 개의 다른 타임스탬프가 생성되므로 두 개의 파일이 생성됩니다.
를 사용할 수 있습니다.timeReferene="contextBirth"
구성에서 일정한 타임스탬프를 얻을 수 있습니다.그 이후로LoggerContext
파괴된 것이 아니라 재설정된 것입니다. 이 작업:
<timestamp key="myTimestamp" timeReference="contextBirth" datePattern="yyyy-MM-dd'_'HH-mm-ss.SSS"/>
어떻게 지내십니까?logging.config
부동산 룩?경로 지정(또는 속성 파일에서 속성이 누락됨)이 문제일 수 있습니다.예를 들어, 다음과 같이 보여야 합니다.
logging.config=classpath:logback-test.xml
에application-test.properties
.
다른 가능성은 두 개의 활성 프로필이 있을 수 있습니다.예를 들어 당신의test
프로필 및default
하나. 이 경우 로그백의 조건부 구성으로 해결할 수 있습니다.
자세한 내용은 답변을 참조하십시오.또한 해당 답변에 대한 마지막 설명을 참조하십시오. 스프링 부트 1.3에는 로그백을 사용하여 여러 프로파일을 처리하는 것과 관련된 몇 가지 새로운 기능이 포함되어 있습니다.
이 문제는 다음 라인과 관련이 있을 수 있습니다.
<include resource="org/springframework/boot/logging/logback/base.xml"/>
포함된 파일의 이 버전은 다른 파일에 포함되어 있으며 그 중 하나에 파일 추가기가 있습니다.사용자가 직접 추가 프로그램(파일 및 콘솔)을 정의하고 있으므로 Spring Boot 기본 파일을 포함할 필요가 없습니다.
이것이 효과가 있습니까?
<appender name="FILE" class="ch.qos.logback.core.FileAppender"">
<file>C:\path\to\my\file\myLog-${myTimestamp}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%d{yyyy-MM-dd_HH:mm:ss.SSS} - %msg%n</Pattern>
</encoder>
<!--
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<FileNamePattern>myLog.%i{yyyy-MM-dd_HH:mm:ss.SSS}}.log</FileNamePattern>
<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>
</rollingPolicy>
-->
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>50MB</MaxFileSize>
</triggeringPolicy>
</appender>
언급URL : https://stackoverflow.com/questions/36796728/logback-test-xml-configuration-is-producing-two-log-files-instead-of-one
'programing' 카테고리의 다른 글
python MySQLdb를 사용하여 *.sql 파일 실행 (0) | 2023.09.02 |
---|---|
MySQL 데이터베이스에 BOOL 값을 삽입하는 방법 (0) | 2023.09.02 |
Spring Boot을 사용하여 MongoDB 쿼리 기록 (0) | 2023.09.02 |
모듈의 Python 명명 규칙 (0) | 2023.08.28 |
중복된 개별 반품 선택 (0) | 2023.08.28 |