Log日志文件格式说明
1 <log4net> 2 <root> 3 <!--控制级别,由低到高: ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF--> 4 <!--如果定义级别为INFO,则INFO级别向下的级别,例如DEBUG日志将不会被记录--> 5 <!--如果没有定义LEVEL的值,则缺省为DEBUG--> 6 <level value="ALL" /> 7 <appender-ref ref="LogFileAppender"/> 8 <level value="FATAL"/> 9 <appender-ref ref="CutOffAppender" /> 10 </root> 11 <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> 12 <param name="File" value="Log\\main.log" /> 13 <param name="AppendToFile" value="true" /> 14 <layout type="log4net.Layout.PatternLayout"> 15 <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %u %c %l %m %n" /> 16 </layout> 17 </appender> 18 <!--输出到回滚文件,FileAppender为单一文件--> 19 <appender name="CutOffAppender" type="log4net.Appender.RollingFileAppender"> 20 <!--日志文件名--> 21 <param name="File" value="Log\\CutOff\\" /> 22 <!--是否在文件中追加--> 23 <param name="AppendToFile" value="true" /> 24 <!--最大变换数量--> 25 <param name="maxSizeRollBackups" value="100" /> 26 <!--日期格式--> 27 <DatePattern value="yyyy\\yyyyMM\\yyyyMMdd".log"" /> 28 <!--变换的形式为日期--> 29 <rollingStyle value="Date" /> 30 <staticLogFileName value="false" /> 31 <!--是否立即输出到文件--> 32 <param name="ImmediateFlush" value="true" /> 33 <layout type="log4net.Layout.PatternLayout"> 34 <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %u %c %l %m %n" /> 35 </layout> 36 <!--根据级别过滤,但没有生效,可能是我用的是Log4NetConfigurationSectionHandler--> 37 <filter type="log4net.Filter.LevelMatchFilter"> 38 <param name="LevelToMatch" value="FATAL" /> 39 </filter> 40 </appender> 41 </log4net>
一。Appender(引用自:https://blog.csdn.net/binnygoal/article/details/79557746)
已经实现的输出方式有:AdoNetAppender 将日志记录到数据库中。可以采用SQL和存储过程两种方式。AnsiColorTerminalAppender 将日志高亮输出到ANSI终端。AspNetTraceAppender 能用asp.net中Trace的方式查看记录的日志。BufferingForwardingAppender 在输出到子Appenders之前先缓存日志事件。ConsoleAppender 将日志输出到应用程序控制台。EventLogAppender 将日志写到Windows Event Log。FileAppender 将日志输出到文件。ForwardingAppender 发送日志事件到子Appenders。LocalSyslogAppender 将日志写到local syslog service (仅用于UNIX环境下)。MemoryAppender 将日志存到内存缓冲区。NetSendAppender 将日志输出到Windows Messenger service.这些日志信息将在用户终端的对话框中显示。OutputDebugStringAppender 将日志输出到Debuger,如果程序没有Debuger,就输出到系统Debuger。如果系统Debuger也不可用,将忽略消息。RemoteSyslogAppender 通过UDP网络协议将日志写到Remote syslog service。RemotingAppender 通过.NET Remoting将日志写到远程接收端。RollingFileAppender 将日志以回滚文件的形式写到文件中。SmtpAppender 将日志写到邮件中。SmtpPickupDirAppender 将消息以文件的方式放入一个目录中,像IIS SMTP agent这样的SMTP代理就可以阅读或发送它们。TelnetAppender 客户端通过Telnet来接受日志事件。TraceAppender 将日志写到.NET trace 系统。UdpAppender 将日志以无连接UDP数据报的形式送到远程宿主或用UdpClient的形式广播。
二.过滤器
引用自:https://blog.csdn.net/xincai/article/details/7696916
log4net里面的filter类常用的为: 1、DenyAllFilter 拒绝所用的日志输出 <filter type="log4net.Filter.LevelMatchFilter"> <param name="LevelToMatch" value="DEBUG" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> 上面的配置是如果日志的输出级别不符合DEBUG要求的话,则不输出任何日志。 2、LevelMatchFilter 这个类里面有两个属性,一个是LevelToMatch这个属性是你要匹配输出日志的级别,比如: <filter type="log4net.Filter.LevelMatchFilter"> <param name="LevelToMatch" value="DEBUG" /> </filter> 这样的话,只有级别是DEBUG的日志才能输出。 另外这个类还有一个重要的属性就是AcceptOnMatch这个属性是设置如果这个条件匹配的话,是否接受输出打印,比如说: <filter type="log4net.Filter.LevelMatchFilter"> <param name="LevelToMatch" value="DEBUG" /> </filter> <filter type="log4net.Filter.StringMatchFilter"> <param name="StringToMatch" value="debug" /> </filter> 如果日志的级别为DEBVG的话,也就是说符合了第一个Filter的条件,日志就输出,则StringMatchFilter就不执行了。如果这样写的话,就会继续向下执行过滤: <filter type="log4net.Filter.LevelMatchFilter"> <param name="LevelToMatch" value="DEBUG" /> <AcceptOnMatch value="false"></AcceptOnMatch> </filter> <filter type="log4net.Filter.StringMatchFilter"> <param name="StringToMatch" value="debug" /> </filter> 如果这样写的话,即使第一个Filter符合了条件则第二个Filter也会继续执行。 3、LevelRangeFilter 配置文件是这样的: <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="DEBUG" /> <param name="LevelMax" value="ERROR" /> </filter> 4、LoggerMatchFilter 配置文件是这样的: <filter type="log4net.Filter.LoggerMatchFilter"> <param name="LoggerToMatch" value="Client" /> </filter> 5、StringMatchFilter 配置文件是这样的: <filter type="log4net.Filter.StringMatchFilter"> <param name="StringToMatch" value="/blog/Client.Program" /> </filter>
三.等级说明
在具体写日志时,一般可以这样理解日志等级:
FATAL(致命错误):记录系统中出现的能使用系统完全失去功能,服务停止,系统崩溃等使系统无法继续运行下去的错误。例如,数据库无法连接,系统出现死循环。
ERROR(一般错误):记录系统中出现的导致系统不稳定,部分功能出现混乱或部分功能失效一类的错误。例如,数据字段为空,数据操作不可完成,操作出现异常等。
WARN(警告):记录系统中不影响系统继续运行,但不符合系统运行正常条件,有可能引起系统错误的信息。例如,记录内容为空,数据内容不正确等。
INFO(一般信息):记录系统运行中应该让用户知道的基本信息。例如,服务开始运行,功能已经开户等。
DEBUG (调试信息):记录系统用于调试的一切信息,内容或者是一些关键数据内容的输出。
非常完善的Log4net详细说明:https://blog.csdn.net/binnygoal/article/details/79557746大神写的贼全
转载于:https://www.cnblogs.com/ChenhaonanFamily/p/10209857.html
Log日志文件格式说明相关推荐
- golang log日志
写入日志文件 func main() {file, err := os.Create("test.log")if err != nil {log.Fatalln("fai ...
- 自动化测试如何生成log日志
大家好,最近在学习自动化测试如何去打印log日志,首先我要知道为什么要去打印log日志? 答:使用通俗易懂的话表达就是因为在测试的过程中,如果某条测试用例没有执行通过,出现了bug,有了日志的记录就可 ...
- loguru log 日志的使用
loguru log 日志的使用 # pip install loguru from loguru import logger # 创建out.log文件 logger.add("out.l ...
- linux日志手机,通过 shell 脚本 自动发送 log日志 文件内容 到手机邮箱
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 需要用到 mail 命令 如果你的系统中没有安装需要执行 (yum install -y mail sendmail) 安装 sendmail 是因为需要 ...
- python log函数怎么打_Python的log日志功能及设置方法
python log函数怎么打_Python的log日志功能及设置方法_Elaine要当律师的博客-CSDN博客
- linux日志生成速率统计,Linux学习29-awk提取log日志信息,统计日志里面ip访问次数排序...
前言 有一段log日志,需从日志里面分析,统计IP访问次数排序前10名,查看是否有异常攻击. 日志提取 如下日志,这段日志包含的信息内容较多,我们希望提取ip,访问时间,请求方式,访问路径(不带参数) ...
- tomcat的log日志乱码解决方案
tomcat的log日志乱码解决方案 参考文章: (1)tomcat的log日志乱码解决方案 (2)https://www.cnblogs.com/q1359720840/p/10431989.htm ...
- oracle11gRAC之log日志体系
oracle11gRAC之log日志体系: 1.CRS日志(grid): 首选查看alertlog: $CRS_HOME/grid/log/hostname/alertdbserver1.log Cl ...
- svn update -r m path 代码还原到某个版本(这样之前的log日志也就没了,也就是清空log日志)...
[root@ok 资料库]# svn log 简历 ------------------------------------------------------------------------ r ...
最新文章
- WSL windows子系统开启ssh-server服务
- 为什么应该安装使用 Arch Linux
- Linux之SELinux的基本应用
- Android 数据存储与IO (一)
- python学习之老男孩python全栈第九期_day004知识点总结
- ML之HierarchicalClustering:自定义HierarchicalClustering层次聚类算法
- 【数据竞赛】图像赛排行榜拉开100名差距的技巧
- mysql limit耗时过长
- 把combobox控件添加到datagridview控件中_自定义系列:控件属性添加
- 字节字符区别Java_【JAVA基础】字符数组与字节数组的区别
- java开发岗位招聘,吊打面试官
- java将字节数组转换成字符串,面试心得体会
- 再见!经典版Edge!
- linux 重新安装内核,升级操作系统内核(不重新安装UltraPath)
- Jquery多选框互相内容交换
- 【网络通信 -- 直播】ZLMediaServer -- 环境搭建与测试
- 设置Chrome为兼容模式
- 思科isis路由的优先级_通过改变 EIGRP 度量值设置优先路由
- HEX编码、Base64编码
- ftp下出现“当前的安全设置不允许从该位置下载文件”提示
热门文章
- 查看计算机bios版本,Win10系统下查看电脑主板BIOS版本的方法
- amazon - amzreport 之 amazon report list
- java控制电脑双屏模式_win10电脑双屏幕设置方法 双屏双桌面的设置步骤
- 在zotero中利用better bibtex产生google scholar相同的citation key
- html使用表格实现网页制作
- 利用PPT删除图片背景(PPT图片删除背景)
- 市场因子(Market Factor)——投资组合分析(EAP.portfolio_analysis)
- java沉浸状态栏代码,Ionic实现沉浸式状态栏,状态栏与APP融为一体
- 最大公约数和最小公倍数,你知道有几种求法吗?
- sql里面如何将年月日时分秒的格式转换成年月日