专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 Log4j配置文件详解

Log4j配置文件详解

更新时间:2021-08-24 09:34:34 来源:动力节点 浏览544次

记下依赖包

<dependency>  
    <groupId>org.slf4j</groupId>  
    <artifactId>slf4j-api</artifactId>  
    <version>1.6.6</version>  
</dependency>  
<dependency>  
    <groupId>org.slf4j</groupId>  
    <artifactId>slf4j-log4j12</artifactId>  
    <version>1.6.6</version>  
</dependency>  
<dependency>  
    <groupId>log4j</groupId>  
    <artifactId>log4j</artifactId>  
    <version>1.2.16</version>  
</dependency> 

log4j有三个核心功能

日志信息的优先级

日志信息的输出目的地

日志输出的格式

而使用配置文件不仅会减轻工作量,而且可以使程序更加灵活

定义配置文件主要有两种方式

使用 Java 的特性文件,即右键工程名 new 一个名为 log4j.properties 的文件

这个文件不同的 IDE,不同的项目放在不同的地方,有人说 src 同级, 也有人说

在 src/main/java 下,还有人说放在 src/main/resource。具体对象,具体讨论

使用xml文件,具体怎么配置,我还没有试过。

语法

1.根类别(在类别层次的顶部,即全局性的日志级别)

配置根 Logger

log4j.rootLogger = [ level ], appenderName, appenderName,...

level是日志记录的类别

从高到低依次排序

关键字 用途
OFF 最高级别,关闭所有日志
FATAL 每个错误事件将会导致退出应用程序,这个时候可以停止应用程序了
ERROR 虽然发生错误事件,但是不影响系统的继续运行。打印错误异常和信息,如果不需要打印太多,可以使用这个级别
WARN 会出现潜在错误信息,有些信息不是错误信息,但是需要给程序员一些提示
INFO 消息在粗粒度级别上突出强调应用程序的运行过程,打印一些感兴趣或者重要的信息。这个可以用于生产环境中输出程序的一些重要信息,但是不能滥用
DEBUG 指出细粒度事件对于调试还是费城有帮助的,主要打印一些在开发过程中打印一些运行信息
TRACE 很低级别的日志,一般不会用
ALL 级别最低,打印所有日志

log4j推荐只使用 ERROR, WARN, INFO, DEBUG

通过定义级别,只有比这个高的级别可以打印出来

appenderName 指定日志发送到哪个地方,可以同时指定多个输出地

例如:

log4j.rootLogger=INFO,stdout,Runlog,Errorlog

DEBUG 级别日志将会被屏蔽,输出的目的地有三个, stdout 、Runlog 和 Errorlog

2.配置日志的目的地

log4j.appender.appenderName = fully.qualified.name.of.appender.class

fully.qualifled.name.of.appender.class 是你日志发送目的地的类型

样式是:org.apache.log4j.XXXXXX

3.常用的输出格式

格式 意义
-X号 X 信息输出是左对齐
%p 日志输出信息级别
%d{} 日志信息产生的信息
%c 日志信息产生的所在类名
%m 日志产生的具体信息
%n 输出日志信息换行

例如:

log4j.appender.stdout.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n 
log4j.appender.Runlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n 
log4j.appender.Errorlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n

4.布局

log4j提供四种布局

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

例如:

log4j.appender.stdout.layout=org.apache.log4j.HTMLLayout

以上就是动力节点小编介绍的"Log4j配置文件详解",希望对大家有帮助,想了解更多可查看log4j教程。动力节点在线学习教程,针对没有任何Java基础的读者学习,让你从入门到精通,主要介绍了一些Java基础的核心知识,让同学们更好更方便的学习和了解Java编程,感兴趣的同学可以关注一下。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>