로깅을 위해 LogBack 라이브러리를 사용하는 Android 앱이 있습니다. 2MB에 도달하면 로그 파일을 삭제해야합니다 (회전 할 필요 없음). Logback (Android) : SizeBasedTriggeringPolicy not working
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/mnt/sdcard/app/app.log</file>
<append>true</append>
<triggeringPolicy class="com.app.utils.LogbackSizeBasedTriggeringPolicy">
<maxFileSize>2MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d %-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="FILE" />
</root>
</configuration>
SizeBasedTriggeringPolicy (http://jira.qos.ch/browse/LOGBACK-74) 당신이 볼 수과 버그가있을 것 같습니다 때문에
, 내가 쓴 :여기에 내 구성 파일의 내 자신의 트리거 코드 :
package com.app.utils;
import ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy;
import ch.qos.logback.core.util.FileSize;
public class LogbackSizeBasedTriggeringPolicy<E> extends
SizeBasedTriggeringPolicy<E> {
@Override
public boolean isTriggeringEvent(File activeFile, E event) {
return activeFile.length() >= FileSize.valueOf(getMaxFileSize())
.getSize();
}
}
로깅 잘 작동합니다 -하지만 triggeringPolicy 코드는 트리거되지 않습니다 따라서 로그 파일이 (내가 원하는하지 않은) 2메가바이트 이상으로 성장한다.
LogBack을 처음 사용했습니다. 도움을 주시면 감사하겠습니다.