- 浏览: 602529 次
- 性别:
- 来自: 北京
文章分类
最新评论
今天试着用了一下log4j来处理java中的日志,感觉良好,顺便记录一下log4j的配置文件log4j.properties各语句的含义。
这是一个数据库配置文件
#这是一个配置文件实例,PropertyConfigurator将使用这个文件 :
#声明一个appender变量名为JDBC
log4j.rootLogger=DEBUG, JDBC
#JDBC是一个JDBCAppender类,这个类可以写消息到数据库
log4j.appender.JDBC=com.benqguru.palau.log.jdbc.test.JDBCAppender
#1.连接数据库的数据库选项
log4j.appender.JDBC.url=jdbc:mysql://localhost:3306/logtest
log4j.appender.JDBC.username=root
log4j.appender.JDBC.password=
#2.指定你自己的JDBCConnectionHandler的连接器选项
log4j.appender.JDBC.connection_class=com.benqguru.palau.log.jdbc.test.MyConnectionHandler
#3.指定一个静态的SQL语句的SQL选项,这个语句将在每次消息事件发生时被执行
log4j.appender.JDBC.sql=INSERT INTO LOGTEST (id, msg, created_on, created_by) VALUES (1, @MSG@, sysdate, 'me')
#4. 指定数据库中一个表的表选项。
log4j.appender.JDBC.table=logtest
#5.描述表的重要列的列选项(非空列是必须被描述的)
log4j.appender.JDBC.columns=id_seq~EMPTY id~ID~MyIDHandler msg~MSG created_on~TIMESTAMP created_by~STATIC~Thomas Fenner
#6.定义消息布局器的布局器选项(可选)
log4j.appender.JDBC.layout=org.apache.log4j.PatternLayout
log4j.appender.JDBC.layout.ConversionPattern=%m
#7.定义消息事件缓冲器的大小的缓冲器选项(可选)
log4j.appender.JDBC.buffer_size=1
#8.定义自动提交的提交选项(可选)
log4j.appender.JDBC.docommit=N
##########下面是英文说明#############
#Date - %d{DATE}[slf5s.DATE]
#Priority - %p[slf5s.PRIORITY]
#NDC - %x[slf5s.NDC]
#Thread - %t[slf5s.THREAD]
#Category - %c[slf5s.CATEGORY]
#Location - %l[slf5s.LOCATION]
#Message - %m[slf5s.MESSAGE]
#
#log4j.appender.R.layout.ConversionPattern=[slf5s.start]%d{DATE}[slf5s.DATE]%n\
# %p[slf5s.PRIORITY]%n%x[slf5s.NDC]%n%t[slf5s.THREAD]%n\
# %c[slf5s.CATEGORY]%n%l[slf5s.LOCATION]%n%m[slf5s.MESSAGE]%n%n
##########下面是中文说明#############
#%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 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
这是一个普通的配置文件
#log4j会解析这个文件
log4j.debug=false
#暂时还不清楚这两个属性的作用
log4j.disableOverride=true
log4j.disable=INFO
#设置记录所有类的日志的优先级别
log4j.rootLogger=DEBUG,dest1,dest2
#设置这个包记录日志为假的话
#dist1,dist2就不会记录com.benqguru.commons.logging.test.LoggingSample的日志,只有dist3会记录.
#反之,会记录,这样就会重复记录
log4j.additivity.com.benqguru.commons.logging.test.LoggingSample=false
#特别指定某个特殊包的日志级别和目标设备
log4j.category.com.benqguru.commons.logging.test.LoggingSample=WARN, dest3
#这个目标设备用来debug
log4j.appender.dest1=org.apache.log4j.ConsoleAppender
#log4j.appender.dest1.layout=org.apache.log4j.SimpleLayout
log4j.appender.dest1.layout=org.apache.log4j.PatternLayout
#%-4r %-5p [%t] %37c %3x - %m%n
log4j.appender.dest1.layout.ConversionPattern=%d %p %c - <%m> (%F.%M:%L) %t%n
#这个目标设备用来trace
log4j.appender.dest2=org.apache.log4j.RollingFileAppender
#该文件记录日志的级别(INFO以下的级别不记录)
log4j.appender.dest2.Threshold=INFO
#文件保存路径
log4j.appender.dest2.File=c:/log4jlog.htm
#是否往文件追加信息
log4j.appender.dest2.Append=true
#设置文件最大值
log4j.appender.dest2.MaxFileSize=5KB
#设置备份文件的最大数量
log4j.appender.dest2.MaxBackupIndex=10
#使用一个html格式来记录日志
log4j.appender.dest2.layout=org.apache.log4j.HTMLLayout
#是否打印该消息的代码行
log4j.appender.dest2.layout.LocationInfo=true
#设置该日志的html的标题
log4j.appender.dest2.layout.Title=My app title
#这个目标设备用来trace指定类或包
log4j.appender.dest3=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.dest3.Threshold=DEBUG
log4j.appender.dest3.File=c:/SpecPackageLog.htm
log4j.appender.dest3.Append=false
log4j.appender.dest3.layout=org.apache.log4j.HTMLLayout
log4j.appender.dest3.layout.LocationInfo=true
log4j.appender.dest3.layout.Title=My app title
这个是转贴,我后来也没详细研究了,不好意思啊兄弟
这是一个数据库配置文件
#这是一个配置文件实例,PropertyConfigurator将使用这个文件 :
#声明一个appender变量名为JDBC
log4j.rootLogger=DEBUG, JDBC
#JDBC是一个JDBCAppender类,这个类可以写消息到数据库
log4j.appender.JDBC=com.benqguru.palau.log.jdbc.test.JDBCAppender
#1.连接数据库的数据库选项
log4j.appender.JDBC.url=jdbc:mysql://localhost:3306/logtest
log4j.appender.JDBC.username=root
log4j.appender.JDBC.password=
#2.指定你自己的JDBCConnectionHandler的连接器选项
log4j.appender.JDBC.connection_class=com.benqguru.palau.log.jdbc.test.MyConnectionHandler
#3.指定一个静态的SQL语句的SQL选项,这个语句将在每次消息事件发生时被执行
log4j.appender.JDBC.sql=INSERT INTO LOGTEST (id, msg, created_on, created_by) VALUES (1, @MSG@, sysdate, 'me')
#4. 指定数据库中一个表的表选项。
log4j.appender.JDBC.table=logtest
#5.描述表的重要列的列选项(非空列是必须被描述的)
log4j.appender.JDBC.columns=id_seq~EMPTY id~ID~MyIDHandler msg~MSG created_on~TIMESTAMP created_by~STATIC~Thomas Fenner
#6.定义消息布局器的布局器选项(可选)
log4j.appender.JDBC.layout=org.apache.log4j.PatternLayout
log4j.appender.JDBC.layout.ConversionPattern=%m
#7.定义消息事件缓冲器的大小的缓冲器选项(可选)
log4j.appender.JDBC.buffer_size=1
#8.定义自动提交的提交选项(可选)
log4j.appender.JDBC.docommit=N
##########下面是英文说明#############
#Date - %d{DATE}[slf5s.DATE]
#Priority - %p[slf5s.PRIORITY]
#NDC - %x[slf5s.NDC]
#Thread - %t[slf5s.THREAD]
#Category - %c[slf5s.CATEGORY]
#Location - %l[slf5s.LOCATION]
#Message - %m[slf5s.MESSAGE]
#
#log4j.appender.R.layout.ConversionPattern=[slf5s.start]%d{DATE}[slf5s.DATE]%n\
# %p[slf5s.PRIORITY]%n%x[slf5s.NDC]%n%t[slf5s.THREAD]%n\
# %c[slf5s.CATEGORY]%n%l[slf5s.LOCATION]%n%m[slf5s.MESSAGE]%n%n
##########下面是中文说明#############
#%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 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
这是一个普通的配置文件
#log4j会解析这个文件
log4j.debug=false
#暂时还不清楚这两个属性的作用
log4j.disableOverride=true
log4j.disable=INFO
#设置记录所有类的日志的优先级别
log4j.rootLogger=DEBUG,dest1,dest2
#设置这个包记录日志为假的话
#dist1,dist2就不会记录com.benqguru.commons.logging.test.LoggingSample的日志,只有dist3会记录.
#反之,会记录,这样就会重复记录
log4j.additivity.com.benqguru.commons.logging.test.LoggingSample=false
#特别指定某个特殊包的日志级别和目标设备
log4j.category.com.benqguru.commons.logging.test.LoggingSample=WARN, dest3
#这个目标设备用来debug
log4j.appender.dest1=org.apache.log4j.ConsoleAppender
#log4j.appender.dest1.layout=org.apache.log4j.SimpleLayout
log4j.appender.dest1.layout=org.apache.log4j.PatternLayout
#%-4r %-5p [%t] %37c %3x - %m%n
log4j.appender.dest1.layout.ConversionPattern=%d %p %c - <%m> (%F.%M:%L) %t%n
#这个目标设备用来trace
log4j.appender.dest2=org.apache.log4j.RollingFileAppender
#该文件记录日志的级别(INFO以下的级别不记录)
log4j.appender.dest2.Threshold=INFO
#文件保存路径
log4j.appender.dest2.File=c:/log4jlog.htm
#是否往文件追加信息
log4j.appender.dest2.Append=true
#设置文件最大值
log4j.appender.dest2.MaxFileSize=5KB
#设置备份文件的最大数量
log4j.appender.dest2.MaxBackupIndex=10
#使用一个html格式来记录日志
log4j.appender.dest2.layout=org.apache.log4j.HTMLLayout
#是否打印该消息的代码行
log4j.appender.dest2.layout.LocationInfo=true
#设置该日志的html的标题
log4j.appender.dest2.layout.Title=My app title
#这个目标设备用来trace指定类或包
log4j.appender.dest3=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.dest3.Threshold=DEBUG
log4j.appender.dest3.File=c:/SpecPackageLog.htm
log4j.appender.dest3.Append=false
log4j.appender.dest3.layout=org.apache.log4j.HTMLLayout
log4j.appender.dest3.layout.LocationInfo=true
log4j.appender.dest3.layout.Title=My app title
评论
2 楼
jythoner
2010-01-21
tianlongOK 写道
非常好的经验,不过我还有个问题想问问,假如我想每天生成一个新日志,如:20090613.txt,20090614.txt, 还需要加些什么呢?
这个是转贴,我后来也没详细研究了,不好意思啊兄弟
1 楼
tianlongOK
2010-01-21
非常好的经验,不过我还有个问题想问问,假如我想每天生成一个新日志,如:20090613.txt,20090614.txt, 还需要加些什么呢?
发表评论
-
一个程序员的多年珍藏(1月23日最新更新)
2010-01-15 09:16 46880程序员珍藏的东西会是什么?呵呵,除了平时写的代码,就是那些百看 ... -
一个程序员的多年珍藏(python)
2010-01-14 12:07 16890程序员珍藏的东西会是什么?呵呵,除了平时写的代码,就是那些百看 ... -
网站架构(页面静态化,图片服务器分离,负载均衡)方案全解析
2010-01-05 08:31 45791、HTML静态化其实大家 ... -
Java基础学习笔记
2009-10-31 22:23 19671.Java语言的特点:面向对象,跨平台,多线程 2.Jav ... -
定时执行任务的三种方法
2009-07-02 22:58 2047定时执行任务的三种方法: 1)java.util.Timer ... -
Java定时执行
2009-07-02 22:53 568import java.util.Timer; impo ... -
Java连接MQ
2009-07-02 17:05 780首先,创建一个mqconnect.properties文件,内 ... -
jdbc连接DB2 9.5方法
2009-07-01 11:05 462最近在写一个关于db2的sample application, ... -
13个代码注释的小技巧
2009-03-31 08:43 1832这篇文章是由José M. Agui ... -
Java Regex(Java正则表达式)
2009-03-10 13:35 4156在Sun的API中对在对 “最大匹配Greedy”“最小匹配R ... -
学习正则表达式最佳的材料
2009-03-05 14:05 1613import java.util.regex.Matcher; ... -
Java snippets02
2009-02-06 14:43 1526if (Character.isLowerCase(ch ... -
Java snippets01
2009-02-06 13:28 1729for (int i = 0; i < number. ... -
双色球算号器
2009-02-06 12:29 9528我是个彩民,特别喜欢买双色球。最近看了几种算法,写了一个很简单 ... -
关于用Java I/O 复制文件的问题
2009-02-05 17:12 3045今天遇到了一个极其郁闷的问题,想写一段代码,可以给window ... -
Java util之常用数据类型特性盘点
2009-02-02 12:43 1236java.util就相当于c++的STL ... -
一些常用的正则表达式
2009-02-02 12:34 1215正则表达式是一种通用 ... -
编程经典问题
2009-01-21 16:43 4726【程序1】 题目:古典 ... -
Java中格式化输出数字
2009-01-20 12:15 6296在实际工作中,常常需要设定数字的输出格式,如以百分比的形式输出 ... -
右键运行jar文件的方法
2009-01-08 12:11 9100经常需要运行一些打成jar文件格式的Java程序,每次都需要切 ...
相关推荐
log4j配置文件基本含义说明
本文主要解释log4j的配置文件各个配置项的含义。
以下小编主要为大家介绍一下log4j的配置文件各个配置项的含义。需要的朋友可以过来参考下
在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义。定义步骤就是对Logger、Appender及Layout的分别使用,具体如下: 1、 配置根Logger,其语法为: log4j.rootLogger = [ level ] , ...
1. jpivot加入其它应用中 解压jpivot.war 文件,在你的应用...在一个 JSP 页面当中,如果要使用 JPivot 标签库,除了要配置相关的配置文件外,我们需要在 JSP 头的位置声明对 JPivot 标签库的引用,引用方法如下: ...
在 CLASSPATH 中新建log4j.properties 配置文件,内容如下: log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...
5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chapter/(第 4/24 页)2006-11-02 19:12:...
系统触发器主要是DML事件和系统事件发生时调用的触发器,其中DML事件包括CREATE、DROP、ALTER等,系统事件包括LOGON、LOGOFF、STARTUP、SHUTDOWN、SERVERERROR等。 9.简述Oracle数据库角色的种类、作用,以及如何...
MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. ...
HTC HTC HTC HTC Dream/G1 Dream/G1 Dream/G1 Dream/G1 具体配置 硬件 3.17 英寸 HVGA (480 x 320) ; 1150mAh 电池 ;高通 528Mhz 7201 处理器 ; 64MB RAM 、 128MB ROM ; 1GB MicroSD 卡 ; QWERTY 全键盘; 310...
3.10. 配置文件语法............................................................................................ 26 3.10.1. 标记名大小写敏感性 ..............................................................