QuartZ输出日志级别设置
集成Quartz.NET后,使用数据库模式,控制台会输出很多日志信息,可以看到输出很多Quartz的DBG级别的日志
因为使用了Serilog,因此需要在appsetting.json中配置log节点
一、配置appsetting.json
任何一个都可以:
1) 配置Quartz所有的日志输出级别 (推荐)
JavaScript 全选
{
"log": {
"overrides": [
{
"source": "Quartz",
"minlevel": "Warning"
}
]
}
}
2) 按照类别配置日志级别
C# 全选
{
"log": {
"overrides": [
{
"source": "Quartz.SQL",
"minlevel": "Warning"
},
{
"source": "Quartz.Impl.AdoJobStore.ClusterManager",
"minlevel": "Warning"
},
{
"source": "Quartz.Core.QuartzSchedulerThread",
"minlevel": "Warning"
}
]
}
}
二、重写日志类
添加日志提供类:
C# 全选
public class ConsoleLogProvider : ILogProvider
{
public Logger GetLogger(string name)
{
return (level, func, exception, parameters) =>
{
if (level >= Quartz.Logging.LogLevel.Info && func != null)
{
Console.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] [" + level + "] " + func(), parameters);
}
return true;
};
}
public IDisposable OpenMappedContext(string key, object value, bool destructure = false)
{
throw new NotImplementedException();
}
public IDisposable OpenNestedContext(string message)
{
throw new NotImplementedException();
}
}
设置Quartz日志
C# 全选
LogProvider.SetCurrentLogProvider(new ConsoleLogProvider());
效果
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YESWEB 张国生