日志管理--log4j
来源:互联网 发布:行而知天下 编辑:程序博客网 时间:2024/05/20 22:27
使用log4j需要先导入log4j的jar包,下载地址log4j官网。首先需要新建log4j.properties的配置文件,直接放在src目录下,或者新建一个与src并列的etc文件夹。用来存放配置文件。
配置log4j.properties
log4j.appender.xing=org.apache.log4j.ConsoleAppenderlog4j.appender.xing.layout=org.apache.log4j.PatternLayoutlog4j.appender.xing.layout.ConversionPattern=[%p](%d{yyyy-MM-dd HH:mm:ss,SSS})---%l--%m\r\nlog4j.rootLogger=INFO,xing
- log4j.appender.xing=org.apache.log4j.ConsoleAppender是配置日志文件的输出地方,这里是ConsoleAppender控制台。其中xing是appender的名字,可以自己命名。
除此之外还有其他的输出目的地:
log4j.appender.xing=org.apache.log4j.ConsoleAppende 控制台输出
log4j.appender.xing=org.apache.log4j.FileAppender 文件输出
org.apache.log4j.DailyRollingFileAppender 每天产生一个日志文件 - log4j.appender.xing.layout=org.apache.log4j.PatternLayout配置日志输出布局,一般为org.apache.log4j.PatternLayout可以灵活设置输出格式,其他还有
HTMLLayout 格式化日志输出为HTML表格
SimpleLayout 以一种非常简单的方式格式化日志输出 - log4j.appender.xing.layout.ConversionPattern=[%p](%d{yyyy-MM-dd HH:mm:ss,SSS})—%l–%m\r\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}
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。 - log4j.rootLogger=INFO,xing,表示数据的级别和输出源。输出日志的级别有DEBUG、INFO、WARN、ERROR、FATAL五种,这五个级别的顺序是DEBUG、INFO、WARN、ERROR、FATAL依次增高。
它的规则:如果定义的是info则输出比info级别高的,低的将被屏蔽到不输出。
使用logger
package com.xingguo.action;import org.apache.log4j.Logger;import com.xingguo.entity.User;import com.xingguo.service.UserService;public class UserAction extends BaseAction{ private static final long serialVersionUID = 1L; private Logger log = Logger.getLogger(UserAction.class); public String loginForm(){ log.debug("logger....debug"); log.info("logger....info"); log.warn("logger....warn"); log.error("logger....error"); log.fatal("logger....fatal"); return SUCCESS; } }
输入结果如下:
[INFO](2015-07-20 14:48:03,823)---com.xingguo.action.UserAction.loginForm(UserAction.java:21)--logger....info[WARN](2015-07-20 14:48:03,825)---com.xingguo.action.UserAction.loginForm(UserAction.java:22)--logger....warn[ERROR](2015-07-20 14:48:03,825)---com.xingguo.action.UserAction.loginForm(UserAction.java:23)--logger....error[FATAL](2015-07-20 14:48:03,826)---com.xingguo.action.UserAction.loginForm(UserAction.java:24)--logger....fatal
只输出了比info级别高的日志。
以文件的形式输出
log4j.appender.lout=org.apache.log4j.FileAppenderlog4j.appender.lout.layout=org.apache.log4j.PatternLayoutlog4j.appender.lout.layout.ConversionPattern=[%p](%d)---%l--%m\r\nlog4j.appender.lout.file=C:/logs/struts2.loglog4j.rootLogger=INFO,lout,xing
一般日志输出到一个文件中,时间长了会很大。所以一般采用一天生成一个文件。
log4j.appender.lout=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.lout.layout=org.apache.log4j.PatternLayoutlog4j.appender.lout.layout.ConversionPattern=[%p](%d)---%l--%m\r\nlog4j.appender.lout.DatePattern='.'yyyy-MM-ddlog4j.appender.lout.Threshold=ERROR log4j.appender.lout.file=C:/logs/struts2.loglog4j.rootLogger=INFO,lout,xing
log4j.appender.lout.DatePattern=’.’yyyy-MM-dd为文件名的格式
log4j.appender.lout.Threshold=ERROR 级别超过error的写入文件,低级别的在控制台输出
0 0
- 日志管理系统 Log4j
- Log4j 日志管理
- 7log4j日志管理
- log4j 日志管理
- Log4j日志集中管理
- log4j 实现日志管理
- 日志管理--log4j
- log4j日志管理
- log4j日志管理
- 使用log4j管理日志
- log4j管理日志
- Log4j日志管理配置 例子
- 项目log4j日志管理详解
- Spring集成log4j日志管理
- 项目log4j日志管理详解
- Spring集成log4j日志管理
- slf4j 与log4j 日志管理
- tomcat 日志用log4j管理
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包,经典入门题)
- 将图片文件流转换成base64字符串
- 2012年5月SAT香港真题解析
- GRE写作必备句型
- sublime text2 插件 zencoding的安装及使用
- 日志管理--log4j
- POJ 1008 Maya Calendar
- backtrace&&backtrace_symbols 查找段错误 打印堆栈信息
- Aladdin and the Flying Carpet
- HDU 2032 杨辉三角
- C++ 调用字体框和调色板的代码
- Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较
- COPY 深入理解Java内存模型
- gem source更改为淘宝,bundle install时报错,如何解决?