<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs\err.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs\info.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs\debug.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
</log4net>

使用方法:

1. 程序启动时载入配置

 log4net.Config.XmlConfigurator.Configure(new FileInfo(AppDomain.CurrentDomain.BaseDirectory+@"configs\log4net.config"));

web在 global.asax,win在 program.cs

2.使用

public static ILog Logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
Logger.Info(Exception ex);
Logger.Error();

最新文章

  1. Android WebView 302斗争之旅
  2. mysql启动报错The server quit without updating PID file
  3. 浅谈我对JCS 的理解
  4. archlinux 学习笔记
  5. PC-PC-单片机(Arduino)通信实例
  6. webform 页面传值的方法总结
  7. DelphiXE8怎么使用调试模式(朱建强)
  8. 黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block
  9. angularJs $mdDialog和$uibModal弹框关闭传值
  10. A Base Class pointer can point to a derived class object. Why is the vice-versa not true?
  11. Linux Centos6.9下安装部署VNC的实操详述
  12. C#中的虚函数及继承关系
  13. python之常用模块一(time、random、os、sys)
  14. Hadoop问题:Input path does not exist: hdfs://Master:9000/user/hadoop/input
  15. linux软链接的创建、删除和更新
  16. Codeforces 1080C- Masha and two friends
  17. Android在开发中的使用技巧之解决ScrollView嵌套RecyclerView出现的系列问题
  18. SharePoint REST API - 基本操作(一)
  19. CentOS Basic XLib functionality test failed!
  20. Oracle EBS 表空间

热门文章

  1. &lt;Docker学习&gt;3. docker镜像命令使用
  2. 基于pandas进行数据预处理
  3. 笔记-python-built-in functions-eval,exec,compile
  4. PHP.24-TP框架商城应用实例-后台1-添加商品功能、钩子函数、在线编辑器、过滤XSS、上传图片并生成缩略图
  5. OpenCV学习笔记(十一) 轮廓操作
  6. SpringBoot推荐基础包
  7. Java - 收藏集 -
  8. CentOS-6.3-minimal安装gnome桌面环境(转载)
  9. C#正则表达式引发的CPU跑高问题以及解决方法
  10. selenium定位弹出菜单