项目需要,否定了前期确定的使用JDK的Logging框架改用Log4J来完成日志功能,以前也使用log4j但是当时没有记录下来。现在把log4j的使用方法简单记录如下,以备日后所需。
log4j是一个Apache开源项目,其目前的最新版本为1.2,使用log4j最重要的就是它的配置文件log4j.properties,在你的项目目录下新建一个文件,命名为log4j.properties,最好是使用它的配置文件的样例文件(在它的下载安装包内有),需要配置的元素有
1.使用哪个级别来输出log信息
在程序中所需要输出的信息是分不同等级的,越高级别的信息则说明这个错误越严重,通过配置可以控制程序以那一等级输出,log4j的所有等级顺序是DEBUG < INFO < WARN < ERROR < FATAL,如果你配置你的log级别是INFO,则比INFO低的级别DEBUG便不会输出到log中(需要在程序编写过程中采用相对应的输出级别进行输出,才可以通过配置文件较好的控制)。例如在一般编程过程中都需要对程序进行调试,调试过程中需要输出一些信息来查看程序运行情况,这个级别应该是DEBUG级别的,
Logger.debug("This is debugging");
而对于程序运行过程中的异常则可以用ERROR级别的来输出,
catch(Exception e) {
Logger.error(e.printStackTrace());
}
明白了吧,就是将程序的输出情况根据其严重情况分等级,通过配置文件可以控制在哪种情况下输出哪个等级的。
首先需要配置的是log4j.rootLogger这个元素,它配置的全局输出级别,同时还会指明log的输出方式。因为log4j支持对不同包、不同类的输出级别进行控制(也就是同一个项目中,不同package的log输出级别可以不同),而如果没有设置针对某特定包的输出级别,那么该包将采用全局输出级别进行输出。例如
包a.b
包a.c
配置有log4j.rootLogger=DEBUG,则该包都会使用DEBUG级别进行输出。
对于不同包的输出级别设置是采用log4j.logger这个元素来配置,后面跟上你要配置的包名即可,如需要配置上面的a.b这个包为INFO级别的,
log4j.logger.a.b=INFO
就就可以了
2.log信息输出到哪里
通过
log4j.rootLogger=DEBUG,stdout, disk
来实现,上面我就配置了两个输出目的地,一个叫做stdout,一个叫做disk,顾名思义一个输出到控制台上,一个输出文件中。那么如何规定其输出方式呢
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
这样就指定了stdout为控制台输出方式
log4j.appender.disk=org.apache.log4j.RollingFileAppender
指定了文件输出方式,更为详细的文件配置如下
log4j.appender.disk.File=./log/test.log
log4j.appender.disk.MaxFileSize=100KB
log4j.appender.disk.MaxBackupIndex=1
3.log信息输出的格式是怎么样的
采用默认的就可以
log4j.appender.disk.layout.ConversionPattern=%d %-5p [%t] %-17c{2} (%13F:%L) %3x - %m%n
其输出了代码行数,调用方法等有用的信息。
最后,如何在程序中使用log4j呢?
其实有两步,一个是配置,另一个就是获取logger,然后就可以通过logger.info()等方法输出log信息了。
public class MyLog {
private static Logger logger = Logger.getLogger(HelloLog4j.class.getName()); //获取logger
public static void main(String[] args) {
// TODO Auto-generated method stub
PropertyConfigurator.configure(args[0]); // 配置
logger.info("hello test"); //输出log信息
System.out.println("hello test");
logger.debug("debuging"); //输出log信息
}
}
最后还必须要提一下的就是另一个log框架
commons-logging
这也是apache的一个开源项目,但是它和其他的log框架可不一样,它的log功能的实现并不是很强大,只是最简单的基础功能,但是它的好处就是可以集合各个流行的log框架,而且对于log功能的使用更加简单方便。使用方法如下(以log4j的集成为例)
首先将log4j和commons-logging两个jar包导入工程路径,配置好log4j.properties配置文件,在程序中需要使用log的地方只需要写上下面的代码
private static Log log = LogFactory.getLog(YourClass.class);
然后便可以进行log输出了
它的配置都还在log4j.properties文件中进行,而且不需要显示的调用
PropertyConfigurator.configure(args[0]); // 配置
这样的配置语句,是不是很方便啊!
在这里我只是很粗的大概说了一下,在今后使用到的时候看一下能记起来怎么用就达到目的了
分享到:
相关推荐
Log4j是一款广泛使用的开源日志框架,由Apache软件基金会开发。本文将深入探讨Log4j的基本概念、配置与使用方法。 1. **什么是Log4j** Log4j是一个基于Java的日志记录工具,它提供了灵活的控制来记录日志信息,...
#### 四、在代码中使用Log4j 要在代码中使用Log4j,首先需要获取一个Logger实例。 - **语法**:`public static Logger getLogger(String name)` - **示例**: ```java import org.apache.log4j.Logger; ...
### Log4j 使用实例详解 #### 一、Log4j简介 Log4j 是一个开源的日志记录框架,由 Apache 软件基金会提供。它允许开发者根据需求配置日志等级,并灵活选择日志信息的输出方式。Log4j 的核心组件包括 Logger、...
**日志框架Log4j详解** Log4j是Apache组织提供的一款开源的日志记录工具,广泛应用于Java开发中。...通过阅读提供的"log4j使用方法"文档,你将能更深入地了解Log4j的配置和使用技巧,为你的开发工作带来便利。
### Log4j 使用详解 #### 一、Log4j简介 Log4j 是 Apache 的一个开源项目,通过使用 Log4j,开发者能够控制日志信息的输出等级及去向,从而更加灵活地处理日志信息。它具有强大的功能,简单的配置,并且能够支持...
#### 四、log4j 配置详解 1. **配置文件**: - `log4j.properties` 或 `log4j.xml` 文件用于定义 log4j 的配置规则。 - 配置文件通常放置在项目的根目录或者类路径下。 - 如果未指定配置文件的位置,则 log4j 会...
标题“log4j.rar log4j使用方法”暗示了我们要讨论的是一个关于log4j日志框架的压缩包文件,其中包含了如何使用log4j的指导资料。log4j是Java编程语言中广泛使用的开源日志记录工具,它允许开发者灵活地控制日志信息...
### log4j使用配置方法及项目中的应用 #### 概述与背景 在软件开发过程中,日志记录是一项至关重要的任务,它不仅帮助开发者监控代码执行状态,还为后续的故障排查、性能优化和安全审计提供了关键信息。传统的做法...
### log4j 使用简介 #### 一、Log4j 概述 Log4j 是一个由 Apache 提供的开源项目,专门用于实现日志记录功能。它为开发者提供了灵活的日志记录方式,允许通过多种不同的格式来记录每一条日志信息,并且能够将这些...
以下是Log4j的核心组成部分、使用方法以及日志分级的详细解释。 1. **LOG4J组成**: - **Logger**:是Log4j的核心,负责决定哪些日志信息应该被记录和哪些应该被忽略。它根据预定义的级别来过滤日志,由`org....
### 四、使用Log4j 在Java代码中,我们可以使用以下方式调用Log4j记录日志: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass...
Apache Log4j 是一个广泛使用的开源日志框架,它为Java应用程序提供了强大的日志记录功能。Log4j 的主要优点在于它的灵活性和可配置性,允许开发者根据需要调整日志的输出目的地、格式以及级别。 **配置Log4j** ...
这个"log4j使用实例.zip"压缩包包含了关于如何在Java项目中配置和使用Log4j的示例代码,非常适合Java后端初学者学习。 首先,Log4j的核心组件包括Logger、Appender和Layout。Logger是日志信息的生产者,负责生成...
"Log4j使用手册和API"则明确指出了文档的核心内容,Log4j是一个广泛使用的Java日志库,它的API提供了丰富的日志记录功能,包括不同级别的日志输出(如DEBUG, INFO, WARN, ERROR等)、自定义日志格式、日志分发等。...
#### 四、使用Log4j ##### 4.1 概述 Log4j是另一个非常流行的Java日志框架,由Apache基金会维护。它比JCL更加强大,支持更多的特性,比如多级日志记录、动态日志文件配置等。Log4j的核心优势在于其灵活性和强大的...
Log4j 建议只使用四个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。 在配置文件中,我们可以定义多个日志信息输出目的地,例如...
【log4j 使用介绍】 log4j 是一个广泛使用的 Java 日志框架,它提供了一种高效、灵活的方式来记录应用程序中的事件。这篇介绍旨在帮助初学者理解 log4j 的核心概念和使用方法。 **1. 简介** 日志记录在软件开发中...
Log4j是一个广泛使用的Java日志框架,由ApacheJakarta项目开发。它为开发者提供了灵活且功能丰富的日志记录机制,使应用程序中的日志管理变得简单。本教程将深入介绍如何使用Log4j进行日志记录,包括配置、基本用法...