Nlog使用

日志是程序的重要组成部分,是排查故障,解决问题的利器。这篇文章从一个菜鸟的角度,讲述了Nlog日志库的使用。

首先右键 引用==》管理NuGet程序包==》在预览输入Nlog==》安装

写了3个测试代码如下:

            //设置日志名称
            var log = LogManager.GetLogger("NlogTest");

            //测试3种日志的输出
            log.Info("info test");
            log.Error("error test");
            log.Warn("warning test");

日志的输出,是靠一个叫NLog.config的配置文件完成的,下面简单的说明下配置文件:

1、设置控制台输出:

全部日志都输出到控制台:

显示如下:

只输出error,需要增加级别过滤 level ="Error"

输出如下:


把日志写入文件:

增加规则配置如下:

<logger name="*"  writeTo="IVS_CMS_file" />

还需要再前面先定义一下文件,这里定义了一个叫IVS_CMS_file的文件

<target name="IVS_CMS_file" xsi:type="File"
            fileName="${basedir}/Logs/IVS_CMS/${shortdate}/IVS_CMS.txt" maxArchiveFiles="30"

            layout="${longdate} | ${level:uppercase=false}  ${newline} ${message} ${newline}" /> 

这时候,会在程序当前路径生成一个logs文件,

显示如下:

*******************---以上可以加解决基的日志需求----*************************************

但是当我们的程序一年360天一直运行下去,日志越来越多,就需要对日志文件进行一些处理,主要由两个需求:

第一个:日志文件不能太大,最好20M左右一个文件,便于排查故障

第二个:日志文件不能太多,最好1个G之后,会自动删除,循环覆盖

基于以上两点需求,还需要再继续研究一下nlog的配置文件的使用:

设置日志文件大小:

在前面的文件设置里面,设置文件大小属性

archiveAboveSize="1024"

单位是字节

修改测试程序之后,会生产大小为1024的


设置文件个数:

增加配置属性:maxArchiveFiles="30"

含义为:在当前文件夹下面最多生成30个文件,

增加archiveNumbering="Rolling" 字段,可以滚动写入,不会新建文件,直接覆盖前面的文件

为了方便大家学习,把完成的日志使用工程上传上去,供大家参考,开发环境VS2017

nlogdemo






----------------------------------------------------参考-----------------------------------

https://www.cnblogs.com/Cwj-XFH/p/5822837.html



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 .NET Core 控制台应用中使用 NLog,需要进行以下步骤: 1. 安装 NLog 包。您可以在 NuGet 包管理器中搜索 NLog 并安装它,或使用命令行: ``` dotnet add package NLog ``` 2. 在项目根目录下创建一个名为 `nlog.config` 的文件,并将以下配置复制到文件中,以启用NLog: ```xml <?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" autoReload="true" internalLogLevel="Trace" internalLogFile="c:\temp\nlog-internal.log"> <targets> <target name="file" xsi:type="File" fileName="${basedir}/logs/${shortdate}.log" layout="${longdate} ${uppercase:${level}} ${message}" /> </targets> <rules> <logger name="*" minlevel="Trace" writeTo="file" /> </rules> </nlog> ``` 这样,NLog 就会将日志写入到当前应用程序目录下的 `logs` 文件夹中,并将日志文件名设置为当前日期。 3. 在应用程序入口点中,添加 NLog 配置和日志记录: ```csharp using NLog; using NLog.Config; using NLog.Targets; class Program { static void Main(string[] args) { // 加载NLog配置 LogManager.LoadConfiguration("nlog.config"); // 创建logger var logger = LogManager.GetCurrentClassLogger(); // 记录日志 logger.Info("Hello, NLog!"); // 等待用户按下任意键退出 Console.ReadKey(); } } ``` 这样就可以在控制台应用程序中使用 NLog 记录日志了。如果您需要更多的日志记录选项,可以参考 NLog 的官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值