.Net Core3.1 MVC + EF Core+ AutoFac+LayUI+Sqlserver的框架搭建--------log4net日志
首先新建一个log4net.config文件,配置如下:
<?xml version="1.0" encoding="utf-8" ?>"log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> "loginfo"> "ALL" /> ref ref="AdoNetAppender" /> ref ref="InfoAppender" /> "logwarn"> "ALL" /> ref ref="WarnAppender" /> "logerror"> "ALL" /> ref ref="AdoNetAppender" /> ref ref="ErrorAppender" /> "logfatal"> "ALL" /> ref ref="AdoNetAppender" /> ref ref="FatalAppender" /> "InfoAppender" type="log4net.Appender.RollingFileAppender"> "File" value= "Log\info\"/> "AppendToFile" value= "true"/> "MaxSizeRollBackups" value= "10"/> "StaticLogFileName" value= "false"/> "DatePattern" value= "yyyyMMdd".log""/> "RollingStyle" value= "Date"/> "log4net.Layout.PatternLayout"> "ConversionPattern" value="%date{yyyy-MM-dd HH:mm:ss.fff} %-5p %m%n" /> "WarnAppender" type="log4net.Appender.RollingFileAppender"> "File" value= "Log\warn\"/> "AppendToFile" value= "true"/> "MaxSizeRollBackups" value= "10"/> "StaticLogFileName" value= "false"/> "DatePattern" value= "yyyyMMdd".log""/> "RollingStyle" value= "Date"/> "log4net.Layout.PatternLayout"> "ConversionPattern" value="%date{yyyy-MM-dd HH:mm:ss.fff} %-5p %m%n" /> "ErrorAppender" type="log4net.Appender.RollingFileAppender"> "File" value= "Log\error\"/> "AppendToFile" value= "true"/> "MaxSizeRollBackups" value= "10"/> "StaticLogFileName" value= "false"/> "DatePattern" value= "yyyyMMdd".log""/> "RollingStyle" value= "Date"/> "log4net.Layout.PatternLayout"> "ConversionPattern" value="%date{yyyy-MM-dd HH:mm:ss.fff} %-5p %m%n" /> "FatalAppender" type="log4net.Appender.RollingFileAppender"> "File" value= "Log\fatal\"/> "AppendToFile" value= "true"/> "MaxSizeRollBackups" value= "10"/> "StaticLogFileName" value= "false"/> "DatePattern" value= "yyyyMMdd".log""/> "RollingStyle" value= "Date"/> "log4net.Layout.PatternLayout"> "ConversionPattern" value="%date{yyyy-MM-dd HH:mm:ss.fff} %-5p %m%n" /> "ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender"> "ERROR" /> "Red, HighIntensity" /> "Info" /> "Green" /> "log4net.Layout.PatternLayout"> "%n%date{HH:mm:ss.fff} %-5level %m" /> "log4net.Filter.LevelRangeFilter"> "LevelMin" value="Info" /> "LevelMax" value="Fatal" /> "AdoNetAppender" type="log4net.Appender.AdoNetAppender"> "1" /> "System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> "data source=.;initial catalog=test_log;integrated security=true" /> "INSERT INTO log([userid],[level],[ip],[msg],[exception]) VALUES (@userid,@level,@ip, @msg,@exception)" /> "@userid"/> "Int64"/> "64"/> "log4net.Layout.PatternLayout"> "%X{userid}"/> "@level" /> "String" /> "50" /> "log4net.Layout.PatternLayout"> "%level" /> "@ip" /> "String" /> "50" /> "log4net.Layout.PatternLayout"> "%X{ip}" /> "@msg" /> "String" /> "4000" /> "log4net.Layout.PatternLayout"> "%message" /> "@exception" /> "String" /> "2000" /> "log4net.Layout.ExceptionLayout" />
新建一个系统日志通用类:LogHelper
using log4net; using log4net.Config; using log4net.Repository; using System; using System.Collections.Generic; using System.IO; using System.Text; namespace Core.Net.Common.Core.Net.Core.Nlog4 { ////// 系统日志记录通用类 /// public class LogHelper { private const string repositoryName = "NETCoreRepository"; private const string configFile = "log4net.config"; private static ILoggerRepository repository { get; set; } private static readonly ILog _loginfo = LogManager.GetLogger(repositoryName, "loginfo"); private static readonly ILog _logerror = LogManager.GetLogger(repositoryName, "logerror"); private static readonly ILog _logwarn = LogManager.GetLogger(repositoryName, "logwarn"); private static readonly ILog _logfatal = LogManager.GetLogger(repositoryName, "logfatal"); public static void Configure() { repository = LogManager.CreateRepository(repositoryName); XmlConfigurator.Configure(repository, new FileInfo(configFile)); } /// /// 基本信息日志插入 /// /// public static void Info(string msg) { _loginfo.Info(msg); } /// /// 警告信息日志插入 /// /// public static void Warn(string msg) { _logwarn.Warn(msg); } /// /// 错误信息日志插入 /// /// public static void Error(string msg) { _logerror.Error(msg); } /// //异常信息插入 /// /// public static void Fatal(string msg) { _logfatal.Fatal(msg); } } }
在ConfigureServices方法中注册:
LogHelper.Configure(); //Nlog4日志
调用:
LogHelper.Error("11111"); LogHelper.Info("11111"); LogHelper.Warn("11111"); LogHelper.Fatal("111111");
查看: