Log4j使用教程

最详细的Log4j使用教程 最详细的Log4j使用教程 日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。 一、入门实例 立即下载

       作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用、WEB应用以及移动应用。然而日志系统是一个成熟Java应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug;在运行维护阶段,日志系统又可以帮我们记录大部分的异常信息,从而帮助我们更好的完善系统。本文要来分享一些Java程序员最常用的Java日志框架组件。

       Log4j是一款基于Java的开源日志组件,Log4j功能非常强大,我们可以将日志信息输出到控制台、文件、用户界面,也可以输出到操作系统的事件记录器和一些系统常驻进程。更值得一提的是,Log4j可以允许你非常便捷地自定义日志格式和日志等级,可以帮助开发人员全方位地掌控日志信息。



1、log4j.properties日志文件

### 设置###
log4j.rootLogger = debug,stdout,D,E

### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

### 输出DEBUG 级别以上的日志到=F://logs/error.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File =F://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

### 输出ERROR 级别以上的日志到=F://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =F://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

2、在web.xml配置(要有log4j.jar依赖)

	<!--log4j日志配置-->
	<context-param>
		<param-name>log4jConfigLocation</param-name>
		<param-value>classpath:config/log4j.properties</param-value>
	</context-param>
	<context-param>
		<param-name>log4jLocation</param-name>
		<param-value>6000</param-value>
	</context-param>
	<!-- 定义LOG4J监听器 -->
	<listener>
		<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
	</listener>

我是在spring中使用、下面是我的、日志配置文件一定是在其他配置之前、这是servlet就会先读取日志配置文件


3、log4j日志内容解析

# log4j核心
# --------------------------------------------------------------------------------
# 1、Logger完成日志信息的处理,可以分成不同的级别记录日志信息,如:debug,info,error
# --------------------------------------------------------------------------------
# Logger可以定义输出的层次和决定信息是否输出
# Logger输出的信息是有优先级别的: ALL,TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF------级别由小到大
# 常用的有:DEBUG,INFO,WARN,ERROR
# --------------------------------------------------------------------------------
# 2、Appender设置日志信息的去向  如:一个文件中,*.log,*.htm等。或者说是数据库中
# --------------------------------------------------------------------------------
# Appender就是设置日志讯息输出到那个地方,可以同时指定多个输出目的地:
# log4j.rootLogger=debug,appender1,appender2    
# log4j.appender.appender1=org.apache.log4j.ConsoleAppender
# log4j.appender.appender2=org.apache.log4j.ConsoleAppender
# --------------------------------------------------------------------------------
# 3、常用的Appender
# --------------------------------------------------------------------------------
# org.apache.log4j.ConsoleAppender(控制台)
# ogr.apache.log4j.FileAppender(文件)
# org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
# org.apache.log4j.RollingFileAppender(文件大小达到指定尺寸的时候产生一个新的文件)
# org.apache.log4j.WiterAppender(将日志讯息一串流格式发送到任意指定的地方)
# org.apache.log4j.JDBCAppender(将日志讯息保存到数据库中)
# org.apache.log4j.SMTPAppender(将日志信息以邮件的方式发送到指定的地方)
# --------------------------------------------------------------------------------
# 4、Layout设置日志信息的输出样式
# --------------------------------------------------------------------------------
# Layout提供的layout的方式:
# org.apache.log4j.HTMLLayout(一HTML表格形式布局)
# org.apache.log4j.SimpleLayout(包含日志讯息的级别和讯息字符串)
# org.apache.log4j.TTCCLayout(包含日志产生时间,执行者,类别等讯息)
# org.apache.log4j.PatternLayout(可以灵活的指定布局模式)
# --------------------------------------------------------------------------------
# org.apache.log4j.PatternLayout(可以灵活的指定布局模式)
# 定制所输出的日志信息的样式:
# %p   输出优先级别:DEBUG,INFO,WARN,ERROR,FATAL
# %r   输出字应用启动到输出该日志讯息所耗时秒数
# %t   输出产生该日志事件的线程名
# %f  输出日志讯息所属的类别的类别名
# %c  输出日志讯息所属的类的全名
# %d   输出日志时间点的日期或时间
# %d   {yyyy-MM-dd HH:mm:ss} 指定日期或时间格式
# %l  输出日志时间发生的位置,即输出日志讯息的语句处于他所在的类别的第几行
# %m  输出代码中指定的讯息
# %n  输出一个换行符号
# --------------------------------------------------------------------------------

4、Log4jConfigListener源码(要有spring-web的依赖)

class Log4jConfigListener implements ServletContextListener
interface ServletContextListener extends EventListener
interface EventListener

动态的改变记录级别和策略,不需要重启Web应用,如《Effective EnterpriseJava》所说。

Log4jConfirgureListener也就是通过线程的方式扫描log4j.properties,当发现log4j的配置文件发生变化后就作出响应,从而做到了不重启应用修改日志的输出级别。




推荐文章(整理):

Apache log4j

log4j详解

Log4j 日志配置示例详解
Java程序员最常用的8个Java日志框架
在java、web应用、spring中使用
Log4jConfigListener动态改变记录级别及实现




   


如何使用Log4j如何使用Log4j 此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j 立即下载

相关推荐

Landsat 9 数据预处理第一步:在ENVI里正确加载影像的保姆级指南(含MTL文件处理)

本文详细介绍了Landsat 9数据在ENVI中的预处理流程,重点讲解了MTL文件的关键修改与正确加载方法,帮助遥感新手快速掌握数据加载技巧。通过辐射定标、大气校正等步骤,确保数据达到分析就绪状态,适用于土地覆盖分类等高级应用。

weixin_29201313的博客 208

Log4j学习笔记

Log4j学习笔记1 入门实例2 Log4j基本使用方法2.1 定义配置文件 1 入门实例 我这里在我的Maven项目中先引入log4j的包 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.12<...

Snail_565的博客 1365

mongoDB 数据莫名其妙的没了

问题 之前没有接触过mongoDB,然后接手一个项目使用的是MongoDB,我就跟着网上的教程搭建一个MongoDB的服务,并运行起来。 一开始没有啥问题,成功的把服务与MongoDB都启动以来,运行也没有问题。但是过了几天,我再次打开时发现,以前的数据神奇的消失了。我还在想,是有什么定时清除的么,还是什么原因导致崩了然后数据就被清理了。 查找原因 第一次遇到我没有在意,重启了一下MongoDB,...

技术熊的博客小窝 1万+

最详细的Log4J使用教程

地址:http://www.codeceo.com/log4j-usage.html 日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j可以免费下载到Log4j最新版本的软件包。 一、入门实例 1.新建一个JAva工程,导入包log4j-1.2.17.jar,整个...

路漫漫其修远兮 24万+

自动驾驶轨迹规划算法——Apollo EM Planner

Apollo EM Planner 是百度自动驾驶系统中的轨迹规划算法,采用期望-最大化(EM)迭代优化思想。其核心是将轨迹规划分解为路径优化(E-Step)和速度优化(M-Step)两个子问题,在Frenet坐标系下交替求解。算法先通过动态规划(DP)搜索粗路径,再使用二次规划(QP)进行平滑优化,并结合障碍物信息生成安全走廊。相较Lattice、Hybrid A*等规划器,EM Planner具有更好的实时性、动态障碍物处理能力和轨迹平滑性,适用于城市道路、高速公路等复杂场景。该算法通过解耦路径与速度优

swaggytiger的博客 2668

【信创-k8s】银河麒麟V10国防版+鲲鹏/飞腾(arm64架构)在线/离线部署k8s1.30+kubesphere

银河麒麟作为国家核高基专项的重要成果,国防版凭借其卓越的安全性和可靠性,已成为军工领域的首选操作系统。之前我们在适配麒麟V4国防版的过程中已发现诸多安全性要求,而麒麟V10国防版在安全防护等级上又达到了更高的级别。本文将主要演示离线部署,因为军工项目基本不会出现联网场景。即使在线,也可以按离线方式部署,且离线部署由于有私有仓库,不会存在镜像获取不到和丢失情况。

jiaworld的博客 730

Log4j详细使用教程

日志是应用软件中不可缺少的部分,Apache的开源项目Log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。

Evankaka的专栏 5万+

深入解析CAN总线BusOff故障的检测与恢复机制

本文深入解析了CAN总线BusOff故障的检测与恢复机制。BusOff是CAN节点因发送错误过多而被强制离线的一种严重状态。文章详细阐述了其触发原理,即发送错误计数器(TEC)超过255,并重点介绍了通过软件实现的快慢恢复机制,以增强网络在异常情况下的稳定性和韧性。

weixin_29158047的博客 525

Java log日志输出

在Spring框架中添加日志功能: pom.xml 1 2 log4j 3 log4j 4 1.2.17 5 web.xml 1 2 3 Log4JInitServlet 4 class>com.rain.log.Log4JInitServletclass> 5

qq_31600497的博客 1527

软件自动化测试脚本如何编写,编写自动化测试脚本的几点注意事项

我们需要自动化测试脚本的原因:1、验收测试是一项非常复杂和费力的被用来确保软件质量的环节。它的目的就是使软件能得到充分运行并且能使其符合原始需求。2、测试的目的无非就是满足了两个结果:测试通过或测试不通过。为了能实现每个测试结果,必须要明确每个测试用例。并且对于整个系统而言在合同中必须定义测试用例的失败标准,而且这个失败标准数必须是可接受的。3、测试用例的通过条件必须有一个清晰的标准,标准可以被定...

weixin_39575775的博客 2251

【AirPlay】苹果认证MFI学习

配件认证是一个过程,通过这个过程,可验证其配件符合MFi技术规范,并通过苹果指定的任何认证测试。MFi门户中的产品计划 "认证 "页面将指导你完成特定配件所需的认证步骤,并指出何时完成所有要求。在完成所有MFi认证要求之前,你不得制造、分发或销售任何配件。在开始MFi认证过程之前,你必须测试你的配件,以确保它符合最新的MFi技术规范,通过产品计划 "测试计划 "上的所有适用测试,并与它将声称具有兼容性的每个苹果设备兼容。

天天的博客 2277

[java][log4j]最详细的Log4j使用教程

其中,level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。当然除了上面的配置方法,还有其它,比如做一个J2EE应用,在J2EE应用使用Log4j,必须先在启动服务时加载Log4j的配置文件进行初始化,可以在web.xml中进行。配置文件的大致内容:log4j可以指定输出的log级别的最低等级,以及log的输出配置格式,每个log可以指定多个输出方式。

一名不太专业的程序员 4301

PCL 平面点云的凹多边形边界提取【2025最新版】

平面点云的凹多边形边界提取及边界轮廓线绘制。博客长期更新,本文最近更新时间为:2025年1月6日。

点云侠的博客 7185

Log4j Kotlin API 使用教程

Log4j Kotlin API 使用教程 项目介绍 Log4j Kotlin API 是 Apache Log4j 的一个子项目,提供了一个 Kotlin 友好的接口来与 Log4j API 进行日志记录。该项目的主要目标是简化 Kotlin 开发者在日志记录方面的操作,使其更加符合 Kotlin 的编程习惯。 项目快速启动 环境要求 Java 8 或更高版本 Kotlin 1.6.21 或更...

gitblog_01189的博客 991

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Log4J使用教程

1.新建一个JAva工程,导入包log4j-1.2.17.jar,整个工程最终目录如下 2、src同级创建并设置log4j.properties ### 设置### log4j.rootLogger = debug,stdout,D,E ### 输出信息到控制抬 ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4...

weixin_45395179的博客 741

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Log4j Tools 使用教程

Log4j Tools 使用教程 1. 项目介绍 Log4j Tools 是由 JFrog 开发的一个开源项目,旨在帮助开发者更好地管理和分析 Log4j 日志。该项目提供了一系列工具,包括日志扫描、版本检测和日志分析等功能,帮助开发者快速定位和解决与 Log4j 相关的问题。 2. 项目快速启动 2.1 环境准备 在开始使用 Log4j Tools 之前,请确保您的系统已经安装了以下环境: J...

gitblog_01123的博客 574

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Apache Log4j Tools 使用教程

Apache Log4j Tools 使用教程 1. 项目的目录结构及介绍 Apache Log4j Tools 是一个由 Apache 维护的开源项目,主要用于 Log4j 项目的内部工具。以下是项目的目录结构及其介绍: logging-log4j-tools/ ├── log4j-changelog/ │ ├── src/ │ └── pom.xml ├── log4j-docgen/...

gitblog_01193的博客 906

第三百零三节 Log4j教程 - Log4j安装

第三百零三节 Log4j教程 - Log4j安装

2301_78772942的博客 1181

IDEA下配置Log4j教程

我是创建完项目之后,配置的Log4j,不确定下次再新建项目时,还需要重新配置不。 1.pom.xml中配置依赖,注意标签<dependency>,一定在标签<dependencies>中 <dependency> <groupId>log4j</groupId> <artifactId...

lq18804095672的博客 6637

Apache Log4j Jakarta 项目使用教程

Apache Log4j Jakarta 项目使用教程 1. 项目的目录结构及介绍 Apache Log4j Jakarta 项目的目录结构如下: logging-log4j-jakarta/ ├── log4j-jakarta-jms/ ├── log4j-jakarta-parent/ ├── log4j-jakarta-smtp/ ├── log4j-jakarta-web/ ├── src...

gitblog_01122的博客 941

Log4j教程

Apache log4j ,Java中的经典日志记录工具。 以下是一系列Log4j 1.2教程: Log4j教程 Log4j Hello World示例 一个简单的Log4j hello世界示例,一个快速入门指南。 log4j.properties示例 属性文件格式的Log4j配置。 log4j.xml示例 XML文件格式的Log4j配置。 Spring MV...

一名可爱的技术搬运工 177

log4j教程_Log4j教程

log4j教程Welcome to log4j tutorial. Log4j is most used logging framework in java applications. In this log4j tutorial, we will go through log4j basics, it’s configuration and then see it in action in ja...

从零开始的教程世界 303

第三百零七节 Log4j教程 - Log4j日志格式、Log4j日志到文件

第三百零七节 Log4j教程 - Log4j日志格式、Log4j日志到文件

2301_78772942的博客 1459

LOG4J教程

http://www.mldn.cn/topic/log4j/index.htm 教程

梦醒2010 131
上一篇: 最详细的Log4j使用教程
下一篇: 使用VMware安装OS X 10.8 Mountain Lion (多图/零基础/保证成功安装) .
AndyChen9988
博客等级 码龄11年 276粉丝 89原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值