首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC 6标准日志消息

MVC 6标准日志消息
EN

Stack Overflow用户
提问于 2015-09-21 14:53:55
回答 2查看 460关注 0票数 1

我正在我的MVC应用程序中实现日志记录。

我注意到正在自动记录以下两条消息:

信息:请求成功地匹配路线的名称'XXX‘和模板’XXX‘。“冗长:执行行动”

我的问题是,是否有可能关闭这些信息,以及如何完成。我确信它在某个位置,但我还没有找到它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-22 01:51:25

您需要添加一个筛选器,它将忽略您不关心的日志,同时继续允许您关心的日志(如您的代码所做的日志)继续被记录--不管级别如何。

这将取决于您使用的是哪个LoggerProvider,或者您是否正在滚动您自己的。由于您没有提供任何注册LoggerProvider的代码,所以我将使用来自Logging/AspNet的示例应用程序作为示例。注第25行:

代码语言:javascript
复制
factory.AddConsole((category, logLevel) => logLevel >= LogLevel.Critical &&
    category.Equals(typeof(Program).FullName)); // restricts to Program

上面的类别筛选器限制记录器只记录由SampleApp.Program对象生成的项(另外只允许Critical或更高的日志,但我们不关心该位)

现在,您可以继续使用白名单列出您想要记录的每个名称空间,但是更容易将不想要的名称空间列入黑名单。Microsoft.AspNet.*库非常嘈杂,因此可以添加以下过滤器来阻止它们进行日志记录:

代码语言:javascript
复制
factory.AddConsole((category, logLevel) => !category.StartsWith("Microsoft.AspNet"));

如果您已经滚动了自己的ILogger,那么只需要确保您已经将过滤器作为构造函数参数,并在ILogger.IsEnabled的实现中引用它。

票数 2
EN

Stack Overflow用户

发布于 2015-09-21 16:21:10

日志记录有不同的级别,可以将其设置为更高的级别,从而消除信息级别的日志记录。

代码语言:javascript
复制
// LogLevels
//Debug = 1,
//Verbose = 2,
//Information = 3,
//Warning = 4,
//Error = 5,
//Critical = 6,
loggerFactory.MinimumLevel = LogLevel.Warning;

您将在配置方法中的Startup.cs中设置此设置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32698361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档