文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Java中Log4j日志怎么用

2023-06-29 11:50

关注

这篇文章给大家分享的是有关Java中Log4j日志怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

为什么要用日志?

我们知道,程序在运行过程中会产生很多很多信息,比如在几点几分的时候运行了,运行的结果是怎么样的?为了我们更加了解程序运行的情况,可以通过日志来查看,日志可以在控制台输出,也可以输出至指定的文件内,在下面的文章中具体的给大家介绍。

下载:

Log4J是Apache公司的开源项目,用于日志处理。下载地址:

https://logging.apache.org/log4j/2.x/download.html

Java中Log4j日志怎么用

下载完成后,我们可以得到一个后缀名为jre的包。

详细步骤:

一、打开IDEA

可以新建一个项目,然后在项目内新建一个lib包,把log4j.jar这个包放进去。

Java中Log4j日志怎么用

然后在src内创建一个类:

Java中Log4j日志怎么用

按照图的步骤即可:

Java中Log4j日志怎么用

在这里把jre的包添加即可:

Java中Log4j日志怎么用

二、创建日志对象

当完成上述操作后,即可在类里面建立对象:

注意:这里选择的Logger包是要来自apache的包,这里一定不要选错!

Java中Log4j日志怎么用

import org.apache.log4j.Logger;public class logTest {    public static void main(String[] args) {        //导入对象:        Logger log = Logger.getLogger(logTest.class);        log.error("用于记录error级别的信息"); //记录严重错误        log.warn("用于记录warn级别的信息");   //记录警告        log.info("用于记录info级别的信息");   //记录信息        log.debug("用于记录debug级别的信息"); //记录debug    }}

接着我们需要创建配置文件:

新建一个文件file,文件后缀名一定要是properties

Java中Log4j日志怎么用

然后新建一个文件,名字可以设为:resources,并且把格式改为如下图:

Java中Log4j日志怎么用

然后把刚刚建的配置文件放入这个文件内即可:

Java中Log4j日志怎么用

我们需要在log.properties内配置以下三个最要信息:

设置的模板如下:

直接复制到log.properties内即可:

# 1.设置输出级别info,可以将info以及更高级别的记录到日志文件中,但其更低的比如debug级别就不会记录到日志文件中
# stdout是设置的日志记录的目的地(名字可以随便起的当时要对应上)
log4j.rootLogger=info,stdout

#2.设置日志记录的目的地(ConsoleAppender是记录到控制台)
log4j.appender.stdout=org.apache.log4j.ConsoleAppender

#3.设置记录的格式或样式(System.err是红色样式、System.out是黑色样式)
log4j.appender.stdout.Target=System.err
# 设置记录的格式
#PatternLayout是按照我们自定义规则布局 (%d %l %m %n就是指定的规则布局)
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %l %m %n

这个配置信息我们可以先不看,完成上面的配置,我们先运行一下上面的那段代码:

Java中Log4j日志怎么用

如果出现这样,说明是正确的。 我们重新写一段代码来看看这个日志的功能:

import org.apache.log4j.Logger;import java.util.Scanner;public class test2 {    public static void main(String[] args) {        Logger logger = Logger.getLogger(test2.class);        Scanner input = new Scanner(System.in);        try{            System.out.println("请输入除数:");            int a = input.nextInt();            logger.debug("bug:输入除数"+a);            logger.info("info:输入除数"+a);            System.out.println("请输入被除数:");            int b = input.nextInt();            logger.debug("bug:输入除数"+b);            logger.info("info:输入除数"+b);            int c = a/b;            //把结果记录到日志文件中            logger.debug("bug:结果"+c);            logger.info("info:结果"+c);            System.out.println("结果是:"+c);        } catch (Exception e) {            e.printStackTrace();            System.out.println(e.getMessage());        }finally {            System.out.println("程序结束!!");        }    }}

这是一段除法的运算,先运行,看效果:

Java中Log4j日志怎么用

我们发现,我们在程序内执行的每一步,日志都记录了下来,因为在配置文件内设置的是输出至控制台,所以直接在控制台显示了日志信息,如果需要输出至指定文件,需要配置如下:

Java中Log4j日志怎么用

然后再运行除法的程序:

Java中Log4j日志怎么用

在控制台没有显示日志信息了,因为已经设置成输出至指定的文件内: 根据设置的路径,我们可以看到:

Java中Log4j日志怎么用

这样的记录有时间信息,有程序名信息,还有在程序的第几行发生了什么的信息全部被记录了下来。 当然输出的格式还有很多很多,可以根据需要去另外设置即可!

关于Log4j日志小应学长就讲到这里,完成这些步骤,一个简单的日志记录就完成了,下面日志输出的级别也需要注意。

日志的输出等级:

off:最高等级,用于关闭所有日志记录
2.fatal 指出每个严重的错误时间将会导致应用程序的退出
3.error 指虽然发送错误事件,但仍然不影响系统的运行
4.warn 指明会出现潜在的错误情形
5.info 一般用户记录程序的运行过程
6.debug 一般用于调试的信息记录
7.all 最低级别,用于打开所有的日志记录

感谢各位的阅读!关于“Java中Log4j日志怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯