栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Java语言面向对象】(72)log4j

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Java语言面向对象】(72)log4j

现在程序中的异常信息只能在控制台上看见。

你能想到的,别人都想到了,市场上有很多优秀的组件实现了日志的信息保存。

其中具有代表性的log4j

Log4j属于第三方组件

Java中的第三方组件,都是以jar包的形式存在。

Jar包类似于.rar或.zip,只是一个文件格式。

Jar包里存储的都是class字节码文件。

常规套路

(1)第三方jar包拷贝到你的项目中去

创建新工程

 

 

 

 将log4j.jar包拷贝到lib目录中

 

 

 

 (2)修改配置文件

 

 

 Log4j框架配置文件log4j.properties配置使用详解_CycloneKid的博客-CSDN博客_log4j配置文件详解

#配置日志准备保存在哪里  多个位置可以使用分号分隔,位置可以随便写  info  stdout ..abc
#console 控制台  file文件
#log4j.rootLogger = 日志级别,日志目的地1,日志目的地2,....目的地N
log4j.rootLogger = debug,console,file
#这里的日志级别为debug测试级别,将日志信息传送到console和file文件中去
#log4j.rootLogger=stdout,file

#控制台日志的输出格式
log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern = %5p %d %C: %m%n
#上一行的语句是控制信息的格式

#文件日志的输出格式
log4j.appender.file = org.apache.log4j.FileAppender
log4j.appender.file.File = D:/install/njwb.log
#上一行是指定日志信息存储的地址
#如果指定文件不存在,将会自动生成
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss}  %l  %m%n
#上一行的语句是控制信息的格式

右键src  ----》new  ----》file --àlog4j.properties

使用

package com.njwbhz.March.week1.part0304;

import org.apache.log4j.Logger;

public class TestLog4j {
    public static void main(String[] args) {
        //1. 获取一个日志记录器
        //导入org.apache.log4j.Logger
        Logger logger = Logger.getLogger(TestLog4j.class);

        //2. 调用方法
        logger.debug("debug");
        logger.info("info");
        logger.warn("warn");
        logger.error("error");
        logger.fatal("fatal");

        //日志一共有五个级别
        //debug、info、warn、error、fatal
        //debug记录测试信息
        //info记录正常信息
        //error记录异常信息
    }
}

package com.njwbhz.March.week1.part0304;

import org.apache.log4j.Logger;

public class TestException {
    public static void main(String[] args) {
        //获取一个日志记录器、这里调用的是Logger中的静态方法,所以不需要new一个对象
        Logger logger = Logger.getLogger(TestException.class);
        try {
            int i = 1 / 0;
            //执行到这一步会抛出异常
            System.out.println(i);
        } catch (Exception e) {
            //这里输出异常信息
            System.out.println(e.getMessage());
            /// by zero
            logger.error(e.getMessage());
            //ERROR 2022-03-05 13:44:43,662 com.njwbhz.March.week1.part0304.TestException: / by zero
        }
    }
}

Log4j一共有5个日志级别

debug < info  < warn < error < fatal

debug用于测试阶段,所有的日志信息都输出来

info:正常商用后采用info级别    info  warn  error  fatal

warn: 输出warn  error  fatal

error:  error  fatal

记录正常的信息使用info方法

记录异常的信息使用error

记录测试的信息debug

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/756642.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号