我正在使用Log4j作为我们的日志记录解决方案。遇到的问题是RollingFileAppender在所有环境中的行为均不一致。

配置代码:

        try {
            RollingFileAppender a = new RollingFileAppender( layout, s_file, true ) ;
            a.setName( "RollingFileAppender" ) ;
            a.setMaxFileSize( "1MB" ) ;
            a.setMaxBackupIndex( 32 ) ;
            a.setImmediateFlush( true ) ;
            a.setBufferedIO( false ) ;
            a.setBufferSize( 1024 ) ;
            s_Logger.addAppender( a ) ;
        } catch( IOException ioe ) {
            ioe.printStackTrace() ;
        }


问题在于,在开发环境和所有测试环境中,文件大小限制为预期的〜1024kb。在生产环境中,文件已经在500mb以北。

它跨所有实例部署在Tomcat 7.0.52环境上。
是否有Tomcat配置会干扰Log4j处理文件的方式?

文件夹权限在所有情况下都匹配。

最佳答案

设置值后,尝试在RollingFileAppender上调用activateOptions(),例如:

...
a.setBufferSize( 1024 ) ;
a.activateOptions() ;  // Call it here
s_Logger.addAppender( a ) ;
....

09-10 15:42