使用Log4j记录系统日志

 
 
 
使用Log4j记录系统日志
 
 
 
What is Log4j?
    Log4j是Apache的开源项目,可以方便地控制日志信息输送到各种目的地,包括控制台,日志文件等,还可以精确控制每一条日志的输出格式.
 
Why use Log4j?
    传统的日志思想就在代码中书写System.out.println()来记录日志,这种方式既单调,又降低系统性能,而使用Log4j能很好的解决这个问题.
How to use Log4J?
1.         下载并导入类定义包(不用多介绍了吧)
下载地址:
解压后,jar包在/dist/lib目录
2.         创建log4j.properties文件(怎么创建请看下面)
3.         使用log4j
l 获取Logger, 语法:
public static Logger getLogger(String name)
public static Logger getLogger(Class name)
 
Eg: Logger logger = Logger.getLogger(Test.class); 
//这一句一般放在类的最开始处,以类名为日志器命名
 
l 通过获取的Logger记录日志信息
Eg:
logger.debug(“Debug message”);
logger.error(“Error message”);
logger.Fatal(“Fatal message”);
 
 
 
 
 
 
创建 Log4j 配置文件
 
 
Log4j配置文件的基本格式
//配置根Logger
log4j.rootLogger = [ Level ] , appenderName1 , appendName2 , ...
 
//配置日志信息输出目的地Appender
log4j.appender.appendername = fully.qualified.name.of.appender.class
         log4j.appender.appenderName.option1 = value1
         ...
         log4j.appender.appenderName.optionN = valueN
        
 
//配置日志信息的格式 Layout
log4j.appender.appendername.layout = fully.qualified.name.of.layout.class
         log4j.appender.appenderName.option1 = value1
         ...
         log4j.appender.appenderName.optionN = valueN
 
 
输出级别
一共5级
l FATAL
l ERROR
l WARN
l INFO
l DEBUG
Log4j只建议使用ERROR,WARN,INFO,DEBUG,优先级如下
DEBUG < INFO < WARN < ERROR < FATAL
 
输出目的
Appender为日志输出地
org.apache.log4j.ConsoleAppender
输出到控制台
org.apache.log4j.FileAppender
输出到文件
org.apache.log4j.DailyRollingFileAppender
输出到文件, 每天产生一个日志文件
org.apache.log4j.RollingFileAppender
输出到文件, 当文件达到指定大小的时候产生一个新的文件
org.apache.log4j.WriterAppender
以流格式发送到任意指定的地方
 
 
输出样式
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
一个换行符
%d
输出日志时间点的日期或时间, 默认格式为ISO861
%l
输出日志事件的发生位置, 包括类目名, 发生的线程, 以及在代码中的行数
 
 
Eg:
<!—以INFO级别输出到控制台-->
log4j.rootLogger=INFO,console
log4j.appender.console= org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
 
 
Eg2:
<!—增加日志文件输出-->
log4j.rootLogger=INFO,console,file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.layout=org.apache.log4j.HTMLLayout
log4j.appender.file.file=login3log.html
<!—-指定日志文件-->
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值