下载依赖
log4net
Microsoft.Extensions.Logging.Log4Net.AspNetCore
创建配置文件
创建log4net.Config
配置文件,并设置始终复制
(编译后会自动加载到项目)
文件内容:
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<!-- 控制台日志配置 -->
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<!-- 日志输出格式 -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<!-- 文件存储日志配置 -->
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<!-- 保存文件的名称 -->
<file value="Z:\.net_log\log.txt" />
<appendToFile value="true" />
<!-- 文件的编码方式 -->
<param name="Encoding" value="UTF-8"/>
<!-- 每个文件的大小 -->
<maximumFileSize value="100KB" />
<!-- 保存文件数量 -->
<maxSizeRollBackups value="2" />
<!-- 日志输出格式 -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
开启日志
// 引入配置文件
builder.Logging.AddLog4Net("CfgFile/log4net.Config");
// 设置记录级别
builder.Logging.SetMinimumLevel(LogLevel.Information);
测试
项目启动后,自动记录日志
控制台日志与文本日志
手动添加日志
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
_logger.LogInformation($"Info:{this.GetType().FullName}被构造");
_logger.LogError($"Err:{this.GetType().FullName}被构造");
_logger.LogDebug($"Debug:{this.GetType().FullName}被构造");
_logger.LogWarning($"Warning:{this.GetType().FullName}被构造");
}