jboss控制台日志大小是否会影响网站性能

时间:2016-06-22 13:20:58

标签: java logging jboss io wildfly-8

我们的企业应用程序部署在Jboss wildfly 8.2中。使用环境变量JBOSS_CONSOLE在启动期间设置jboss控制台日志。这可确保使用kill -QUIT触发的任何线程转储都转储到jboss_console.log。 GC统计信息(使用-XX:+ PrintGCTimeStamps -XX:+ PrintGCDetails收集)也会发送到此文件。

日志文件的旋转由

完成

cat / dev / null> jboss_console.log

即使这会降低文件大小,在触发使用的线程转储时,文件大小也会增加到(旋转前的文件大小+新线程转储的大小)。因此,除非我们重新启动jboss并明确删除文件,否则文件大小不会降低。

此外,du& amp;的输出明显不一致。 ls命令。

[root @ myserver logs] #du -csh jboss_console.log

28M jboss_console.log

28M 总计

[root @ myserver logs] #ls -lrtS jboss_console.log -h

-rwxr-XR-X。 1 admin admin 1.7G 6月22日05:28 jboss_console.log

问题是jboss重启一个月后,文件系统操作速度减慢到十分之一。即如果我在我的apache中托管了一个大小为1 GB的简单静态文本文件,将其下载到我的本地框就可以完成3分钟。但一个月后,同样的手术需要30分钟。重新启动jboss后,问题立即消失。系统中没有明显的CPU,内存或IO峰值。

这是由jboss_console.log大小引起的吗?

1 个答案:

答案 0 :(得分:0)

我假设jboss_console.log是通过管道流程的stdoutstderr流来创建的。如果是这种情况,则问题可能出现在操作系统级别。

默认情况下,CONSOLE处理程序只会记录到System.out。如果日志的大小是一个问题,您可以删除或禁用CONSOLE处理程序,因为server.log将包含相同的信息。

要从根记录器中删除CONSOLE处理程序,您可以使用以下CLI命令。

/subsystem=logging/root-logger=ROOT:remove-handler(name=CONSOLE)

我不确定这是否真的能回答你的问题,但是可以选择保持jboss_console.log的大小。