我们正在使用log4j2处理我们的应用程序日志,并且该应用程序在JBoss EAP 7.1下运行。
在我的log4j2.xml文件中,我试图保留最多5个日志文件(每个10MB),但是发生了一些奇怪的事情,因为我最终得到5个或更多日志文件每天(取决于添加者)。我不知道如何/为什么要为大多数日志的文件名添加日期,也不知道为什么在某些情况下(每天)有超过5个日志。
这是我的log4j2.xml的一部分:
<RollingFile name="springAppender" fileName="/opt/jboss-eap-7.1/standalone/log/spring.log"
filePattern="/opt/jboss-eap-7.1/standalone/log/spring-%i.log">
<PatternLayout> <pattern>%d${ISO8601} [%t] [%X{sessionId}] [%X{orgName}] %-9p %c - %enc{%m}%n</pattern></PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="10 MB"/>
</Policies>
<DefaultRolloverStrategy max="5"/>
</RollingFile>
<RollingFile name="SqlAppender" fileName="/opt/jboss-eap-7.1/standalone/log/sql.log"
filePattern="/opt/jboss-eap-7.1/standalone/log/sql-%i.log">
<PatternLayout> <pattern>%d{ISO8601} [%t] [%X{sessionId}] [%X{orgName}] %-9p %c - %enc{%m}%n</pattern></PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="10 MB"/>
</Policies>
<DefaultRolloverStrategy max="5"/>
</RollingFile>
这是我的日志目录清单的摘录:
-rw-r--r--. 1 jboss jboss 10485857 May 30 05:26 spring-05-30-2019-1.log
-rw-r--r--. 1 jboss jboss 10485924 May 30 05:34 spring-05-30-2019-2.log
-rw-r--r--. 1 jboss jboss 10485861 May 30 05:40 spring-05-30-2019-3.log
-rw-r--r--. 1 jboss jboss 10485796 May 30 05:49 spring-05-30-2019-4.log
-rw-r--r--. 1 jboss jboss 10485946 May 30 05:56 spring-05-30-2019-5.log
-rw-r--r--. 1 jboss jboss 10485950 May 30 07:43 spring-05-30-2019-6.log
-rw-r--r--. 1 jboss jboss 10485808 May 30 13:13 spring-05-30-2019-7.log
-rw-r--r--. 1 jboss jboss 2302827 Jun 25 17:51 spring.log
-rw-r--r--. 1 jboss jboss 10485766 Jun 25 04:51 sql-1.log
-rw-r--r--. 1 jboss jboss 10485896 Jun 25 04:52 sql-2.log
-rw-r--r--. 1 jboss jboss 10485990 Jun 25 04:54 sql-3.log
-rw-r--r--. 1 jboss jboss 10485874 Jun 25 04:56 sql-4.log
-rw-r--r--. 1 jboss jboss 10485967 Jun 25 04:58 sql-5.log
-rw-r--r--. 1 jboss jboss 5782246 Jun 25 14:55 sql.log
据我所知,SqlAppender
和springAppender
在结构上是相同的。但是我的sql.log可以按需要滚动,而spring.log都在滚动的文件名中包括日期,并且最多保留5个文件。这正在慢慢填满我的硬盘。
我在JBoss目录中摸索,寻找诸如"\-yyyy\-"
之类的模式,这些模式可能将我引向另一个可能控制日志无用的地方。
我们以独立模式运行,并且在standalone.xml中有一个periodic-rotating-file-handler
,但是它控制server.log。我相信还有一个logging.properties文件,我相信它会控制日志记录,直到应用程序完全启动并将日志记录移交给log4j2为止,但是我看不到其中似乎包含可在文件名中插入日期的模式的任何内容。
如何停止这种行为?