Log4j的简单使用
2012-03-22 22:40
281 查看
1.本地工程
使用代码加载log4j的配置文件
使用log4j
2.普通Web工程
在使用servlet或Listener在应用启动的时候使用代码加载log4j的配置文件,比如listenner,在web.xml注册listenner
实现自己的listenner
3.集成spring的web工程,在web.xml中注册 spring的Log4jConfigListener,并传入log4j配置文件位置
4.log4j.properties的简单说明
使用代码加载log4j的配置文件
PropertyConfigurator.configure("log4j.properties");
使用log4j
Logger logger = Logger.getLogger(this.getClass()); logger.info("start up...");
2.普通Web工程
在使用servlet或Listener在应用启动的时候使用代码加载log4j的配置文件,比如listenner,在web.xml注册listenner
<listener> <listener-class>com.ws.commons.core.Startup</listener-class> </listener> <context-param> <param-name>log4j</param-name> <param-value>/WEB-INF/config/applicationContext.xml</param-value> </context-param>
实现自己的listenner
package com.ws.commons.core; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; public class Startup implements ServletContextListener { Logger logger = Logger.getLogger(this.getClass()); public Startup() { } public void contextInitialized(ServletContextEvent arg0) { String rootPath=arg0.getServletContext().getRealPath("/"); PropertyConfigurator.configure(rootPath+arg0.getServletContext().getInitParameter("log4j")); logger.info("Begin start up..."); } public void contextDestroyed(ServletContextEvent arg0) { } }
3.集成spring的web工程,在web.xml中注册 spring的Log4jConfigListener,并传入log4j配置文件位置
<listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>WEB-INF/config/log4j.properties</param-value> </context-param>
4.log4j.properties的简单说明
### 定义了使用ConsoleAppender(控制台) 的 名为 stout的 日志输出方式 ### log4j.appender.stdout=org.apache.log4j.ConsoleAppender###即 控制台 log4j.appender.stdout.Target=System.out###还可使用 System.err log4j.appender.stdout.Threshold=ALL#stout的输出级别 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout#使用的日志布局 log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %5p %c:%L - %m%n#格式化
#-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)的组合,包括类目名、发生的线程,以及行数
#%x: 输出和当前线程相关联的 NDC %%: 输出一个"%"字符
#%F: 输出日志消息产生时所在的文件名称
#%L: 输出代码中的行号
#%m: 输出代码中指定的消息,产生的日志具体信息
#%n: 输出一个回车换行符 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式 ### 定义了使用FileAppender(文件)的 名为 file的 日志输出方式 ### log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=log4js.log###日志输出的文件位置 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
###Appenders #org.apache.log4j.ConsoleAppender #org.apache.log4j.FileAppender #org.apache.log4j.DailyRollingFileAppender #按一定的频度滚动日志记录文件 #org.apache.log4j.RollingFileAppender#按一定的文件大小滚动记录日志文件 #org.apache.log4j.WriterAppender ###Layouts #org.apache.log4j.HTMLLayout #org.apache.log4j.PatternLayout #org.apache.log4j.SimpleLayout #org.apache.log4j.TTCCLayout ### set log levels - for more verbose logging change 'info' to 'debug' ### #ALL < DEBUG < INFO <WARN < ERROR < FATAL < OFF log4j.rootLogger=ALL,stdout,file ##定义root的日志输出级别,以及采用的 已经定义好的输出方式
#可以分别指定具体包或类的日志输出级别 #log4j.logger.org.apache.struts2=off #log4j.logger.org.springframework=warn #log4j.logger.com.opensymphony.xwork2=warn #log4j.logger.com.maneater=off #log4j.logger.org.hibernate=info #log4j.logger.org.hibernate=debug ### log HQL query parser activity #log4j.logger.org.hibernate.hql.ast.AST=debug ### log just the SQL #log4j.logger.org.hibernate.SQL=debug ### log JDBC bind parameters ### #log4j.logger.org.hibernate.type=info #log4j.logger.org.hibernate.type=debug ### log schema export/update ### #log4j.logger.org.hibernate.tool.hbm2ddl=debug ### log HQL parse trees #log4j.logger.org.hibernate.hql=debug ### log cache activity ### #log4j.logger.org.hibernate.cache=debug ### log transaction activity #log4j.logger.org.hibernate.transaction=debug ### log JDBC resource acquisition #log4j.logger.org.hibernate.jdbc=debug ### enable the following line if you want to track down connection ### ### leakages when using DriverManagerConnectionProvider ### #log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
相关文章推荐
- log4j的简单使用
- Log4j简单使用方法
- Log4j日志管理系统简单使用说明
- log4j简单使用
- log4j日志管理系统简单使用说明 - open java project(转载)
- J2EE基础篇 对Log4J使用方法的简单讲解
- Spring 配置log4j和简单介绍Log4J的使用
- log4j简单使用
- Log4j日志管理系统简单使用说明
- Spring 配置log4j和简单介绍Log4J的使用
- Log4j配置使用的简单教程
- Log4j日志管理系统简单使用说明
- 学会简单使用log4j
- log4j简单使用说明
- log4j日志两种简单的使用方式
- LOG4J简单使用 生成日志
- Log4j的简单配置使用!
- Log4j 2.0在开发中的高级使用具体解释—配置简单的控制台输出(三)
- log4J简单的使用步骤
- Log4j日志管理系统简单使用说明