我在服务器和服务器中部署的应用程序中有一个log4j.properties文件。要求是为应用程序创建单独的记录器 我在我的应用程序中定义了这个
# Root logger option
log4j.rootLogger=INFO, file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/opt/ibm/WebSphere/AppServer/profiles/MDMServer/logs/damcoLoging.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
#logging for jbpm
log4j.logger.jbpmLogger=INFO, jbpmLogger
log4j.appender.jbpmLogger=org.apache.log4j.RollingFileAppender
log4j.appender.jbpmLogger.maxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.jbpmLogger.layout=org.apache.log4j.PatternLayout
log4j.appender.jbpmLogger.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
log4j.appender.jbpmLogger.File=/opt/ibm/WebSphere/AppServer/profiles/MDMServer/logs/jbpmLogging.log
log4j.additivity.jbpmLogger=false
在我的java类中,我已经为辅助记录器
完成了这个 Logger logger=Logger.getLogger("jbpmLogger");
现在正在生成日志。但是对于辅助记录器我也要设置类名。所以我可以知道日志生成的是哪个类。 目前,辅助记录器的日志看起来像这样
INFO jbpmLogger:8 - Hi
是否也可以设置班级名称?
答案 0 :(得分:0)
您可以使用%C将类名添加到输出Pattern,尽管文档警告说这很慢。这是你想要的吗?
或者由于一个getLogger()
方法接受一个String,如果你愿意,你可以连接类和你的“jbpmLogger”。由于命名是分层的,因此仍然只在配置文件中使用单个记录器。例如
Logger logger = getLogger("jbpmLogger." + this.getClass().getName());