Log4j

一、介绍

Log4j(log for java)

appender:目的地
layout:布局
logger:控制单元
level:级别

# Appender
org.apache.log4j.ConsoleAppender(控制台*)
org.apache.log4j.FileAppender(文件*)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件*)
org.apache.log4j.RollingFileAppender(文件大小达到指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到指定的地方)
org.apache.log4j.jdbc.JDBCAppender(把日志用JDBC记录到数据库中)

# Layout
org.apache.log4j.HTMLLayout(以HTML表格形式布局)
org.apache.log4j.PatternLayout(可以灵活地指定布局模式*)
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等信息)

%m  输出代码中指定的消息
%p  输出优先级
%r  输出自应用启动到该log信息耗费的毫秒数
%c  输出所属的类目,通常是所在类的全名
%t  输出产生该日志事件的线程名
%n  输出一个回车换行符,Windows为“\r\n“,Unix为“\n”
%d  输出日志时间点的日期或时间,默认格式为ISO8601,也可以在后面指定格式

# Logger,级别取精确,输出为各自
log4j.rootLogge=
log4j.logger.com.ustc=

三者关系:

  1. 每个appender后面必然需要跟随layout,指定风格样式;
  2. 每个logger都可以制定一个级别,同事引用多个appender;
  3. 每个appender也同时可以被多个logger引用。

#表示注释,对中文不友好。此外,还有log4j.xml另一种配置文件。

|--src
|     |main
|          |resources
|                    |log4j.properties

二、三大组件

Log4j由三个重要的组件构成:
(1)日志信息的优先级常用ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度。

日志级别从高到低分为:Log4j建议只是用4中级别。
A:off 最高等级,用于关闭所有日志记录。
B:fatal 指出每个严重的错误事件将会导致应用程序的退出。
C:error 指出虽然发生错误事件,但仍然不影响系统的继续运行。
D:warn 表明会出现潜在的错误情形。
E:info 一般和在粗粒度级别上,强调应用程序的运行全程。
F:debug 一般用于细粒度级别上,对调试应用程序非常有帮助。
G:all 最低等级,用于打开所有日志记录。

(2)日志信息的输出目的地,指定了日志将打印到控制台还是文件中;
(3)日志信息的输出格式,控制了日志信息的显示内容。

三、实例

# debug为日志级别,后两个参数为输出位置。在生产和开发时修改日志级别即可静默部分日志信息
log4j.rootLogger=debug,{}.File,{}.Console

log4j.appender.{}.File=org.apache.log4j.Daily
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %-60c %x - %m%n

log4j.appender.{}.Console=

private static final Logger logger = Logger.getLogger({ClassName}.class);

logger.error(e.getMessage(), e.getCause());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值