【问题标题】:Turning off Quartz job logging关闭 Quartz 作业记录
【发布时间】:2013-06-14 07:00:12
【问题描述】:

在我的应用程序中,一旦部署应用程序,就会安排石英作业。我有两个日志文件home-log-search.log 和home-log-app.log,都用于特定的日志记录。搜索日志文件仅记录访问者的 IP,其余所有日志记录(异常、调试信息)都记录在 App 日志文件中。

我面临的问题是,默认的 Quartz 语句被记录在 home-log-search.log 文件中,这不是必需的。

如何禁用该日志记录?将级别设置为 OFF 不起作用。我也关注了disable quartz logging,但这也没有帮助。

下面是我的log4j.properties

# properties file for testing logging service
log4j.debug = true
# Set root category priority to DEBUG and its only appender to CONSOLE.
log4j.rootCategory=INFO, searchLogger

log4j.appender.searchLogger=org.apache.log4j.DailyRollingFileAppender
log4j.appender.searchLogger.File=${catalina.home}/logs/home-search-log.log
log4j.appender.searchLogger.DatePattern='.'yyyy-MM-dd
log4j.logger.searchLogger.quartz=OFF, searchLogger

log4j.appender.searchLogger.Append=true
log4j.appender.searchLogger.layout=org.apache.log4j.PatternLayout
log4j.appender.searchLogger.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-4p %m%n

log4j.logger.appLogger=DEBUG, appLogger
log4j.additivity.appLogger = false
log4j.appender.appLogger=org.apache.log4j.RollingFileAppender
log4j.appender.appLogger.maxFileSize=5000KB
log4j.appender.appLogger.layout=org.apache.log4j.PatternLayout
log4j.appender.appLogger.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %c : %m%n
log4j.appender.appLogger.File=${catalina.home}/logs/home-app-log.log

下面也是我的作业调度课

public class SubscriptionNotificationJobScheduler {

/**
 * config bundle
 */
private static ResourceBundle configBundle = ResourceBundle.getBundle("config");


public SubscriptionNotificationJobScheduler(String path) throws ParseException, SchedulerException{

    JobDetail job = new JobDetail();
    job.setName(SubscriptionConstants.JOB_NAME);
    job.setJobClass(SubscriptionNotificationJob.class);

    JobDataMap map = new JobDataMap();
    map.put("contextPath", path);
    job.setJobDataMap(map);

    CronTrigger trigger = new CronTrigger();
    trigger.setName(SubscriptionConstants.TRIGGER_NAME);
    trigger.setCronExpression(configBundle.getString("monday.cron.trigger"));

    //schedule it
    Scheduler scheduler = new StdSchedulerFactory().getScheduler();
    scheduler.start();
    scheduler.scheduleJob(job, trigger);
}
}

【问题讨论】:

    标签: logging quartz-scheduler log4j


    【解决方案1】:

    您需要禁用quartz java包的日志记录,即org.quartz.*

    看起来你用这一行错误配置了 log4j

    log4j.logger.searchLogger.quartz=OFF, searchLogger

    应该改为

    log4j.logger.org.quartz=OFF

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-11
      • 1970-01-01
      相关资源
      最近更新 更多