C#日志组件使用介绍
NLog是适用于各种.NET平台(包括.NET标准)的灵活,免费的日志记录平台。NLog使写入多个目标变得容易 。(数据库,文件,控制台)并即时更改日志记录配置。
NLog支持结构化 日志记录和传统日志记录。
NLog的重点是:高性能,易于使用,易于扩展和灵活配置。
安装Nlog
可以选择包管理器或包管理器控制台安装,这里我选择使用包管理器控制台安装,当然你也可以选择直接去官网下载,传送门:NLog官网
1. 安装Nlog
Install-Package Nlog
2. 安装Nlog.Config
Install-Package Nlog.Config
配置Nlog
安装完以后会自动引用程序集以及会在工程目录添加NLog.config
和 NLog.xsd
两个文件
打开>> NLog.config 文件,编辑其内容
<?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">
<!--用于输出得Layout模板-->
<variable name="fileFormat" value="
${newline}Data:${data}
${newline}Level: ${level}
${newline}Machinename: ${machinename}
${newline}version: ${assembly-version}
${newline}Callsite: ${callsite}
${newline}Stacktrace: ${stacktrace}
${newline}Message: ${message}"/>
<targets>
<!--这个目标:最终输出文件类型, 位于根目录中得logs文件夹中, 名称以每日得时间一次生成log文件 , layout: 这个选项为生成的格式-->
<target xsi:type="File" name="file"
fileName="${basedir}/Logs/${shortdate}.log"
layout="${fileFormat}" maxArchiveFiles="1"
archiveAboveSize="10240"
archiveEvery="Day"/>
</targets>
<rules>
<!--设定了一个Debug得路由, 最终指向了一个f名称得目标 -->
<logger name="*" minlevel="Debug" writeTo="file" />
<logger name="*" minlevel="Info" writeTo="file" />
<logger name="*" minlevel="Error" writeTo="file" />
</rules>
</nlog>
Tips:详细配置说明可以去官网查,传送门:Configuration options
使用Nlog
创建实例
private static readonly NLog.Logger Logger = NLog.LogManager.GetCurrentClassLogger();
使用Debug进行输出
class Program
{
private static readonly NLog.Logger Logger = NLog.LogManager.GetCurrentClassLogger();
static void Main(string[] args)
{
Logger.Debug("我出现了意外!");
Console.ReadKey();
}
}