Hybris:如何在同一扩展名中创建单独的log4j日志文件

Hybris:如何在同一扩展名中创建单独的log4j日志文件,log4j,hybris,Log4j,Hybris,我需要将一些审核日志记录到标准控制台日志以外的单独文件中。我尝试创建自定义记录器,并将属性添加到自定义扩展中 log4j.appender.auditLog=org.apache.log4j.FileAppender log4j.appender.auditLog.File=/somelogsfile.log log4j.appender.auditLog.layout=org.apache.log4j.PatternLayout log4j.appender.auditLog.layout.C

我需要将一些审核日志记录到标准控制台日志以外的单独文件中。我尝试创建自定义记录器,并将属性添加到自定义扩展中

log4j.appender.auditLog=org.apache.log4j.FileAppender
log4j.appender.auditLog.File=/somelogsfile.log
log4j.appender.auditLog.layout=org.apache.log4j.PatternLayout
log4j.appender.auditLog.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n

log4j.category.auditLogger=INFO, auditLog
log4j.additivity.auditLogger=false
然后我将记录器初始化为:

Logger LOG2= Logger.getLogger("auditLogger");
LOG2.info("Test");

日志将输出到标准控制台日志,但不会输出到指定的文件。我遗漏了什么?

基于更新的问题,我做了一些额外的调查,并在自己的系统上进行了测试

很可能,您的hybris版本正在使用
log4j2
,这意味着配置应该如下所示:

log4j2.appender.auditLog.type=File
log4j2.appender.auditLog.name=auditLog
log4j2.appender.auditLog.fileName=${HYBRIS_LOG_DIR}/audit.log
log4j2.appender.auditLog.layout.type=PatternLayout
log4j2.appender.auditLog.layout.pattern=%d [%24F:%t:%L] - %m%n

log4j2.logger.auditLogger.name=auditLogger
log4j2.logger.auditLogger.level=info
log4j2.logger.auditLogger.appenderRefs=auditLogger
log4j2.logger.auditLogger.appenderRef.auditLogger.ref=auditLog
log4j2.logger.auditLogger.additivity=false

我已经在本地系统上对此进行了测试,并使用
Logger LOG=Logger.getLogger(“auditLogger”)
将日志语句打印到新文件中

我正在初始化Logger作为Logger LOG=Logger.getLogger(“auditLogger”);日志信息(“测试”);是否仍然需要对类进行配置?您是正确的。我在自己的系统上做了一些额外的测试,并根据我的发现更新了anwser。使用此配置,它可以在我的测试系统(1811)上运行