【发布时间】:2013-01-26 16:02:50
【问题描述】:
我有两个上下文在同一个 JVM 和 Tomcat 实例中运行,我想使用 logback RollingFileAppender 写入同一个日志文件。如果我使用相同的文件,logback RollingFileAppender 是否同步以防止出现任何问题?我担心文件的滚动将无法正常工作,并且某些日志会被覆盖。
logback 文档mention a prudent mode,但这表示性能下降,仅指从不同 JVM 记录到同一文件。我将在同一个 JVM 中运行。
这是我的 logback.xml 的示例。我想在每个上下文的两个单独的 WAR 文件中都有这个:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/portal.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>portal.%d.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>100MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d [%t] %-5p %c - %m%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="FILE" />
</root>
</configuration>
【问题讨论】:
标签: java tomcat logging slf4j logback