C#:关于Nlog设置和用法

时间:2017-02-15 19:24:20

标签: c# nlog

我很想使用nlog。我以前没用过它。所以我现在想在我的项目中使用它。我有一个问题。

<rules>
    <logger name="SomeNamespace.Component.*" minlevel="Trace" writeTo="logfile" final="true" />
    <logger name="*" minlevel="Info" writeTo="logfile" />
</rules>

这里的意思是SomeNamespace.Component。*?使用示例代码

向我展示此类规则的用法

什么是minlevel="Info"?这里的意思是什么意思 minlevel ? 可以为 minlevel 设置其他选项吗?

感谢

1 个答案:

答案 0 :(得分:1)

  

这里的含义是SomeNamespace.Component。*?

这意味着此规则将匹配名称以SomeNamespace.Component.开头的任何记录器。通常,logger的名称等于您创建logger的类的名称(但您也可以提供自定义记录器名称):

private static readonly Logger Logger = LogManager.GetCurrentClassLogger();

因此,上面的规则配置将匹配以下记录器名称:

SomeNamespace.Component.MyClass
SomeNamespace.Component.Cool.Other.Namespace.YourClass
// etc

即。在SomeNamespace.Component.命名空间的类中创建的任何记录器都将匹配规则。无论你有多少个带有记录器的课程。

  

什么是minlevel =“Info”?

这是记录器将记录的最低级别的日志消息。

Logger.Debug("This will not be logged");
Logger.Info("This will be logged");

NLog支持以下日志级别(您可以使用其中任何一个来控制将记录哪些消息):

  1. 微量
  2. 调试
  3. 信息
  4. 警告
  5. 错误
  6. 致命
  7. NLog wiki检查每个级别的说明。通常你应该使用最低级别Info,它将记录任何错误消息和系统正在做的一些高级细节。出于调试目的,您可以启用TraceDebug级别,但您的日志文件可能会非常快速地变大。当您编写大量日志消息时,性能也会受到影响。