阻止 Quartz.NET 记录 JobExecutionException
Preventing Quartz.NET from logging JobExecutionException
我已经实现了一个 Quartz.NET 调度程序,它是使用标准方法从 quartz.config 初始化的,即
_schedulerFactory = new StdSchedulerFactory();
_scheduler = _schedulerFactory.GetScheduler();
我的理解是开箱即用的 Quartz 不会记录任何内容,除非您明确连接 Job 或 Trigger 侦听器,但是我得到了很多日志记录,特别是当我抛出 JobExecutionException 时,我得到以下信息INFO 消息,其中包括内部异常的完整堆栈跟踪。我不想要这个,因为我自己在 JobListener 中处理异常并且只想记录实际异常(我抛出 FileNotFound 异常并且 JobListener 稍后会重新安排所以不想将其记录为错误)
如何防止 JobRunShell 记录?
2016-03-17 12:31:33,677 JobSchedulerService_Worker-1 INFO JobRunShell Run Job Jobs.TestJob threw a JobExecutionException:
由于 Quartz.NET 使用 Common.Logging 抽象,您必须配置它以使用您选择的日志框架,禁用 Quartz 日志的最佳方法是在您的日志框架配置中。
Log4net 示例(xml 配置):
<logger name="Quartz">
<level value="OFF" />
</logger>
我已经实现了一个 Quartz.NET 调度程序,它是使用标准方法从 quartz.config 初始化的,即
_schedulerFactory = new StdSchedulerFactory();
_scheduler = _schedulerFactory.GetScheduler();
我的理解是开箱即用的 Quartz 不会记录任何内容,除非您明确连接 Job 或 Trigger 侦听器,但是我得到了很多日志记录,特别是当我抛出 JobExecutionException 时,我得到以下信息INFO 消息,其中包括内部异常的完整堆栈跟踪。我不想要这个,因为我自己在 JobListener 中处理异常并且只想记录实际异常(我抛出 FileNotFound 异常并且 JobListener 稍后会重新安排所以不想将其记录为错误)
如何防止 JobRunShell 记录?
2016-03-17 12:31:33,677 JobSchedulerService_Worker-1 INFO JobRunShell Run Job Jobs.TestJob threw a JobExecutionException:
由于 Quartz.NET 使用 Common.Logging 抽象,您必须配置它以使用您选择的日志框架,禁用 Quartz 日志的最佳方法是在您的日志框架配置中。
Log4net 示例(xml 配置):
<logger name="Quartz">
<level value="OFF" />
</logger>