Log4net(1):配置的简单说明
基础代码下载地址:https://github.com/zhangsai521314/StudyLog4net
1:按日期分隔日志
<configSections>
<section name="log4net"type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net>
<logger name="StudyLog4net">
<!--指定Log4.net第三个参数为StudyLog4net的则会执行StudyLog4netAppen下的配置-->
<appender-ref ref="StudyLog4net_File" />
</logger>
<!--按日期分割日志文件 一天一个-->
<appender name=" StudyLog4net_File" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="log\ StudyLog4net_File\ StudyLog4net_File.log"/>
<param name="AppendToFile" value="true"/>
<param name="RollingStyle" value="Date"/>
<param name="DatePattern" value="yyyy.MM.dd"/>
<param name="StaticLogFileName" value="true"/>
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p - %m%n"/>
</layout>
</appender>
<root>
<level value="All" />
<appender-ref ref="rollingFile"/>
</root>
</log4net>
说明: File——文件存放路径
AppendToFile—— 是否打开续写
RollingStyle——文件创建的方式
DatePattern——日期格式,当我们设置了RollingStyle 为Date方式后,Log4Net会自动使用DatePattern—— 中的日期格式来创建新的日志文件
StaticLogFileName——是否使用静态文件名
ConversionPattern——信息书写的布局样式设置
Level——日志记录的类型
rollingFile—
2:按日志大小分隔日志
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net>
<logger name="StudyLog4net2">
<!--指定Log4.net第三个参数为StudyLog4net的则会执行StudyLog4net下的配置-->
<appender-ref ref="StudyLog4net_Size" />
</logger>
<!--按日志容量分割日志文件-->
<appender name="StudyLog4net_Size" type="log4net.Appender.RollingFileAppender" >
<param name="File" value="Log\StudyLog4net_Size\StudyLog4net_Size.log" />
<!--是否续写-->
<param name="AppendToFile" value="true" />
<!--是否使用静态文件名-->
<param name="StaticLogFileName" value="false" />
<!--按照文件的大小进行变换日志文件-->
<param name="RollingStyle" value="Size" />
<!--单个文件最大容量 只有在 按Size分割时有效-->
<param name="MaximumFileSize" value="10KB"/>
<!--保留的log文件数量,超过此数量后,自动从最后的删除,按Size分割时有效-->
<param name="MaxSizeRollBackups" value="2" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="发生时间:%d %n事件级别:%level %n相关类名:%c%n程序文件:%F 第%L行%n日志内容:%m%n-----------------------------------------%n" />
</layout>
</appender>
<root>
<!--日志记录的类型-->
<level value="All" />
<!--启用按容量分割-->
<appender-ref ref="LogFileAppenderBySize" />
</root>
</log4net>
3:将日志输出到数据库(SqlServer)
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net> <!--当时把日志插入到数据库的时候,必须有appender-ref。否则插不进去-->
<logger name="sourec">
<appender-ref ref="ADONetAppender" />
</logger>
<!--SQL数据库-->
<appender name="ADONetAppender" type="log4net.Appender.ADONetAppender"> <!--缓存区,值为1的时候并发插入的日志信息最完整-->
<bufferSize value="1"/> <!-- SQL数据源-->
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/> <!-- SQL连接字符串-->
<connectionString value="data source=.;initial catalog=zhangsai;integrated security=False;persist security info=True;User ID=sa;Password=123456" /> <!--SQLServer插入语句-->
<commandText value="INSERT INTO Log ([RecordTime],[LevelName],[Message],[Exception]) VALUES (@log_date, @log_level, @message, @exception)"/>
<!--SQLServer创建数据库语句
create table Log
(
[ID] int identity(1,1) primary key
,[RecordTime] datetime
,[LevelName] varchar(30)
,[Message] varchar(2000)
,[Exception] varchar(4000)
)-->
<!--日期-->
<parameter>
<parameterName value="@log_date"/>
<dbType value="DateTime"/>
<layout type="log4net.Layout.RawTimeStampLayout"/>
</parameter>
<!--日志级别-->
<parameter>
<parameterName value="@log_level"/>
<dbType value="String"/>
<size value="50"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level"/>
</layout>
</parameter>
<!--错误信息-->
<parameter>
<parameterName value="@exception"/>
<dbType value="String"/>
<size value="2000"/>
<layout type="log4net.Layout.ExceptionLayout"/>
</parameter>
<!--日志信息-->
<parameter>
<parameterName value="@message"/>
<dbType value="String"/>
<size value="4000"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message"/>
</layout>
</parameter>
</appender>
<root>
<!--日志记录的类型-->
<level value="All" />
<!-- 启用保存到数据库-->
<appender-ref ref="AdoNetAppender" />
</root>
</log4net>
4:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net>
<logger name="ConsoleAppender">
<!--指定Log4.net第三个参数为StudyLog4net的则会执行ConsoleAppender下的配置-->
<appender-ref ref="ConsoleAppender" />
</logger>
<!--定义输出到控制台命令行中-->
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d [%t] %-5p - %m%n" />
</layout>
</appender>
<root>
<!--日志记录的类型-->
<level value="All" />
<!--控制台控制显示日志-->
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>
常见的日志书写格式说明:
%m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息
%n(new line):换行
%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称
%L:输出语句所在的行号
%F:输出语句所在的文件名
%-数字:表示该项的最小长度,如果不够,则用空格填充
Appender下的常用节点说明:
AdoNetAppender:利用ADO.NET记录到数据库的日志。
RollingFileAppender:将日志以回滚文件的形式写到文件中
ConsoleAppender:将日志输出到控制台。
FileAppender:将日志写到文件中。
AnsiColorTerminalAppender:在ANSI 窗口终端写下高亮度的日志事件。
AspNetTraceAppender:能用asp.net中Trace的方式查看记录的日志。
BufferingForwardingAppender:在输出到子Appenders之前先缓存日志事件。
EventLogAppender:将日志写到Windows Event Log.
LocalSyslogAppender:将日志写到local syslog service (仅用于UNIX环境下).
MemoryAppender:将日志存到内存缓冲区。
NetSendAppender:将日志输出到Windows Messenger service.这些日志信息将在用户终端的对话框中显示。
RemoteSyslogAppender:通过UDP网络协议将日志写到Remote syslog service。
RemotingAppender:通过.NET Remoting将日志写到远程接收端。。
SmtpAppender:将日志写到邮件中。
TraceAppender:将日志写到.NET trace 系统。
UdpAppender:将日志connectionless UDP datagrams的形式送到远程宿主或以UdpClient的形式广播。
写文不易,转载请注明出处:http://www.cnblogs.com/zszs/p/5662603.html
Log4net(1):配置的简单说明的更多相关文章
- log4net日志的配置及简单应用
在程序运行中,往往会出现各种出乎开发人员意料的异常或者错误,所以,记录详细的程序运行日志信息,有利于开发人员和运维人员排查异常信息,提高工作效率.而本菜鸟在大神推荐和指导下使用log4net这一插件工 ...
- C# 日志输出工具库—log4net 安装、配置及简单应用
1.下载和安装 注意每次安装只是安装到本项目中,换了另一个项目需要再次安装和配置. 我使用的是Visual Studio 2013 社区版,在tools中找到NuGet包管理. 搜索log4net并点 ...
- C# log4net 的配置
项目的日志组件是必备可少的,任何项目中都需要.这样既方便前期的开发测试也方便项目后期的项目维护.C#项目的一个不错的日志组件是log4net,下面我就把桌面应用程序.控制台程序.网站中log4net的 ...
- 使用Log4net创建日志及简单扩展
如何使用Log4net创建日志及简单扩展 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的 ...
- Log4Net.Config配置信息《转》
看了log4net的简单使用之一_log4net介绍 大家对log4net组件应该有了大概的了解,下面再近一步介绍其在项目中如何应用. 1.Logger 所有的记录器都必须实现 ILog 接口,该接口 ...
- log4net 配置文件配置方法
转自:http://www.dozer.cc/2013/06/log4net-config-file-order/ 最近把项目中所有的日志都改成了 log4net ,同事也蠢蠢欲动,用起了 log4n ...
- Win8.1下FreeImage.lib库的配置和简单使用(转)
转自http://www.codeweblog.com/win8-1下freeimage-lib库的配置和简单使用/ 首先,你可以从这里获取FreeImage的完整库文件(访问密码 9a5e). 配置 ...
- LOG4NET日志配置及使用
Log4net的安装 Install-Package log4net 1.先弄个日志记录的类 /// <summary> /// 使用LOG4NET记录日志的功能,在WEB.CONFIG里 ...
- log4net的配置与使用
log4net解决的问题是在.Net下提供一个记录日志的框架,它提供了向多种目标写入的实现,比如利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括MS SQ ...
随机推荐
- 模拟jQuery简单封装ajax
/*模拟jQuery的写法 (简单写法)*/ var $={}; /*ajax*/ $.ajax = function (options) { /* * 请求 * 1.请求接口 type get po ...
- Android moveTaskToBack(booleannon Root)
moveTaskToBack (booleannon Root)方法:在activity中调用此方法即可将activity 退到后台,注意不是finish()退出. 参数说明: 参数为false--代 ...
- Python爬虫学习
lxml相关 http://blog.csdn.net/kl28978113/article/details/52241678 lxml安装 http://www.lfd.uci.edu/~gohl ...
- Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)
Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...
- PHP 使用编码树,生成easyui中的tree样式
生成树的时候,数据库中一般设计的都为无级数,即为:父子节点的树,例如:基本的数据表设计为: nodecode 节点编码 parentnodecode 父节点编码 nodename 节点名称 这样的形 ...
- Java Garbage Collection基础详解------Java 垃圾回收机制技术详解
最近还是在找工作,在面试某移动互联网公司之前认为自己对Java的GC机制已经相当了解,其他面试官问的时候也不存在问题,直到那天该公司一个做搜索的面试官问了我GC的问题,具体就是:老年代使用的是哪中垃圾 ...
- Centos搭建Python+Nginx+Tornado+Mysql环境[转载]
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入 ...
- Qt qml 单例模式
Qt qml 单例模式,没什么好说的,看代码吧.单例模式很适合做全局的配置文件. [示例下载] http://download.csdn.net/detail/surfsky/8539313 [以下是 ...
- jquery autocomplete
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="http: ...
- Oracle Grid Infrastructure安装部署文档
1. 部署环境步骤 1.1 软件环境 操作系统: CentOS release 6.5 oracle安装包: linux.x64_11gR2_grid.zip linux.x64_11gR2_data ...