1.首先到网站上下载logging-log4j-1.2.12.zip,解压到本地目录,然后把logging-log4j-1.2.12\dist\lib\log4j-1.2.12.jar复制到工程目录\WEB-INF\lib\log4j-1.2.12.jar下.
2.写资源文件mylog4j.properties
#(一) 配置rootLogger,参数一:指定日志级别为DEBUG,参数二、三:指定两个Appender输出组件,组件名分别为console,file
log4j.rootLogger=INFO,console,file
#-------日志级别(OFF,FATAL,ERROR,WARN,INFO,DEBUG,TRACE,ALL)依次由高到低
#(二) 配置Appender组件(输出目的地组件)
#配置第一个输出目的地为org.apache.log4j.ConsoleAppender(控制台)的Appender组件
log4j.appender.console=org.apache.log4j.ConsoleAppender
#配置第二个输出目的地为org.apache.log4j.FileAppender(文件)的Appender组件
log4j.appender.file=org.apache.log4j.FileAppender
#信息将输出到文件mylog.txt里
log4j.appender.file.File=mylog.txt
#--------Appender组件输出目的地有4种:
#----------------------------org.ajpache.log4j.ConsoleAppender(控制台)
#----------------------------org.ajpache.log4j.FileAppender(文件)
#----------------------------org.ajpache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
#----------------------------org.ajpache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
#(三) 配置Layout组件(输出格式组件)
#配置console组件的输出格式为org.apache.log4j.SimpleLayout(包含日志消息的级别和信息字符串)
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
#配置file组件的输出格式为org.apache.log4j.PatternLayout(%格式,可以灵活的指定布局格式)
log4j.appender.file.layout=org.apache.log4j.PatternLayout
#指定输出内容
log4j.appender.file.layout.ConversionPattern=%t %p - %m%n
#---------Layout组件输出格式有4种:
#----------------------------org.ajpache.log4j.HTMLLayout(以HTML表格形式布局)
#----------------------------org.ajpache.log4j.PatternLayout(可以灵活地指定布局模式)
#----------------------------org.ajpache.log4j.SimpleLayout(包括日志消息的级别和信息字符串)
#----------------------------org.ajpache.log4j.TTCCLayout(包含日志产生的时间、线程和类别等信息)
#---------PatternLayout布局格式:
#----------------------------%r (自程序开始后消耗的毫秒数)
#----------------------------%t (表示日志记录请求生成的线程)
#----------------------------%p (表示日志语句的优先级别)
#----------------------------%r (与日志请求相关的类别名称)
#----------------------------%c (日志消息所在的类名)
#----------------------------%m%n (表示日志消息的内容)
3.编写加载资源文件类
package com.li.tool;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.apache.log4j.PropertyConfigurator;
public class MyLog4J extends HttpServlet ...{
private static final String CONTENT_TYPE = "text/html; charset=GBK";
//Initialize global variables
public void init() throws ServletException ...{
String realpath = this.getServletContext().getRealPath("/");
String file = this.getInitParameter("mylog4j-config-file");
System.out.println(realpath+file);
PropertyConfigurator.configure(realpath + file);
}
//Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException ...{
}
//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException ...{
}
//Clean up resources
public void destroy() ...{
super.destroy();
}
}
4.注册Log4J到web.xml
<web-app>
...
<servlet>
<servlet-name>mylog4j</servlet-name>
<servlet-class>com.li.tool.MyLog4J</servlet-class>
<init-param>
<param-name>mylog4j-config-file</param-name>
<param-value>WEB-INF/classes/mylog4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
...
</web-app>
5.在类里使用
public class Test...{
private Logger logger=Logger.getLogger(this.getClass());
public static void main(String args[])...{
logger.debug("debug级别信息");
logger.info("info级别信息");
logger.warn("warn级别信息");
logger.error("error级别信息");
}
}
分享到:
相关推荐
Log4j是一个广泛使用的Java日志框架,它提供了强大的日志处理功能,包括日志级别控制、自定义日志格式、多路复用等。然而,由于Android系统对第三方库的限制,直接在Android工程中使用Log4j需要一些额外的步骤。本文...
由于log4j本身并不直接支持Android,我们可以使用log4android,这是一个专门为Android平台设计的log4j实现。在`build.gradle`文件中,添加以下依赖: ```groovy dependencies { implementation '...
#### 四、使用Log4j记录日志 1. **引入Log对象**: ```java protected final Log log = LogFactory.getLog(getClass()); ``` 在Java类中,需要引入Log对象以便记录日志信息。 2. **记录日志信息**: ```...
配置Log4j通常有两种方式,一种是使用XML格式的配置文件(log4j.xml),另一种是使用Java属性文件(log4j.properties)。本例中,描述提到的是使用后者。`log4j.properties`文件采用键值对的形式来设定配置,例如: ...
Log4j是一个广泛使用的开源日志框架,提供灵活的日志配置和多种级别的日志输出。本文将详细介绍如何在Tomcat服务器环境下使用Log4j接管生成日志文件。 首先,了解Log4j的核心组件: 1. **Logger**:负责生成日志...
Log4j和SLF4J(Simple Logging Facade for Java)是两个广泛使用的日志框架,它们各有优势并常被一起使用以提供更灵活的日志解决方案。本文将详细探讨如何通过SLF4J接口来使用Log4j进行日志记录,并展示一个测试代码...
Log4j是Apache组织提供的一款广泛使用的Java日志框架,以其灵活性和可配置性著称。本篇文章将深入探讨如何在Web项目中集成并使用Log4j,以便更好地管理和分析应用的日志。 首先,Log4j主要由三部分组成:配置文件...
Log4j、Log4j2和Fastjson的安全性问题在过去曾引起广泛关注,例如Log4j2的CVE-2021-44228(也被称为Log4Shell漏洞),这是一个远程代码执行漏洞,影响了许多使用Log4j2的系统。这个插件可能就是为了检测和利用这些...
Log4j2作为Java领域广泛使用的日志框架,提供了丰富的功能来满足这一需求。本文将详细介绍如何使用Log4j2实现日志数据脱敏。 一、Log4j2简介 Log4j2是Apache软件基金会开发的日志框架Log4j的升级版,它具有更高的...
Log4j是一个广泛使用的Java日志记录框架,它允许开发者在应用程序中轻松地记录各种级别的日志信息,如DEBUG、INFO、WARN、ERROR等。在2021年底,一个重大的安全漏洞(CVE-2021-44228)被发现在Log4j2的早期版本中,...
本文将详细介绍如何在Java中使用Log4j来记录日志,并将其写入数据库。 首先,我们需要了解Log4j的基本结构。一个简单的Log4j项目通常包含以下几个部分: 1. **配置文件**:Log4j的配置文件通常是`log4j.properties...
Java工程中使用Log4j详解 Log4j是Apache提供的一个流行的日志记录工具,广泛应用于Java工程中。它可以帮助开发者记录程序的执行过程,方便BUG的追踪和程序的优化。在Java工程中使用Log4j可以提高程序的可读性和可...
3. **配置Tomcat**:在`$CATALINA_HOME/lib`目录下添加`log4j-api.jar`和`log4j-slf4j-impl.jar`,这将使Tomcat使用Log4j2作为其内部的日志系统。 4. **排除其他日志实现**:确保你的应用中没有引入其他的日志实现...
通过以上步骤,Tomcat服务器将使用Log4j来管理catalina.out日志,这不但解决了日志文件过大和格式不统一的问题,而且提供了更丰富的日志管理功能,例如,可以利用Log4j强大的过滤、路由和格式化等功能,将日志管理得...
关于配置文件的名称以及在项目中的存放位置 log4j 2.x版本不再支持像1.x中的....如果本地要测试,可以把log4j2-test.xml放到classpath,而正式环境使用log4j2.xml,则在打包部署的时候不要打包log4j2-test.xml即可。
在Java应用中使用Log4j进行日志记录的第一步,是创建并配置log4j的属性文件(log4j.properties)。这个文件定义了日志的级别、输出目的地以及日志的格式。以下是一个典型的log4j配置示例: ```properties # 设置根...
2. 如果Tomcat中已经包含了其他日志库,可能需要将Log4j的JAR文件(如`log4j.jar`)添加到`lib`目录,以确保优先使用Log4j。 3. 在Tomcat的`web.xml`配置文件中,可能需要配置一个`ContextLoaderListener`,以确保在...
### 教你更简单的使用log4j日志 在日常的软件开发过程中,日志记录是必不可少的一个环节,它能够帮助我们追踪程序运行时的状态、定位问题所在,并且为后期维护提供重要的参考依据。Log4j作为Apache组织下的一个开源...
4. **使用Log4j漏洞扫描工具**:对于大型系统或包含大量JAR文件的环境,手动检查每个组件可能不切实际。此时,使用像“log4jscanner”这样的自动化工具可以大大提高效率,减少误报和漏报的风险。 5. **操作步骤**:...
2. **集成到WebLogic**: 在WebLogic中使用Log4j,我们需要将Log4j的JAR文件(如`log4j-x.x.x.jar`)添加到WebLogic的类路径中。这通常可以通过在WebLogic的`WEB-INF/lib`目录下放置Log4j JAR文件来实现。同时,确保`...