2020.7.29

一、今日学习内容

    1、用log4j记录异常日志信息

     (1)log4j组成:log4j主要由三大组件组成。

            Logger: 决定什么日志信息应该被输出、什么日志信息应该被忽略。

           Appender: 指定日志信息应该输出到什么地方,这些地方可以是控制台、文件和网络设备.

           Layout: 指定日志信息的输出格式。

         一个Logger可以有多个Appender,也就是说,日志信息可以同时输出到多个设备上,每个Appender对应一种Layout,流程关系如图8-3所示。

   (2)Logger组件

       a.Logger组件提供的方法

       Logger组件是log4j的核心组件,它代表了log4j 的日志记录器,它能够对日志信息进行分类筛选。它由org.apache.log4j.Logger类实现,Logger 类源代码如下。

public class Logger {

// Creation & retrieval methods:
public static Logger getRootLogger() :
public static Logger getLogger (String name) ;

// printing methods:
public void debug (Object message) ;
public void info (0bject message) ;
public void warn (Object message);
public void error (object message) :
public void fatal (object message) ;

// generic printing method:
public void log(Priority P,object message) ;

       b.在配置文件中配置Logger组件
      可在log4j配置文件中配置自己的Logger组件,配置如下。

log4j.logger.myLogger=WARN

      以上代码定义了一个Logger组件,名称为myLogger,日志级别为WARN.
      c.日志级别种类
      日志的种类一共有五种,级别由高到低依次是fatal、error、 warm、 info. debug. 获得Logger实例后,用户可调用以下方法之-输出日志信息。

        

        以上方法只有当它的级别大于或等于Logger组件配置的日志级别时才被调用。以前面大家配置的myLogger为例,它的日志级别为WARN,那么在程序中,它的                 warn(). error()、fatal()方法会被执行。对于log()方法,只有当它的参数Priority指定的日志级别大于或等于WARN时,它才会被执行。

      (3)Appender组件

       Appender组件决定将日志信息输出到什么地方。支持以下目的地。
    #控制台(Console)。
    #文件(File).
    #GUI组件(GUI component).
    #套接口服务器(Remote socket server).
    #NT的事件记录器(NT Event Logger).
    #UNIX Syslog守护进程(Remote UNIX Syslog daemon).
    一个Logger可同时对应多个Appender.
   下面的myLogger配置两个Appender:一个是file,另一个是console.

log4j. logger.myAppender=WARN, file, console
log4j. appender.file=org. apache.log4j. RollingFileAppender
log4j. appender.file.File=log.txt
log4j.apender.console=org. apache .1og4j.ConsoleAppender

    (4). Layout组件
     Layout组件决定日志输出格式,有以下几种类型。
    a. org.apache.log4j.HTMLLayout(以 HTML表格形式布局)。
    b.org.apache.log4j.PattermLayout(可 以灵活地指定布局模式)。
    c.org.apache.log4j.SimpleLayout(包含 日志信息的级别和信息字符串)。
    d. org.apache.log4j.TTCCLayout(包含 日志产生的时间、线程和类别等信息)。
     

    (5)log4j的基本用法

     a.导入log4j的jar包
    导入log4j的方式有两种:第-种直接使用命令行导入;第二种使用MyEclipse导入。.
    #命令行导入log4j.
   #使用MyEclipse导入.
   使用MyEclipse导入前,首先建立-一个Java工程,选择File- +New- -Java- + Project命令

二、遇到的问题

   还不会使用log4j

三、明日计划

   继续学习log4j和第8章的内容

原文地址:https://www.cnblogs.com/wmdww/p/13396459.html