【发布时间】:2019-04-04 20:24:16
【问题描述】:
我在 Kotlin 项目中使用 logback-android 在文件中生成日志。我之前在不同的 Android 版本中测试过这个解决方案没有任何问题,但我在 Android 5.1 中发现了一个问题:创建了日志文件的父目录,但没有创建日志文件。我该如何解决这个问题?
build.gradle:
implementation 'io.github.microutils:kotlin-logging:1.6.24'
implementation 'com.github.tony19:logback-android:2.0.0'
logback.xml:
<configuration>
<property name="LOG_DIR" value="${EXT_DIR:-${DATA_DIR}}/log.log" />
<timestamp key="datetime" datePattern="yyyy'-'MMdd'-'HH':'mm':'ss"/>
<appender name="logcat" class="ch.qos.logback.classic.android.LogcatAppender">
<encoder>
<pattern>[%d{yyyyMMdd-HH:mm:ss}][%thread][%-5level][%logger{36}][%msg]%n</pattern>
</encoder>
</appender>
<appender name="filelog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_DIR}/${datetime}.log</file>
<encoder>
<pattern>[%d{yyyyMMdd-HH:mm:ss}][%thread][%-5level][%logger{36}][%msg]%n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_DIR}/%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxFileSize>100MB</maxFileSize>
<maxHistory>5</maxHistory>
<totalSizeCap>500MB</totalSizeCap>
</rollingPolicy>
</appender>
<root level="DEBUG">
<appender-ref ref="logcat" />
</root>
<root level="DEBUG">
<appender-ref ref="filelog" />
</root>
</configuration>
【问题讨论】:
-
您好 Ernesto Garcia,欢迎来到 Stack Overflow!当询问有关由您的代码引起的问题的问题时,如果您提供人们可以用来重现问题的代码,您将获得更好的答案。请参阅:How to create a Minimal, Complete, and Verifiable example。祝你好运!
-
依赖问题应该在github上发布
-
@ErnestoGarcia 您能否提供一个指向重现该问题的 GitHub 存储库的链接?
-
谢谢大家,很抱歉这么晚才回复。我认为我在阅读日志时发现了错误,显然使用的模式是问题
"yyyy'-'MMdd'-'HH':'mm':'ss"有字符:,在 5.1 版本的 Android 中,这种模式代表某种问题 -
我创建了this 示例来重现错误
标签: android logback fileappender