Log4Net快速配置
1、 Log4NET的概念:
a) 级别:trace、debug、info、warn、error、fatal。常用debug(调试信息,程序员临时跟踪执行,在正式运行的项目中应该不显示);warn(警告);error(错误)。
b) 特殊的级别:all(全部显示);off(全部不显示);
c) appender:可以把日志输出到控制台、文件、数据库、ftp服务器,甚至可以把日志输出到邮件、短信等。不同的输出场景就是不同的appender,可以添加多个appender,可以设定不同的级别级别使用不同的appender
d) 什么是“滚动日志”?为什么要限制日志文件的大小和个数?
2、 具体用法:
a) Install-Package Log4NET
b) 在<configuration>的<configSections>节点下新增(要在头部):<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
c) 然后在<configuration>
根节点下新增:
<log4net>
<!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->
<!-- Set root logger level to ERROR and its appenders -->
<!--哪些信息会被记录到日志中-->
<root>
<!--当前及大于都不被记录-->
<level value="DEBUG" />
<!--日志记录到哪-->
<appender-ref ref="RollingFileTracer" />
</root>
<!-- Print only messages of level DEBUG or above in the packages -->
<!--滚动日志RollingFileAppender-->
<appender name="RollingFileTracer" type="log4net.Appender.RollingFileAppender,log4net">
<!--文件路径-->
<param name="File" value="App_Data/Log/" />
<!--追加到文件吗-->
<param name="AppendToFile" value="true" />
<!--根据什么滚动-->
<param name="RollingStyle" value="Date" />
<!--最多多少个文件-->
<param name="MaxSizeRollBackups" value="10" />
<!--单个文件大小-->
<param name="MaximumFileSize" value="1MB" />
<!--生成日志文件名格式-->
<param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
</log4net>
d) App_Data下(如果是控制台项目是生成到bin\Debug下)的文件无法被浏览者下载,不希望访问者下载的文件放到这里。
e) 在程序启动的时候:log4net.Config.XmlConfigurator.Configure();。容易忘,如果发现日志文件一直没有,先想是不是忘了写这句话。
f) 记录信息:ILog logger = LogManager.GetLogger(typeof(WebForm1)); logger.Debug("aaaaaaaaaaaaaa"); logger.Error("aaaaaaaaaaaaaa"); 注意不是LoggerManager、不是ILogger
g) 还可以记录异常对象,这样异常堆栈就会记录到日志中:logger.Error("aaaaaaaaaaaaaa",ex);
3、 性能优化: logger.DebugFormat(“hello {0} {}”,"hello")等。 用{n}占位符,而不是字符串拼接,这样如果配置中不输出这个级别的时候,就不会进行字符串拼接,提升性能。
非常全的Log4Net使用教程:http://blog.csdn.net/ydm19891101/article/details/50561638
Log4Net快速配置的更多相关文章
- Log4net快速配置使用指南。(快速搭建log4net日志平台手册)
每做一个新项目,都会用到log4net,但总是忘记如何快速配置.有时在网上搜半天也找不到好的模板,大都在介绍参数的使用,在此做下总结,争取下次用时仅10分钟就可搭建好log4net. 直接上介绍的步骤 ...
- Log4net快速索引参考
官方项目地址:The Apache log4net project 本文内容仅为相关项参考,不进行具体使用讨论 另转载请注明出处 Log4net快速索引参考 Log4net主要有以下三个部件: log ...
- window系统JDK1.7的快速配置
快速配置java环境变量 右键单击计算机--->属性 点击 "高级系统设置"--->"环境变量",出现环境变量设置窗口 系统变量--->新建 ...
- Linux快速配置集群ssh互信
之前在<记录一则Linux SSH的互信配置过程>.<Vertica 7.1安装最佳实践(RHEL6.4)>中,都分别提到了配置ssh互信的方法,本文在此基础上进一步整理配置s ...
- Samba快速配置
Samba是linux,unix,windows之间进行交互操作的软件组件,Sanma是基于GPL协议的自由开源软件. 快速配置samba文件服务器 1.关闭防火墙和SELinux [root@cen ...
- 阿帕奇apache服务器和webDav服务器快速配置。
当自己在家敲代码需要发请求时,就可以配置本地apache,Mac电脑自带的服务器.这个比windows上的本地服务器还要好用,下面写下最快速配置方案. 0.在开始之前需要给自己的电脑设置下开机密码,想 ...
- LOG4NET日志配置及使用
Log4net的安装 Install-Package log4net 1.先弄个日志记录的类 /// <summary> /// 使用LOG4NET记录日志的功能,在WEB.CONFIG里 ...
- log4net的配置与使用
log4net解决的问题是在.Net下提供一个记录日志的框架,它提供了向多种目标写入的实现,比如利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括MS SQ ...
- 将Log4net的配置配置到的独立文件中
本文转载:http://blog.csdn.net/wanzhuan2010/article/details/7587780 另外一篇博客:http://grim1980.blog.sohu.com/ ...
随机推荐
- 基准测试-jmeter压力测试activeMQ之一环境安装配置
jmeter压力测试activeMQ 摘要:linux(CentOS)单机activeMQ安装.window(2008Server)Jmeter配置activeMQ包.Jmeter配置linux监控 ...
- PHP 获取文件 扩展名 的常用方法小结【五种方式】
1: function getExt1($filename) { $arr = explode('.',$filename); return array_pop($arr);; } ...
- System.Windows.Forms.WebBrowser中 处理 js 脚本 window.Open 禁止新建窗口 的方法
wb 是 拖放在窗体上的 System.Windows.Forms.WebBrowser 在你的窗体代码中定义 SHDocVw.WebBrowser_V1 wb1; 在 你窗体的 load 事件中 加 ...
- 【转】【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
原文地址:http://www.cnblogs.com/baiboy/p/orc7.html 阅读目录 目录 集群安装 参考文献 相关文章 Oracle 11G RAC集群安装(七) 概述:写下本文档 ...
- 洛谷P3807 【模板】卢卡斯定理_组合数学模板
Code: #include<cstdio> using namespace std; typedef long long LL; const int maxn=1000000+2; LL ...
- 自定义View(未完待续)
一.概述 android提供了丰富的系统控件,但在实际开发中,这些控件依然不能完全覆盖我们的需求.有时,我们需要自定义控件来满足一些个性化产品需求.自定义控件,主要有以下三种方式: 继承现有控件,对其 ...
- JSCH实现文件上传下载至sftp服务器
文件服务器采用FreeSSHd,文件服务器配置就不细说了. 直接上代码,该代码可以直接使用. import com.jcraft.jsch.*; import java.io.InputStream; ...
- 训练1-E
有二个整数,它们加起来等于某个整数,乘起来又等于另一个整数,它们到底是真还是假,也就是这种整数到底存不存在,实在有点吃不准,你能快速回答吗?看来只能通过编程. 例如: x + y = 9,x * y ...
- 汇编-理解call,ret
; 有意思的东西,主函数调用子函数用汇编来理解 assume cs:codeseg codeseg segment start: main: call sub1 ; 调用子函数1, push IP1 ...
- Fastdfs环境搭建
环境准备 使用的系统软件 名称 说明 centos 7.x libfatscommon FastDFS分离出的一些公用函数包 FastDFS FastDFS本体 fastdfs-nginx-modul ...