NLog 使用

环境

.net 6.0  控制台程序

第三方库

NLog.Extensions.Logging

Microsoft.Extensions.DependencyInjection

创建 NLog 配置文件

 

记得设置始终赋值,生成到发布文件夹

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
      throwExceptions="false"
      internalLogLevel="Off" internalLogFile="NLog\all_log.log">

  <targets>
    <!--文件日志,archive相关参数:文件拆分,每100M拆分一个新文件-->
    <target xsi:type="File"
          name="all_log"
          fileName="NLog\${shortdate}\${uppercase:${level}}.log"
          layout="${longdate}|${logger}|${uppercase:${level}}|${message} ${exception}"
          archiveFileName="NLog\${shortdate}\${uppercase:${level}}${shortdate}.{####}.log"
          archiveNumbering="Rolling"
          archiveAboveSize="10485760"
          concurrentwrites="true"
          maxArchiveFiles="100"
              />

  </targets>


  <rules>
    <!-- add your logging rules here -->
    <!--路由顺序会对日志打印产生影响。路由匹配逻辑为顺序匹配。-->
    <logger name="Program" minlevel="Info" writeTo="all_log"  final="true"  />
    <logger name="Fenglix.*" minlevel="Info" writeTo="all_log" final="true" />
    <logger name="*" minlevel="Warn" writeTo="all_log" />
    
  </rules>
</nlog>

<rules> 是日志筛选规则 类似 c# 的 switch 语法,其中  final="true" 类似 break 匹配了才不往下走。

name="Fenglix.*"  日志源/记录者的名字,理解为执行日志代码的那个命名空间或者类 (允许使用通配符*)

日志等级说明

  • NLog支持如下几种记录等级(优先级:Trace→Debug→Info→Warn→Error→Fatal):
  1. Trace最常见的记录信息,一般用于普通输出
  2. Debug同样是记录信息,不过出现的频率要比Trace少一些,一般用来调试程序
  3. Info信息类型的消息
  4. Warn警告信息,一般用于比较重要的场合
  5. Error错误信息
  6. Fatal致命异常信息。一般来讲,发生致命异常之后程序将无法继续执行。

使用方式

直接创建实例使用

 依赖注入容器使用

直接使用 NLog.LogManager 创建

 

微软自带的日志

参考 .NET Core 和 ASP.NET Core 中的日志记录 | Microsoft Learn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值