老狗——Java日志插件log4j

现在有更牛x的 log4j2 了,建议看完本帖去看看2的帖子。

1、什么是log4j?

日志: 日志是系统运行过程中的后台输出信息,方便程序员进行系统运行的管控以及Bug的查找

log4j: log4j是一个日志输出的插件,专门用来进行日志的管理的

传统方式获取日志 使用System.out.println() 语句进行后台打印

问题:

  1. 日志信息无法保存
  2. 无法显示完整日志信息
  3. 日志的显示没有级别所有的日志混杂在一起显示(无法进行日志信息筛选)
  4. 日志显示格式不友好

解决: 使用 log4j 进行日志管理

log4j 特点:

  1. 日志可以单独保存在文件中
  2. 可以获取完整的日志信息
  3. 可以进行日志显示的筛选
  4. 格式友好

2、log4j 的配置文件

注意:配置文件一定要存放在 src 下,并命名为log4j.properties,建议查看官网文档

// 设置
log4j.rootLogger = debug,stdout,D,E

// 输出信息到控制台
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

// 输出 DEBUG 级别以上的日志到 = E://logs/error.log
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = E://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG 
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

// 输出 ERROR 级别以上的日志到 = E://logs/error.log
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =E://logs/error.log 
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n 

3、log4j 的使用

  1. 导入log4j的jar包
  2. 配置log4j的配置文件
  3. log4j 的日志级别
    3.1 FATAL: 致命的错误
    3.2 ERROR:异常错误
    3.3 WARN:警告
    3.4 INFO:信息(方法)
    3.5 DEBUG:调试(代码级别)
  4. 在使用 log4j 的类中声明全局的 Logger 对象
public static Logger logger = Logger.getLogger(类名.class);
  1. 使用 Logger 对象调用日志方法进行日志输出语句声明
logger.debug("I'm debug");	// 一般在方法内部使用
logger.info("I'm info");	// 一般在调用方法使用
logger.warn("I'm warn");	// 一般在需要警告的位置使用
logger.error("I'm error");	// 在 catch 代码块中使用
logger.fatal("I'm fatal");	// 在 catch 代码块中使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值