首页>JAVA>正文

Log4j简介、下载与使用以及log4j的构成_上海java培训技术干货

时间:2018-09-05 18:01:10   来源:上海尚学堂   阅读:
每一个 Java 程序员都知道日志对于任何一个 Java 应用程序,尤其是服务端程序是至关重要的, 日志是应用软件中不可缺少的部分, log4j 是一个用 Java 编写的可靠,快速和灵活的日志框架(API),它在 Apache 软件许可下发布。提供方便的日志记录。在 apache 网站: http://logging.apache.org/log4j/2.x/, 可以免费下载到 Log4j 最新版本的软件包。

SLF4J(Simple logging facade for Java) 不同于其他日志类库,与其它有很大的不同。 SLF4J 作者就是 log4j 的作者 Ceki Gülcü。 不是一个真正的日志实现,而是一个抽象层( abstraction layer),它允许你在后台使用任意一个日志类库。 建议使用 SLF4J的而不是直接使用 Log4j,总之, log4j 是一个日志系统。 slf4j 是一个日志系统的封装,对外提供统一的 API。使用 slf4j 和其它日志框架,只要引入 slf4j-api 包,以及对应的适配包即可。

 

1、Log4j 简介

在应用程序中添加日志记录总的来说基于三个目的:

●监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作;
●跟踪代码运行时轨迹,作为日后审计的依据;
●担当集成开发环境中的调试器的作用,向文件或控制台打印代码的调试信息。

最普通的做法就是在代码中嵌入许多的打印语句,这些打印语句可以输出到控制台或文件中,比较好的做法就是构造一个日志操作类来封装此类操作,而不是让一系列的打印语句充斥了代码的主体。

在强调可重用组件开发的今天,除了自己从头到尾开发一个可重用的日志操作类外, Apache 为我们提供了一个强有力的日志操作包 Log4j

Log4j 是 Apache 的一个开放源代码项目,通过使用 Log4j,我们可以控制日志信息输送的目的地是控制台、文件、 GUI 组件、甚至是套接口服务器、 NT 的事件记录器、 UNIX Syslog 守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

此外,通过 Log4j 其他语言接口,您可以在 C、 C+ +、 .Net、 PL/SQL 程序中使用 Log4j,其语法和用法与在 Java 程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第三方扩展,您可以很方便地将 Log4j 集成到 J2EE、 JINI 甚至是 SNMP 应用中。


2.下载与使用

2.1下载 log4j 的 jar 文件

下载地址: http://logging.apache.org/log4j/1.2/download.html


2.2 添加到Path 环境中

 


2.3 编写一个测试类

public static void main(String[] args) {
    // 记录debug级别的信息
    logger.debug("This is debug message.");
    // 记录info级别的信息
    logger.info("This is info message.");
    // 记录error级别的信息
    logger.error("This is error message.");
}

2.3 编写配置文件

在类路径下(src 文件夹下) 创建 log4j.properties 文件, 配置文件 log4j.properties 内容如下
 
### 配置根目录   off fatal error warn info debug all ###
log4j.rootLogger=debug,A
### 配置输出目的地 A 输出信息到控制台  ###
log4j.appender.A=org.apache.log4j.ConsoleAppender
### 配置输出样式  ###
log4j.appender.A.layout=org.apache.log4j.TTCCLayout
 

2.4 输出结果

 
 

3.log4j 构成

通过配置文件可知,我们需要配置 3 个方面的内容: 
1)、根目录(级别和目的地);
2)、目的地(控制台、文件等等); 
3)、输出样式

Log4j 类图如下;
 

Logger-日志写出器,供程序输出日志信息
Appender-日志目的地,把格式化好的日志信息输出到指定的地方去ConsoleAppender-目的地为控制台的 Appender
FileAppender-目的地为文件的 Appender
RollingFileAppender-目的地为大小受限的文件的 Appender
Layout-日志格式化器,用来把程序员的 logging request 格式化成字符串
PatternLayout-用指定的 pattern 格式化 logging request 的 Layout

以上就是上海尚学堂Java培训Log4j简单文档,喜欢的朋友可以好好学习。这部分整体讲了log4j的简介,下载与使用、构成等。下一篇文章我们在讲述log4j的配置和使用方法等。

想获取上海尚学堂全套Java视频学习资料,请联系客服小姐姐。

分享:0

电话咨询

客服热线服务时间

周一至周五 9:00-21:00

周六至周日 9:00-18:00

咨询电话

021-67690939
15201841284

微信扫一扫