开源日志记录工具log4j 使用

一、日志的应用场景

日志适用于解决这样的问题:例如,我们根据控制台输入被除数和除数,然后计算并输出商,不同的异常被正确地捕获,并在控制台上输出相应信息,而有时,我们还希望以文件的形式记录这些异常信息,甚至记录程序正常运行的关键步骤信息,以便日后查看,这种情况,我们呢可以通过日志来实现。

二、日志及其分类

软件的运行过程离不开日志,日志主要用来记录系统运行过程中的一些重要的操作信息,便于监视系统 运行情况,帮助用户提前发现和避开可能出现的问题,或者出现问题后根据日志找到发生的原因。

日志根据记录内容的不同,主要分为三类:

SQL日志:记录系统执行的sql语句。

异常日志:记录系统运行中发生的异常事件

业务日志:记录系统运行过程,如用户登录,操作记录。

三、log日志记录工具很多,在此介绍一个非常优秀的流行开源项目日志记录工具 Log 4j 的使用。

1、先讲述下log4j的大致操作步骤,下面具体讲解

在MyEclipse中使用log4j 的步骤比较简单,主要分为以下四个步骤。

(1)在项目中加入log4j所使用的jar文件;

(2)创建log4j.properties 文件;

(3)编写log4j.properties文件,,配置日志信息;

(4)在程序中使用log4j记录日志信息;

2、log4j是一个非常优秀的日志记录工具。通过log4j我们可以控制日志的输出级别,以及日志信息输送的目的地(如控制台、文件等),还可以控制每一条日志的输出格式。

log4j 是Apache的一个开源项目,官方网站是http://logging.apache.org/log4j/1.2/,这里使用log4j 1.2.17版本,当前下载地址是http://logging.apache.org/log4j/1.2/download.html,下载其中的zip文件并解压,里面包含的主要内容以及在zip包内的路径如下.

log4j 的jar包:apache--log4j--1.2.17\log4j--1.2.17.jar

使用手册(manual):apache--log4j--1.2.17\site\manual.html

javadoc(APIDocs): apache--log4j--1.2.17\site\apidocs\index.html

3、如何使用log4j记录日志

(1)在项目中加入log4j所使用的jar文件。

方法一:在MyEclipse 中选中要使用log4j的项目,然后依次选择“Project”-->"properties"---->"java Build path"---->“Add  External  JARs...”选项。弹出选择JAR的窗口。找到自己计算机上存放的文件,即“log4j --1.2.17.jar”.

确认后回到项目的属性窗口,单击“ok”按钮即可。

方法二:在MyEclipse中,选中要使用的项目,右键new 一个文件夹folder,将jar文件复制进去,然后选中jar文件,右键选择build  path -------add  to build path,这样系统会自动生成一个Preferenced Library文件夹,里面好苦有一个经过处理的文件。

(2)创建log4j.properties 文件。 需要在src目录下,创建一个该名字的文件file,然后在其中配置些关于日志的信息,如输出级别、输出目的地、输出格式等。特别注意,这个文件的文件名必须为“log4j.properties”,不得为其他!

(3)编写log4j.properties文件,配置日志信息。各配置项的具体可以自行设置,但需要使用其固定的标准,具体可以查看手册。下面是一个我常用的配置(当然可以更改):

开源日志记录工具log4j 使用


### 设置Logger输出级别和输出目的地 ### trace/debug/info/warn/error/,这个是输出的级别
log4j.rootLogger=debug, console,logfile
###  debug表示最低的输出级别,更改此处,可以过滤日志输出的类型,

### console 表示输出到那个位置,此处表示输出到控制台,
###logfile 表示输出到文件,

### 类似console 和logfile可以有好几个,还可以写到数据库


### 把日志信息输出到控制台 ###
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%p %m%n

####这里的p  m  n等符号都有特定含义,可查看手册


### 把日志信息输出到文件:jbit.log ###
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=test.log//此处表示日志文件存储的文件名,可在项目刷新后进行查看test文件
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l %F %p %m%n

(4)之后可以在程序中记录日志信息。首先需要创建一个私有静态的Logger对象,然后可以通过它的debug()或者error() 等方法输出日志信息了

举例师范:

开源日志记录工具log4j 使用开源日志记录工具log4j 使用
开源日志记录工具log4j 使用

开源日志记录工具log4j 使用开源日志记录工具log4j 使用开源日志记录工具log4j 使用