美文网首页
java log日志如何使用与配置

java log日志如何使用与配置

作者: 晏子小七 | 来源:发表于2017-10-31 15:27 被阅读785次

log日志的作用:基本可以分为2个

1、跟踪代码的运行轨迹。

2、输出调试信息

log的主要组成:

1、Logger类-生成日志。

2、Appender类-定义日志输出的目的地。

3、Layout类-指定日志输出的格式。

了解一下Logger组件:

日志共分为5种级别(ON开,OFF关这两个不计算在内),从高到底(从严重到轻微)排序为:

1.FATAL—严重的错误,可能会导致程序不能正常运行. 类似System.exit(),整个项目都不能运行

2.ERROR – 错误,影响程序的正常运行。  类似当前线程挂了,但其它线程或组件还在跑

3.WARN – 警告,不会影响程序的运行。最好将此问题修正。

4.INFO – 一般信息。不影响程序的运行。可能是用户的调试信息。可有可无。等同于system.err.

5.DEBUG – 一般的信息。等同于system.out

上面五种级别分别对应以下几个方法(Java中调用,等会会演示)

fatal(Object)

error(Object)

warn(Object)

info(Object)

debug(Object)

当信息大于或是等于配置的级别时才会输出日志

Appender组件

我们只要记住下面这2个就可以了:

Console—控制台–org.apache.log4j.ConsoleAppender

File—文件–org.apache.log4j.FileAppender , org.apache.log4j.RollingFileAppender

Layout组件

功能是定义日志的输出格式

org.apache.log4j.HTMLLayout

org.apache.log4j.PatternLayout(自定义)

org.apache.log4j.SimpleLayout

就是输出到日志的时候,用哪种格式输出,理解成正则表达式就好了。

自定义格式PatternLayout:

%d– 具体的时间. %d{yyyy MMM dd HH:mm:ss,SSS}        输出类似:输出类似:2016年8月21日 00:00:00,921

%p– 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

%c– 输出所属的类目,通常就是所在类的全名 -Logger.getLogger(name) 其实就是输出这个name,所以,我们这里一般用当前类的class。

%L(这是大写的L)— 只输出行号

%l- 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:(Log4jDemo.java:13)

%m– 输出代码中指定的消息-我们指定的

%n—换行符-Windows平台为“\r\n”,Unix平台为“\n”

%r输出自应用启动到输出该log信息耗费的毫秒数%t输出产生该日志事件的线程名

模板:在src下创建一个log4j.properties文件

#####配置根元素

log4j.rootLogger=INFO,console,file

#存储INFO以及以上级别的记录

#file的输入地址为文件

#console表示输出到控制台

log4j.appender.file=org.apache.log4j.RollingFileAppender

#以下是具体的目录log4j.appender.file.File=d:/a/test.log

#每个文件的最大大小log4j.appender.file.MaxFileSize=20KB

#最多可以是多少个文件log4j.appender.file.MaxBackupIndex=3

#信息的布局格式-按指定的格式打出log4j.appender.file.layout=org.apache.log4j.PatternLayout

#具体的布局格式 - %d为时间

#log4j.appender.file.layout.ConversionPattern=%d %p [%c] %m %l %n

log4j.appender.file.layout.ConversionPattern=%d %p [%l]\:%m -%t%n

#以下配置输出到控制台的配置

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

#log4j.appender.console.layout.ConversionPattern=%d %p [%c] %m%n

log4j.appender.console.layout.ConversionPattern=%d %p [%l]\:%m -%t%n

演示实例:

import org.apache.log4j.Logger;

public class Log4jDemo{

          public static void main(String[] args){

                Logger log = Logger.getLogger(Log4jDemo.class);

                for(int i = 0;i<10;i++){

                          log.fatal("严重错误信息:"+i);

                           log.error("错误信息:"+i);

                            log.warn("警告信息:"+i);

                           log.info("一般信息:"+i);

                           log.debug("调试信息:"+i);

               }

        }

}

相关文章

网友评论

      本文标题:java log日志如何使用与配置

      本文链接:https://www.haomeiwen.com/subject/vvsbpxtx.html