欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ASP.NET Core 实现 Log4Net 的配置

程序员文章站 2024-03-02 14:54:22
...

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

ASP.NET Core 实现 Log4Net 的配置

 2、增加配置Program.cs

ASP.NET Core 实现 Log4Net 的配置

 代码如下:

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配置文件

ASP.NET Core 实现 Log4Net 的配置

 ASP.NET Core 实现 Log4Net 的配置

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

<?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记录日志信息

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

ASP.NET Core 实现 Log4Net 的配置

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

ASP.NET Core 实现 Log4Net 的配置

 ASP.NET Core 实现 Log4Net 的配置

 

相关标签: ASP.NET Core MVC