日志管理

在项目开发中,通常需要记录系统的运行日志,从而观察系统是否正常运行,如果有问题便可通过日志快速、准确定位原因并修复。

目前本人在项目中应用的是log4j这个开源框架,下面简要介绍log4j的使用方法

1、项目导入log4j-1.2.16.jar

2、编写日志配置文件log4j.properties

#定义日志的根输出,下面表示将级别为info的日志输出到文件和控制台。
log4j.rootLogger=info, logfile ,stdout

#File 
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=../logs/log.log
log4j.appender.logfile.Append=true
log4j.appender.logfile.Threshold =INFO
log4j.appender.logfile.DatePattern='.'yyyy-MM-dd
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %c{1}:%L - %m%n

#Console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.Threshold =INFO
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %c{1}:%L - %m%n

 

相关参数说明:

1)日志输出类型

(1)org.apache.log4j.ConsoleAppender(控制台)
(2)org.apache.log4j.FileAppender(文件)
(3)org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
(4)org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),可通过log4j.appender.R.MaxFileSize=100KB设置文件大小

 

2)日志输出级别

OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL

通常情况下,在调试时用DEBUG,在系统部署运行时用INFO

 

3)格式化日志信息

%m 输出代码中指定的消息
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss},输出类似:2013-08-26 22:30:28
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。

 

3、JAVA中输出日志

import org.apache.log4j.Logger;

public class Test {

    private Loggerlog = Logger.getLogger(this.getClass());

    publicvoid testLog(){

       log.info("test log");

    }

    publicstaticvoid main(String[] args) {

       new Test().testLog();

    }

}

 

控制和文件中打印出:

2013-08-26 22:44:34  INFO Test:10 - test log

 

项目的目录结构

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值