分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

log4net使用方法

发布时间:2023-09-06 02:08责任编辑:董明明关键词:暂无标签

1.NuGet包管理器中安装log4net

2.接着在项目中添加log4net.config文件,以及手撸或寻找一个LogHelper

添加完log4net.config一定要设置属性,将其始终复制到输出目录

<?xml version="1.0" encoding="utf-8" ?><configuration> ?<configSections> ???<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> ?</configSections> ?<log4net xsi:noNamespaceSchemaLocation="http://csharptest.net/downloads/schema/log4net.xsd" ?????????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> ???<root> ?????<level value="DEBUG"/> ?????<appender-ref ref="ErrorRollingFileAppender"/> ?????<appender-ref ref="WarnRollingFileAppender"/> ?????<appender-ref ref="InfoRollingFileAppender"/> ?????<appender-ref ref="DebugRollingFileAppender"/> ???</root> ???<!--一般错误日志定义,用于记录已知需处理的与未捕获的异常--> ???<!--日志输出格式:[时间]:类名 线程号 消息--> ???<appender name="ErrorRollingFileAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelRangeFilter"> ???????<levelMin value="ERROR"/> ???????<levelMax value="FATAL"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<file value="logs\"/> ?????<rollingStyle value="Date"/> ?????<datePattern value="yyyy-MM-dd\\&quot;Error.log&quot;"/> ?????<staticLogFileName value="false"/> ?????<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/> ?????<layout type="log4net.Layout.PatternLayout"> ???????<conversionPattern value="[%d{yyyy-MM-dd HH:mm:ss.fff}] %-5p %c.%M %t %n%m%n"/> ?????</layout> ???</appender> ???<!--警告日志定义,用于记录已知不需处理的异常,系统警告信息--> ???<!--日志输出格式:[时间]:类名 线程号 消息--> ???<appender name="WarnRollingFileAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelMatchFilter"> ???????<levelToMatch value="WARN"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<file value="logs\"/> ?????<appendToFile value="true"/> ?????<rollingStyle value="Date"/> ?????<datePattern value="yyyy-MM-dd\\&quot;Warn.log&quot;"/> ?????<staticLogFileName value="false"/> ?????<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/> ?????<layout type="log4net.Layout.PatternLayout"> ???????<conversionPattern value="[%d{yyyy-MM-dd HH:mm:ss.fff}] %c.%M %t %m%n"/> ?????</layout> ???</appender> ???<!--信息日志定义,用于记录用户相关信息--> ???<!--日志输出格式:[时间]:消息--> ???<appender name="InfoRollingFileAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelMatchFilter"> ???????<levelToMatch value="INFO"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<file value="logs\"/> ?????<appendToFile value="true"/> ?????<rollingStyle value="Date"/> ?????<datePattern value="yyyy-MM-dd\\&quot;Info.log&quot;"/> ?????<staticLogFileName value="false"/> ?????<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/> ?????<layout type="log4net.Layout.PatternLayout"> ???????<conversionPattern value="[%d{yyyy-MM-dd HH:mm:ss}] %m%n"/> ?????</layout> ???</appender> ???<!--信息日志定义,用于收集开发调试信息--> ???<!--日志输出格式:[时间]:类名 线程号 消息--> ???<appender name="DebugRollingFileAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelMatchFilter"> ???????<levelToMatch value="DEBUG"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<file value="logs\"/> ?????<appendToFile value="true"/> ?????<rollingStyle value="Date"/> ?????<datePattern value="yyyy-MM-dd\\&quot;Debug.log&quot;"/> ?????<staticLogFileName value="false"/> ?????<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/> ?????<layout type="log4net.Layout.PatternLayout"> ???????<conversionPattern value="[%d{yyyy-MM-dd HH:mm:ss.fff}] %c %t:%m%n"/> ?????</layout> ???</appender> ?</log4net></configuration>
 1 ????public static class LogHelper 2 ????{ 3 ????????private static readonly log4net.ILog Logerror = log4net.LogManager.GetLogger("DEBUG"); 4 ?5 ????????public static void WriteInfoLog(string info) 6 ????????{ 7 ????????????Logerror.Info(info); 8 ????????} 9 10 ????????public static void WriteErrorLog(string info)11 ????????{12 ????????????Logerror.Error(info);13 ????????}14 15 ????????public static void WriteDebugLog(string info)16 ????????{17 ????????????Logerror.Debug(info);18 ????????}19 20 ????????public static void WriteDebugLog(Exception exception)21 ????????{22 ????????????Logerror.Debug(exception.Message, exception);23 ????????}24 ????}

 3.最后需要在AssemblyInfo.cs中添加一行代码

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]

效果如下:

1 ????????static void Main(string[] args)2 ????????{3 ????????????LogHelper.WriteDebugLog("1234444445");4 ????????}

Demo下载:https://pan.baidu.com/s/1hFXoUPZUWVCwDdjx-bTtHQ

log4net使用方法

原文地址:https://www.cnblogs.com/LikeHeart/p/9353093.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved