war 文件中不同 jar 的单独日志

Seperate logs for different jars in war file

我有一个部署在 jboss 服务器上的 war 文件。 war 包含一些 jar 文件。 我需要的是为不同的罐子创建单独的日志。 我正在使用 log4j 进行日志记录,并且还在每个 jar 中集成了 log4j 属性文件。 我的每个 jar 的 log4j 都有不同的路径。 仍然在 jboss 的 server.log 中生成日志。 我需要帮助为每个 jar 生成单独的日志。

如果你想为不同的 jar 创建不同的日志文件,你必须在与每个 jar 相关的 log4j.properties 文件中配置它(我假设每个 jar 都有不同的包命名约定)。

这里是一个例子,如果你想在包名以 org.jar1org.jar2 开头的不同文件中记录消息。

log4j.debug=true
log4j.logger.org.jar1=DEBUG,jar1logger
log4j.logger.org.jar2=DEBUG,jar2logger

log4j.additivity.org.jar1=false
log4j.additivity.org.jar2=false
log4j.appender.jar1logger=org.apache.log4j.RollingFileAppender
log4j.appender.jar1logger.layout=org.apache.log4j.PatternLayout
log4j.appender.jar1logger.layout.ConversionPattern=%d [%t]<%-5p> %c -> %m%n
log4j.appender.jar1logger.File=/var/log/mylog/jar1.log
log4j.appender.jar1logger.Append=true
log4j.appender.jar1logger.MaxFileSize=1024KB
log4j.appender.jar1logger.MaxBackupIndex=5

log4j.appender.jar2logger=org.apache.log4j.RollingFileAppender
log4j.appender.jar2logger.layout=org.apache.log4j.PatternLayout
log4j.appender.jar2logger.layout.ConversionPattern=%d [%t]<%-5p> %c -> %m%n
log4j.appender.jar2logger.File=/var/log/mylog/jar2.log
log4j.appender.jar2logger.Append=true
log4j.appender.jar2logger.MaxFileSize=1024KB
log4j.appender.jar2logger.MaxBackupIndex=5

根据您的要求,您是想每天创建日志还是根据大小创建日志,您必须更改配置。

请记住,如果任何 jar 中的任何 jar 包名称以 org.jar1 开头,那么所有日志都将写入 jar1.log 文件。