大多数日志文件的后缀名是_log4j(添加日志)

本文介绍了Log4j的基本概念,包括其组件、功能和使用场景。Log4j是一个强大的日志组件,提供日志信息的优先级控制、输出目的地选择和输出格式定制。使用Log4j可以方便地将日志信息输出到控制台、文件或其他目的地,有助于代码调试、审计和运行轨迹跟踪。文章还提到了如何在项目中引入Log4j,并提供了两种添加日志的方法:直接在代码中使用和配置log4j.properties文件。对于初学者,配置文件的编码格式需要注意,建议使用UTF-8。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在学习新知识之前我觉得应该按1.它是什么?2.它能做什么?3.怎么做?接下来我将围绕这三个问题一一阐述有关log4j的知识。

第一个log4j是什么,Log4j是Apache的一个开源项目。日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。它由三个组件组成:

  1. 日志信息的优先级(由日志记录器设置优先级): 控制日志的输出级别,日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度。
  2. 日志信息的输出目的地,理解为输出端(Appender):控制日志的输出位置(控制台或者是文件)。
  3. 日志信息的输出格式(Layout): 控制日志显示的格式。输出格式控制了日志信息的显 示内容。

第二个log4j能做什么,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

那么有人就会有疑惑,为什么要在应用程序中添加日志文件呢?原因简单理解如下:

  1. 监测代码中变量的改变情况,周期性的记录在文件中.用于统计分析。
  2. 跟踪代码的运行轨迹,便于审计。
  3. 担当集成开发环境中的调试器,向文件或者控制台打印调试信息。

第三个log4j怎么做,简单点就是log4j的使用方法。

因为log4j是第三方jar包,所以使用时需要导入log4j.jar到项目中,导入后还需要加入构建路径。具体方法如下:

  1. 进官网下载:http://logging.apache.org/log4j/2.x/download.html。
  2. 在工程中创建lib文件夹,把下载解压后的log4j.jar拷贝到lib文件夹中。
  3. 右键点击log4j.jar文件 Bulid Path--> Add to bulid path(添加至构建路径)。

添加日志的几种方法在这里也阐述一下:

  1. System.out.println() 缺点:只能在控制台输出打印,不能形成文件.也不能记录之前运行结果!
  2. 日志框架:log4j Logback等
  3. 日志框架的框架:slf4j

下面先上一下代码:

2c6b091149adf65bd326f0d0656476da.png

2039019e605f643ab1e8a1c4cda58125.png

虽然图片中已经加了注释,但是需要在说明一下,自定义格式里的一串符号,称为日志格式占位符,想要日志长什么样,就自行百度日志格式占位符即可。细心的小伙伴觉可能发现了在main函数里写这个是不是有点不合适,以后修改代码不方便。在实际开发中推荐下面这种方法对应用程序添加日志文件。

9f83f9d7f2e1d220c35e4853c1c150c0.png

419fe92fe396ed4c8a35db7e97cb49d3.png

第二种方式是采用设置log4j.properties文件,然后在其他.java文件中设置日志内容。log4j.properties该文件创建一个File类型的文件即可,注意文件名可以自己设置,后缀名需要做到准确无误,上图中的#相当于注释的作用,图中的输出端以及输出格式建议在java文件中写(打几个首字母,按alt+/快速生成的不会错),然后复制粘贴即可,这样为了保证代码不会打错!博主曾被自己手打支配过,建议大家快速生成后复制使用!

还有我曾碰到的问题在这里一起记录:配置的属性文件默认不是utf-8的需要改,修改方式为选中文件右键->Properties,在窗口中修改自己要的编码格式。

如果你想更深入更详细的学习这方面的知识,请戳以下链接:

CSDN-专业IT技术社区-登录​blog.csdn.net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值