首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >log4j2未创建RollingFile日志

log4j2未创建RollingFile日志
EN

Stack Overflow用户
提问于 2014-09-25 18:34:29
回答 1查看 2.7K关注 0票数 2

我刚刚开始在slf4j2中使用log4j2,但是我遇到了一个问题,我试图每天创建滚动日志文件。我可以创建活动日志文件,但当我将系统日期更改了一天时,日志记录发生在同一个活动文件上,我认为它应该将前几天的日志归档到另一个文件中。

以下是log4j2.xml:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="ERROR" monitorInterval="5">
	<Properties>
		<Property name="log-path">${sys:catalina.base}/logs</Property>
	</Properties>
	<Appenders>
		<Console name="Console" target="SYSTEM_OUT">
			<PatternLayout
				pattern="%d{dd-MMM-YYYY HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
		</Console>
		<RollingFile name="file-gen" fileName="${log-path}/demopro.log"
			filePattern="${log-path}/%d{yyyy-MM}/demopro-%d{dd-MM-yyyy}.log.gz">
			<PatternLayout
				pattern="%d{dd-MMM-YYYY HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
			<Policies>
				<TimeBasedTriggeringPolicy interval="1" modulate="true" />
			</Policies>
		</RollingFile>
	</Appenders>
	<Loggers>
		<Root level="info">
			<AppenderRef ref="Console" />
		</Root>
		<Logger name="org.hkb.tryone" level="debug" additivity="false">
			<AppenderRef ref="Console" />
		</Logger>
		<Logger name="org.hkb.trytwo" level="info" additivity="false">
			<AppenderRef ref="Console" />
			<AppenderRef ref="file-gen" />
		</Logger>
	</Loggers>
</Configuration>

我到底做错了什么?!

EN

回答 1

Stack Overflow用户

发布于 2014-09-26 13:32:57

我认为您的filePattern只能有一个%d变量。如果您有两个,则翻转策略无法确定翻转频率。

所以,替换掉你现在拥有的:

代码语言:javascript
复制
filePattern="${log-path}/%d{yyyy-MM}/demopro-%d{dd-MM-yyyy}.log.gz">

有了这个:

代码语言:javascript
复制
filePattern="${log-path}/$${date:yyyy-MM}/demopro-%d{dd-MM-yyyy}.log.gz">
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26036399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档