저는 오랫동안이를 연구 해왔고 전혀 해결책을 얻지 못했습니다. 내 요구 사항은 로그 파일이 장소에 없으면 작성하는 것입니다. 다음은 내 logback.xmlSLF4J + 파일을 만들기위한 로그백 (존재하지 않는 경우)/삭제 된 경우
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="LOG_PATH" value="/home/logs" />
<appender name="FILE-AUDIT"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/debug.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>
%p\t%d{dd MMM yyyy HH:mm:ss,SSS}\t%r\t%c\t[--%t--]\t%m%n
</Pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>${LOG_PATH}/debug.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<logger name="com.example" level="debug"
additivity="false">
<appender-ref ref="FILE-AUDIT" />
</logger>
<root level="debug">
<appender-ref ref="FILE-AUDIT" />
</root>
</configuration>
내가 구성 "true"로 디버그 =하지만 행운에 구성을 변경 시도했다. 이것을 구현하는 올바른 방법은 무엇입니까?
파일 사용 권한을 확인하거나 Log4j를 사용하도록 요청하지 마십시오. log4j 대신 slf4j를 사용하도록 응용 프로그램을 변경했습니다. 파일을 삭제해도 작성해야합니다.