首先,找到官网。 logging.apache.org/log4net/ind… 看一圈,优于百度各种迷茫搜。
1 nuget 程序包安装 。并配置 。
2 基础实现,写文本日志。
2.1 配置xml . (官网抄例子)
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="rollingAppend" type="log4net.Appender.FileAppender">
<file value="myLog.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="rollingAppend" />
</root>
</log4net>
2.2 builder 注入容器。
builder.Logging.AddLog4Net("CfgFile/log4net.Config");
2.3 控制器使用。
private readonly ILogger<SecondController> _Logger;
public SecondController(ILogger<SecondController> logger)
{
_Logger = logger;
_Logger.LogInformation($"{this.GetType().Name} 被构造了");
}
public IActionResult Index()
{
_Logger.LogInformation($"Index 被执行了");
return View();
}
日志效果如图。
2 写sql 日志。 略。 (配来配去的。)
3 使用level 进行级别控制 。
<level value="FATAL" />
4 玩下nlog
4.1 nuget 添加NLog.Extensions.Logging
4.2 写配置,program.cs 注入。
官网找例子。
<?xml version="1.0" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target name="file" xsi:type="File"
layout="${longdate} ${logger} ${message}${exception:format=ToString}"
fileName="${basedir}/logs/logfile.txt"
keepFileOpen="true"
encoding="utf-8" />
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="file" />
</rules>
</nlog>
using NLog.Web;
#region nlog
{
builder.Logging.AddNLog("CfgFile/nlog.Config");
}
#endregion
写日志,看效果 。 写法等同于 log4net