.NetCore 使用log4net日志
NuGet
Program.cs
.ConfigureLogging(LoggingBuilder => {
LoggingBuilder.AddLog4Net();
})
Startup.cs
public static ILoggerRepository repository { get; set; }
repository = LogManager.CreateRepository("NetCoreApp"); //我的項目名稱叫NetCoreApp
//指定配置檔案
XmlConfigurator.Configure(repository, new FileInfo(env.ContentRootPath+"\\log4net.config"));
配置檔案: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/" />
<!--是否是向檔案中追加日志-->
<appendToFile value="true" />
<!--log保留天數-->
<param name= "MaxSizeRollBackups" value= "100"/>
<!--每個檔案最大1M-->
<param name="maximumFileSize" value="30MB" />
<!--日志根據日期滾動-->
<param name="RollingStyle" value="Date" />
<!--日志檔案名格式為:logs_20200831.log-->
<param name="DatePattern" value=""logs_"yyyyMMdd".log"" />
<!--日志檔案名是否是固定不變的-->
<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>