阻止Quartz.NET记录JobExecutionException

时间:2016-03-16 23:50:34

标签: c# quartz-scheduler quartz.net

我已经实现了一个Quartz.NET调度程序,它使用标准方法从quartz.config初始化,即

    _schedulerFactory = new StdSchedulerFactory();
    _scheduler = _schedulerFactory.GetScheduler();

我的理解是开箱即用的Quartz没有记录任何东西,除非你明确连接一个Job或Trigger监听器,但是我得到了很多日志记录,特别是当我抛出一个JobExecutionException时,我得到以下INFO消息其中包括内部异常的完整堆栈跟踪。我不想要这个,因为我在JobListener中处理异常并且只想记录实际的异常(我正在抛出FileNotFound异常,JobListener将在以后重新调度,所以不要将其记录为错误)< / p>

如何阻止JobRunShell记录?

2016-03-17 12:31:33,677 JobSchedulerService_Worker-1 INFO  JobRunShell                    Run                    Job Jobs.TestJob threw a JobExecutionException: 

1 个答案:

答案 0 :(得分:3)

由于Quartz.NET使用Common.Logging抽象,您必须配置它以使用您选择的日志框架,从Quartz中禁用日志的最佳方法是在您的日志框架配置中。

Log4net(xml config)的示例:

     Date                   A
1    2015-11-08 23:45:00    3500 //Sunday
2    2015-11-15 23:45:00    4000 //Sunday
...