log4net 在.NET Core 控制台程序中的应用
简介
本文主要讲解log4net 在.NET Core控制台程序中的应用
步骤
1.安装log4net Nuget包
2.增加配置文件
3.增加封装的LogHelper的类
4.调用
5.验证结果
实施
1.安装log4net Nuget包
首先,需要在你的.NET Core项目中安装log4net包。可以通过NuGet包管理器来安装。打开你的项目,然后使用以下命令安装log4net:
dotnet add package log4net
2.增加配置文件
先在根目录下新增一个App.config的文件
在配置文件中输入 log4net 的配置信息
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections> <log4net> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <!--日志路径--> <param name= "File" value= ".\logs\"/> <!--是否是向文件中追加日志--> <param name= "AppendToFile" value= "true"/> <!--log保留天数--> <param name= "MaxSizeRollBackups" value= "10"/> <!--每个log文件最大是2M,如果超过2M将重新创建一个新的log文件,并将原来的log文件备份。--> <maximumFileSize value="2MB" /> <!--日志文件名是否是固定不变的--> <param name= "StaticLogFileName" value= "false"/> <!--日志文件名格式为:2008-08-31-12.log--> <param name= "DatePattern" value="yyyyMMdd/"aaaaaaa.log"" /> <!--日志根据日期滚动--> <param name= "RollingStyle" value= "Date"/> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n %loggername" /> </layout> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> </appender> <root> <!--(高) OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL (低) --> <level value="ALL" /> <appender-ref ref="RollingLogFileAppender"/> </root> </log4net> </configuration>
3.增加封装的 LogHelper 的类
将如下代码写入到你的 LogHelper 的类中
public class LogHelper { private static readonly ILog log; static LogHelper() { var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); XmlConfigurator.Configure(logRepository, new FileInfo("App.config")); log = LogManager.GetLogger(typeof(LogHelper)); } public static void Info(string message) { log.Info(message); } public static void Error(string message) { log.Error(message); } public static void Error(string message, Exception ex) { log.Error(message, ex); } }
4.调用
在需要执行的代码处,输入
LogHelper.Info("Hello log4net."); Console.ReadLine();
5.验证结果
输出结果如下
你就可以拿这个去任意输出你想要的信息了
希望大家能一起加入到NCF的社区当中来,一起为中国之崛起Coding
QQ:365845726