ASP.NET Core 实现 Log4Net 的配置

1、添加NuGet包:Microsoft.Extensions.Logging.Log4Net.AspNetCore

 2、增加配置Program.cs

 代码如下:

public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args).ConfigureLogging((context, ILoggingBuilder) => {
                ILoggingBuilder.AddFilter("System", LogLevel.Warning);
                ILoggingBuilder.AddFilter("Microsoft", LogLevel.Warning);
                ILoggingBuilder.AddLog4Net();
            })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });

3、添加log4net.config配置文件

 

 配置文件创建好了以后,就要在配置文件中添加配置信息。

<?xml version="1.0" encoding="utf-8" ?>
<log4net>
  <appender name="DebugAppender" type="log4net.Appender.DebugAppender" >
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
    </layout>
  </appender>
  <!--指定日记记录方式,以滚动文件的方式(文件记录)-->
  <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
    <!--日志路径-->
    <file value="log\log.txt" />
    <!--是否是向文件中追加日志-->
    <appendToFile value="true" />
    <!--log保留天数-->
    <param name= "MaxSizeRollBackups" value= "10"/>
    <!--每个文件最大1M-->
    <param name="maximumFileSize" value="1MB" />
    <!--日志根据日期滚动-->
    <param name="RollingStyle" value="Date" />
    <!--日志文件名格式为:logs_20080831.log-->
    <param name="DatePattern" value="&quot;logs_&quot;yyyyMMdd&quot;.log&quot;" />
    <!--日志文件名是否是固定不变的-->
    <param name="StaticLogFileName" value="false" />
    <!--布局-->
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
    </layout>
  </appender>
  <root>
    <level value="ALL"/>
    <appender-ref ref="DebugAppender" />
    <appender-ref ref="RollingFile" />
  </root>
</log4net>

配置信息根据实际情况可以进行修改。

4、项目中使用log4net记录日志信息

比如在控制器中记录日志:

运行项目,可以在项目文件夹中看到有log的文件夹

 

 

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页