翻译官方教程,并且记录使用过程中遇到的问题。
使用 NuGet 程序包管理器安装 NLog。如何使用 NuGet?
遇到问题:我的项目是 .Net Framework 4.0.0 平台的,虽然 NLog 说明中是支持的,但是在安装过程中依然会遇到如下错误:
“NLog”已拥有为“NETStandard.Library”定义的依赖项。
解决办法是安装低版本的 NLog ,我安装的是 4.0.0 的版本(此时最新版是 4.5.11 )。安装方法是在 NuGet 程序包管理器控制台中输入如下命令:
PM> Install-Package NLog -Version 4.0.0
只有配置好 NLog Targets,NLog 才会有输出。
配置方法:
以下是 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">
<targets>
<target name="logfile" xsi:type="File" fileName="file.txt" />
<target name="logconsole" xsi:type="Console" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="logconsole" />
<logger name="*" minlevel="Debug" writeTo="logfile" />
</rules>
</nlog>
遇到问题:忘记设置文件属性,导致无输出。
示例:
public class MyClass
{
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
public void MyMethod1()
{
logger.Trace("Sample trace message");
logger.Debug("Sample debug message");
logger.Info("Sample informational message");
logger.Warn("Sample warning message");
logger.Error("Sample error message");
logger.Fatal("Sample fatal error message");
// alternatively you can call the Log() method
// and pass log level as the parameter.
logger.Log(LogLevel.Info, "Sample informational message");
// Example of logging an exception
try
{
}
catch (Exception ex)
{
logger.Error(ex, "ow noos!"); // render the exception with ${exception}
throw;
}
}
}
原文:https://www.cnblogs.com/zdfffg/p/10184128.html