我正在我的MVC应用程序中实现日志记录。
我注意到正在自动记录以下两条消息:
信息:请求成功地匹配路线的名称'XXX‘和模板’XXX‘。“冗长:执行行动”
我的问题是,是否有可能关闭这些信息,以及如何完成。我确信它在某个位置,但我还没有找到它。
发布于 2015-09-22 01:51:25
您需要添加一个筛选器,它将忽略您不关心的日志,同时继续允许您关心的日志(如您的代码所做的日志)继续被记录--不管级别如何。
这将取决于您使用的是哪个LoggerProvider,或者您是否正在滚动您自己的。由于您没有提供任何注册LoggerProvider的代码,所以我将使用来自Logging/AspNet的示例应用程序作为示例。注第25行:
factory.AddConsole((category, logLevel) => logLevel >= LogLevel.Critical &&
category.Equals(typeof(Program).FullName)); // restricts to Program上面的类别筛选器限制记录器只记录由SampleApp.Program对象生成的项(另外只允许Critical或更高的日志,但我们不关心该位)
现在,您可以继续使用白名单列出您想要记录的每个名称空间,但是更容易将不想要的名称空间列入黑名单。Microsoft.AspNet.*库非常嘈杂,因此可以添加以下过滤器来阻止它们进行日志记录:
factory.AddConsole((category, logLevel) => !category.StartsWith("Microsoft.AspNet"));如果您已经滚动了自己的ILogger,那么只需要确保您已经将过滤器作为构造函数参数,并在ILogger.IsEnabled的实现中引用它。
发布于 2015-09-21 16:21:10
日志记录有不同的级别,可以将其设置为更高的级别,从而消除信息级别的日志记录。
// LogLevels
//Debug = 1,
//Verbose = 2,
//Information = 3,
//Warning = 4,
//Error = 5,
//Critical = 6,
loggerFactory.MinimumLevel = LogLevel.Warning;您将在配置方法中的Startup.cs中设置此设置。
https://stackoverflow.com/questions/32698361
复制相似问题