1 在vs上安装log4net

2 新建log4net.config  填写如下:

<log4net><appender name="RollingLogFileAppender_DateFormat" type="log4net.Appender.RollingFileAppender"><file value="Logs/Log_"/><appendToFile value="true"/><rollingStyle value="Date"/><datePattern value="yyyyMMdd'.log'"/><staticLogFileName value="false"/><maximumFileSize value="10MB"/><layout type="log4net.Layout.PatternLayout"><conversionPattern value="%nTime:     %date %nThread:   [%thread] %nFilePos:  [%file:%line] %nLogLevel: [%-5level] %nErrClass: [%logger ] [%property{NDC}] %nMessage:  [%message] %n"/></layout></appender><root><level value="DEBUG"/><appender-ref ref="RollingLogFileAppender_DateFormat"/></root>
</log4net>

3 新建类 logHelper 填写如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;namespace Log
{public enum LogLevelEnum{Debug   = 0,Info    = 1,Warn    = 2,Error   = 3,Fatal   = 4}public class ModelLog{/// <summary>/// 当前保存日志等级/// </summary>public static LogLevelEnum LogLevel;/// <summary>/// 日志存放路径/// </summary>public static string LogFilePath;/// <summary>/// 日志存放天数/// </summary>public static int LogFileExistDay;}public class LogHelper{public static readonly log4net.ILog log = log4net.LogManager.GetLogger( MethodBase.GetCurrentMethod().DeclaringType );public static void Debug(object messsage){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Debug ){log.Debug( messsage );}}public static void DebugFormatted( string format, params object[] args ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Debug ){log.DebugFormat( format, args );}}public static void Info( object message ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Info ){log.Info( message );}}public static void InfoFormatted( string format, params object[] args ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Info ){log.InfoFormat( format, args );}}public static void Warn( object message ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Warn ){log.Warn( message );}}public static void WarnFormatted( string format, params object[] args ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Warn ){log.WarnFormat( format, args );}}public static void Error( object message ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Error ){log.Error( message );}}public static void Error( object message, Exception exception ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Error ){log.Error( message, exception );}}public static void ErrorFormatted( string format, params object[] args ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Error ){log.ErrorFormat( format, args );}}public static void Fatal( object message ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Fatal ){log.Fatal( message );}}public static void Fatal( object message, Exception exception ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Fatal ){log.Fatal( message, exception );}}public static void FatalFormatted( string format, params object[] args ){if ( ( int )ModelLog.LogLevel <= ( int )LogLevelEnum.Fatal ){log.FatalFormat( format, args );}}}
}

4 在AssemblyInfo.cs 中写:

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

5 log4net.config 的属性设置 如果 较新则复制

6 调用

Log.LogHelper.Error( "getData() " + ex.Message );

c#利用log4记录日志相关推荐

  1. 【Matlab】利用diary记录日志/保存命令窗口输出

    matlab 中可以利用diary函数记录下命令行窗口的输出到指定文件中,方便后期检查调试和运行信息. diary diary是matlab中的日志工具,可以将Command Window 中的内容保 ...

  2. 自定义注解利用反射记录日志

    场景: 项目中有一个供应商模块,包含供应商的基础信息.供应商资质等,字段比较多,其中有些信息比较重要,如果修改了需要记录修改日志(如哪个信息从什么改为什么),同时还需要重新提交,而有些信息修改了值需要 ...

  3. log4net使用详解

    说明:本程序演示如何利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括M ...

  4. 【转】log4net使用详解

    说明:本程序演示如何利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括M ...

  5. log4net使用具体解释

    说明:本程序演示怎样利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net能够方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包含M ...

  6. 学习资料2900篇(4~6)

    1451 round 方法  1452 RSS 2.0 Specification  1453 Ruby入门之代码块.迭代子和过程对象  1454 SAS9新体验:在DATA STEP中使用JAVA对 ...

  7. [翻译] ASP.NET Core 利用 Docker、ElasticSearch、Kibana 来记录日志

    一步一步指导您使用 ElasticSearch, Kibana, ASP.NET Core 2.1 和 Docker 来记录日志 在本教程中,我将向您展示如何启动和运行 ElasticSearch,K ...

  8. java利用切面(aspect)记录日志实现性能跟踪以及用户行为分析

    记录日志的目的是多种多样的,这里主要以性能跟踪和用户行为分析为目的讨论如何记录日志. 1. 概述 一个有一定规模的应用系统,都会存在大量的功能,这些功能通过菜单,链接,按钮和页面进行展示,在系统建设初 ...

  9. 利用Nginx实现简易负载均衡

    基本思路如下: 比如我们有三个服务器: 其中: 130.251是反向代理转发服务器 130.251和130.238分别是负载服务器 Mysql服务器没有标出来, 为方便区分,我们先把1号负载的首页写成 ...

最新文章

  1. Can't get source for site-packages\torchvision\ops\poolers.py. TorchScript requires source access in
  2. 使用 GNU profiler 来提高代码运行速度
  3. MSM8974 fastboot烧写软件
  4. 猿类如何捕获少女心--难以琢磨的try-catch
  5. 阿里开源富容器引擎 PouchContainer 的 network 连接机制
  6. 构建持续交付_如何使交付成为您的重点将如何帮助您构建高质量的应用程序
  7. NFS 故障排错指南
  8. 氢气露点和湿度换算_如何创建氢气鼓组以获取乐趣和收益
  9. c语言win api函数,Win2K下的Api函数的拦截
  10. td设置自动隐藏,hover事件触发全部显示,table列表不用担心信息太长导致界面不美观
  11. struts2 result随笔
  12. python——zip()、map()、enumerate()、filter()、apply函数
  13. java 各种数据结构,几种常见的数据结构的JAVA实现
  14. 三星、英特尔同时向高通开火:借专利妨碍公平竞争
  15. (戴尔灵越7572)笔记本外扩显示器以后,笔记本没有声音了的解决办法
  16. Java认证与授权服务JAAS基础概念
  17. win7系统启用还原服务器,小编为你讲解win7系统提示服务器上的MSDTC不可用的还原方案...
  18. 北大公开课计算机,清华、北大、浙大的计算机课程资源集都在这里了
  19. 你需要一个什么样的网站开发流程?
  20. r语言中的或怎么表示什么不同_R语言 基本语法

热门文章

  1. python获取小图在大图中的坐标和相似度
  2. 深度学习之 自然语言处理BERT
  3. linux cgroup学习总结
  4. scanf()函数的使用
  5. 有了这123个Python黑客工具,再也不用问女朋友要手机密码了
  6. 【后端教程】京东API网关实践之路!
  7. 数据挖掘数据预处理(验证性)
  8. 关于东芝步进电机驱动芯片TB67S109AFNAG的电路原理分享
  9. 神经网络种类及应用领域,常用的神经网络有哪些
  10. 二极管和三极管的导通电压