日志作为快速定位程序问题的主要手段,日志几乎是所有程序都必须拥有的一部分,下面我们就看下NET CORE环境下怎么使用log4net:
1.下载log4net.dll和Microsoft.Extensions.Logging.Log4Net.AspNetCore.dll文件 ;
2.创建自己的项目
3.在自己项目下的引用log4net.dll和Microsoft.Extensions.Logging.Log4Net.AspNetCore.dll文件 ;
Nuget引入log4net/ Microsoft.Extensions.Logging.Log4Net.AspNetCore:如下
鼠标右击“依赖性”--“管理NuGet程序包”,然后选择“浏览”输入“LogNet”搜索,安装log4net/ Microsoft.Extensions.Logging.Log4Net.AspNetCore如下图:
4.添加log4net.Config配置文件,下面贴出配置信息,大家直接复制log4net.Config文件内容就可以了:
贴的代码
<?xml version="1.0" encoding="utf-8"?><level value="ALL"/> <appender-ref ref="DebugAppender"/><appender-ref ref="InfoAppender"/><appender-ref ref="ErrorAppender"/><appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Error\\"/> <param name="AppendToFile" value="true"/> <param name="MaxSizeRollBackups" value="100"/> <param name="maximumFileSize" value="10MB" /> <param name="maximumFileSize" value="10MB"/> <param name="StaticLogFileName" value="false"/> <param name="DatePattern" value="yyyy-MM-dd".log""/> <param name="RollingStyle" value="Composite"/><layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/> <filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="ERROR"/><param name="LevelMax" value="ERROR"/><appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Info\\"/><param name="AppendToFile" value="true"/><param name="MaxSizeRollBackups" value="100"/><param name="maximumFileSize" value="10MB" /><param name="StaticLogFileName" value="false"/><param name="DatePattern" value="yyyy-MM-dd".log""/><param name="RollingStyle" value="Composite"/><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="INFO"/><param name="LevelMax" value="INFO"/><appender name="DebugAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Debug\\"/><param name="AppendToFile" value="true"/><param name="MaxSizeRollBackups" value="100"/><param name="maximumFileSize" value="10MB" /><param name="StaticLogFileName" value="false"/><param name="DatePattern" value="yyyy-MM-dd".log""/><param name="RollingStyle" value="Composite"/><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="DEBUG"/><param name="LevelMax" value="DEBUG"/>
View Code
注意:生成的时候如果根目录下没有log4net.Config,需要log4net.Config右键属性,选择“复制到输出目录”修改为“始终复制”,如下图:
5.在Program.cs文件下添加配置代码:
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureLogging(logging => { logging.AddFilter("System", LogLevel.Warning); logging.AddFilter("Microsoft", LogLevel.Warning); logging.AddLog4Net(); }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup(); });
其中红色部分是添加的代码,
logging.AddLog4Net():添加应用Log4Net日志:
如果想过滤系统日志等可以添加如下两句代码:
logging.AddFilter("System", LogLevel.Warning);
logging.AddFilter("Micrisoft", LogLevel.Warning);
6.在需要打日志的文件里引用using Microsoft.Extensions.Logging,然后添加Ilog变量就可以使用日志功能,如下图:
下面是打出的日志文件:
至此NET CORE下引用log4net文件我想你已经都会用了,希望对你有帮助。
最后最后最后,重要的事情说三遍,来着是客,如果您觉得好就推荐或评论下,觉得不好希望能得到您的建议,继续改善.