You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Alfresco日志配置疑问:log.info()无法输出至alfresco.log文件

解决Quartz Action类log.info()无法输出到alfresco.log的问题

没错,你确实需要调整log4j.properties的配置才能让自定义Action类的log.info()日志输出到alfresco.log里——Alfresco默认的日志配置不会自动覆盖所有自定义类的日志级别和输出目标。我给你一步步拆解处理方案:

  • 先确认日志对象的初始化方式
    确保你的Action类里的日志对象是用Alfresco常用的SLF4J规范初始化的,比如:

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    public class YourQuartzAction extends QuartzJobBean {
        private static final Logger log = LoggerFactory.getLogger(YourQuartzAction.class);
        // ... 你的业务逻辑代码
    }
    

    要是用了其他日志初始化方式,可能没法和Alfresco的log4j配置绑定。

  • 修改log4j.properties配置
    找到Alfresco部署目录下WEB-INF/classes里的log4j.properties文件,添加针对你的Action类或所在包的日志配置:

    • 如果你所有自定义Action都在com.yourcompany.alfresco.jobs这类统一包下,就加一行:
      log4j.logger.com.yourcompany.alfresco.jobs=INFO, file
    • 要是只想针对单个类配置,就写全类名:
      log4j.logger.com.yourcompany.alfresco.jobs.YourQuartzAction=INFO, file

    这里的file是Alfresco默认配置里指向alfresco.log的appender,你可以检查下配置里有没有这段(默认应该是存在的):

    log4j.appender.file=org.apache.log4j.RollingFileAppender
    log4j.appender.file.File=${alfresco.log.dir}/alfresco.log
    log4j.appender.file.Append=true
    log4j.appender.file.layout=org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern=%d{ISO8601} %x %-5p [%c] %m%n
    
  • 重启验证
    修改完配置后重启Tomcat,触发你的Quartz任务,现在去alfresco.log里应该就能看到log.info()的输出了。

  • 额外排查点
    如果还是没输出,先确认你的Action确实被Quartz调度执行了(比如用System.out.println先验证逻辑走到了对应代码段),再检查日志对象有没有初始化错误,或者有没有代码里不小心修改日志级别的情况。

内容的提问来源于stack exchange,提问作者Brijesh N K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 16:42:43