.NET5(.net core) web项目写日志到本地文件
原创
©著作权归作者所有:来自51CTO博客作者codejam的原创作品,请联系作者获取转载授权,否则将追究法律责任
一个.NET5项目,使用log4net
写日志到本地文件的示例。
1. 新建一个web项目,基于.NET5的


2. 此时网站项目已经可以直接运行了

3. 开始引入日志依赖库

4. 根目录直接添加log4net.xml文件。
log4net.xml
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!-- Pattern to output the caller's file name and line number -->
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="my-log.log" />
<appendToFile value="true" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %c %level %method - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
如图:

5. 读取配置文件
Program.cs
//using log4net.Config;
{
#region 取log4net的配置
//BasicConfigurator.Configure(); 这个是默认配置,输出日志到Console
//这个是指定配置,输出日志到文件
XmlConfigurator.Configure(new System.IO.FileInfo("log4net.xml"));
#endregion
CreateHostBuilder(args).Build().Run();
}

6. 随便找个地方写日志
比如:LogDemo\Pages\Index.cshtml.cs

LogManager.GetLogger(typeof(IndexModel)).Debug("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
直接F5调试就能看到进入了断点:

7. 日志文件就能看到了


完成,没什么好说的了。