学习笔记:log4j.properties配置
示例:
1 log4j.debug=true 2 log4j.rootLogger=DEBUG,stdout,D //所有输出都会用到这里的appedder 3 log4j.logger.com.test.server=DEBUG,E //为特定的的包指定输出 4 //output log to console 5 log4j.appender.stdout=org.apache.log4j.ConsoleAppender 6 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 7 log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n 8 9 log4j.appender.E = org.apache.log4j.DailyRollingFileAppender 10 log4j.appender.E.File = logs/logs.log 11 log4j.appender.E.Append = true 12 log4j.appender.E.Threshold = DEBUG 13 log4j.appender.E.layout = org.apache.log4j.PatternLayout 14 log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n 15 16 log4j.appender.D = org.apache.log4j.DailyRollingFileAppender 17 log4j.appender.D.File = logs/error.log 18 log4j.appender.D.Append = true 19 log4j.appender.D.Threshold = ERROR 20 log4j.appender.D.layout = org.apache.log4j.PatternLayout 21 log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.properties的配置参数
1. 基本格式如下:
#配置根Logger log4j.rootLogger = [ level ] , appenderName1 , appenderName2 , …#配置日志信息输出目的地Appender log4j.appender.appenderName = fully.qualified.name.of.appender.class log4j.appender.appenderName.option1 = value1 … log4j.appender.appenderName.optionN = valueN #配置日志信息的格式(布局) log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class log4j.appender.appenderName.layout.option1 = value1 … log4j.appender.appenderName.layout.optionN = valueN
其中 [ level ]日志输出级别共有五级
- FATAL 0
- ERROR 3
- WARN 4
- INFO 6
- DEBUG 7
Appender 为日志输出目的地,Log4j提供的appender有以下几种:
- org.apache.log4j.ConsoleAppender(控制台),
- org.apache.log4j.FileAppender(文件),
- org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
- org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
- org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
Layout:日志输出格式,Log4j提供的layout有以下几种:
- org.apache.log4j.HTMLLayout(以HTML表格形式布局),
- org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
- org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
- org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
打印参数: Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,如下:
- %m 输出代码中指定的消息%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
- %r 输出自应用启动到输出该log信息耗费的毫秒数
- %c 输出所属的类目,通常就是所在类的全名
- %t 输出产生该日志事件的线程名
- %n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
- %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss , SSS},输出类似:2002年10月18日 22 : 10 : 28 , 921
- %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:test.main(test.java: 10 )
2.参数意义说明
输出级别的种类
- ERROR 为严重错误 主要是程序的错误
- WARN 为一般警告,比如session丢失
- INFO 为一般要显示的信息,比如登录登出
- DEBUG 为程序的调试信息
配置日志信息输出目的地
- log4j.appender.appenderName=??
- 1.org.apache.log4j.ConsoleAppender(控制台)
- 2.org.apache.log4j.FileAppender(文件)
- 3.org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
- 4.org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
- 5.org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
配置日志信息的格式
- log4j.appender.appenderName.layout = ??
- 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局),
- 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
- 3.org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
- 4.org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
ConsoleAppender选项
- Threshold=DEBUG:指定日志消息的输出最低层次。
- ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
- Target=System.err:默认情况下是:System.out,指定输出控制台
FileAppender 选项
- Threshold=DEBUF:指定日志消息的输出最低层次。
- ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
- File=mylog.txt:指定消息输出到mylog.txt文件。
- Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
RollingFileAppender 选项
- Threshold=DEBUG:指定日志消息的输出最低层次。
- ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
- File=mylog.txt:指定消息输出到mylog.txt文件。
- Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
- MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。
- MaxBackupIndex=2:指定可以产生的滚动文件的最大数。
日志信息格式中几个符号所代表的含义:
- -X号: X信息输出时左对齐;
- %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL,
- %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
- %r: 输出自应用启动到输出该log信息耗费的毫秒数
- %c: 输出日志信息所属的类目,通常就是所在类的全名
- %t: 输出产生该日志事件的线程名
- %l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main (TestLog4.java:10)
- %x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。
- %%: 输出一个"%"字符
- %F: 输出日志消息产生时所在的文件名称
- %L: 输出代码中的行号
- %m: 输出代码中指定的消息,产生的日志具体信息
- %n: 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"输出日志信息换行
转载于:https://www.cnblogs.com/lihezx/archive/2012/10/29/note-log4j-properties-configuration.html
学习笔记:log4j.properties配置相关推荐
- Log4j介绍,log4j.properties配置详解
http://www.cnblogs.com/simle/archive/2011/09/29/2195341.html本文主要解释log4j的配置文件各个配置项的含义,内容是从网上转载的 1.Log ...
- TMS320F280049C 学习笔记19 可配置逻辑块 (CLB) 软件配置
文章目录 CLB tool 简介 CLB配置过程概述 软件安装 GNU Compiler Install the Simulation Viewer 使用CLB tool 导入空CLB工程 更新变量路 ...
- openCV2学习笔记---1.环境配置
openCV2学习笔记-1.环境配置 openCV 是开源的计算机视觉代码库,可以运行在Linux.Windows和Mac OS操作系统上.它轻量级而且高效--由一系列 C 函数和少量 C++ 类构成 ...
- java log4配置例子,log4j.properties配置属性详解与配置示例
log4j.properties配置属性详解与配置示例 发布时间:2018-03-27作者:laosun阅读(1535) log4j.properties配置属性详解与配置示例,拿走直接用!详细解答了 ...
- LINUX学习笔记1 网卡配置(网络适配器安装失败问题解决)
LINUX学习笔记1 网卡配置(网络适配器安装失败问题解决) 概述 每一次选修课总会碰到一堆问题,我真的是幸运得很.这次是LINUX服务器管理这门课,最开始安装虚拟机一切正常(用的是VMware安装u ...
- MVC缓存OutPutCache学习笔记 (一) 参数配置
OutPutCache 参数详解 Duration : 缓存时间,以秒为单位,这个除非你的Location=None,可以不添加此属性,其余时候都是必须的. Location : 缓存放置的位置; 该 ...
- 转 Log4j.properties配置详解
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- Log4j.properties 配置详解
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- log4j日志文件 log4j.xml log4j.properties配置
1,导入log4j jar包; 2,配置log4j.xml或log4j.properties文件; ------------------------------------------------- ...
最新文章
- 【原】自定义UINavigationItem的两种方法以及相应的隐藏方法
- python语法实例_python基本语法练习实例
- java简易计算器考察什么_练习:用java写一个简易计算器
- HTML5常用标签及特殊字符表
- ATL(COM) 开发下 -- VS2010
- 前魅族李楠创办“怒喵科技”,网友:看半天不知道公司干嘛的
- 使用 Gitolite 搭建 Git 服务器
- 异数OS 星星之火(三)--异数OS-织梦师云 微服务编写入门
- 常识——多台电脑共用一套键鼠
- 关于计算机英语手抄报全国一等奖,获奖手抄报图片
- D碳社区周报:上海市:推进崇明世界级生态岛碳中和示范区建设,院士专家在论坛上提出建议
- fcpx插件:FilmConvert Pro for Mac(数字转胶片调色插件)
- bag java_Bag.java · linbo/Bag_Queue_Stack_Java - Gitee.com
- NLP自然语言处理实战(一):利用分词器构建词汇表
- js下载Word文档
- 用USART来替代SPI,效果非常不错
- 图书管理系统 (单链表实现,C++及文件操作,超详细)
- 神州数码交换机CS6200命令(一)
- 迁移学习在乳腺癌检测中的应用
- python内置函数getattr()和setattr()
热门文章
- 下载的java游戏怎么运行不了_java运行环境下载
- js实现modbus_nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据
- yy自动语音接待机器人_人脸签到、发言记录,会议机器人来啦
- 内连接查询的重点分析
- 电脑中毒的表现有哪些?电脑中毒了怎么办?
- 最幸福的码农在用什么编程语言?
- 8种你可能正在写错的SQL用法
- linux看缺省的编译器,修改Linux系统默认编辑器
- sap实施和开发哪个前景_2021年了!还不知道 SAP顾问的职业前景?
- Docker-compose 常用命令及网络设置(五)