我们的应用程序当前正在应用程序级别使用Log4j进行日志记录。至少有 8个EAR 文件,这些文件在服务器运行时部署。所有 8 EAR 都会登录 File1.log 文件。我想分开1只耳朵。例如,7个EAR文件应该记录在 File1.log 文件中,但是,第8个说 ABCD.EAR 应该登录 ABCD.LOG 文件。
答案 0 :(得分:0)
我相信我已经弄明白了。虽然这是一个简单的解决方案,但互联网上的所有示例都基于.properties文件,我正在寻找.xml文件配置。
首先,我需要一个appender
< appender name =“ABCD”class =“org.apache.log4j.RollingFileAppender”> < param name =“File”value =“./ logs / ABCD.log”/> < param name =“Append”value =“true”/> < param name =“MaxFileSize”value =“100MB”/> < param name =“MaxBackupIndex”value =“10”/> < layout class =“provision.services.logging.PSPatternLayout”> < param name =“conversionPattern”value =“%d%D%S%-5p {%P}%#:[%-17c {5}%T]%m%n”/> < /布局> < /附加器>
然后我需要告诉记录器,使用它来记录什么类heirarchy。 ABCD.ear将文件herirarchy作为project.abcd。*。所以我在log4j.xml中添加了这一行
< logger name =“project.abcd”> < level value =“INFO”/> < appender-ref ref =“ABCD”/> < /记录器>
我希望这对其他人有帮助。
P.S: 编辑框中的XML Formating有什么问题? ...我的xml以前是不可见的,然后我必须添加空格,现在它没有正确“格式化”..:s