先了解原理,再讲怎么使用
一、log4j的简述
Log4j最主要的三大基本构件:
1.Appenders(定义log信息输出到哪里,如控制台,是指文件中等)
org.apache.log4j.ConsoleAppender (控制台)
org.apache.log4j.FileAppender (文件)
org.apache.log4j.RollingFileAppender(滚动文件,自动记录最新日志)
org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件)
org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)
2.Layouts(log信息进行格式化,方便阅读)
%m 输出代码中指定的消息;
%M 输出打印该条日志的方法名;
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL;
%r 输出自应用启动到输出该log信息耗费的毫秒数;
%c 输出所属的类目,通常就是所在类的全名;
%t 输出产生该日志事件的线程名;
%n 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;
3.Categories(对log信息按级别过滤,指定那种级别的信息输出)
日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。
日志记录器(Logger)的可用级别Level (不包括自定义级别 Level)
DEBUG Level指出细粒度信息事件对调试应用程序是非常有帮助的。
INFO level表明 消息在粗粒度级别上突出强调应用程序的运行过程。
WARN level表明会出现潜在错误的情形。
ERROR level指出虽然发生错误事件,但仍然不影响系统的继续运行。
FATAL level指出每个严重的错误事件将会导致应用程序的退出
二、使用(这里给出控制台和每日产生一个日志文件的配置)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- 日志输出到控制台 -->
<appender name="myConsole" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss} %m (%F:%L) \n"/>
</layout>
</appender>
<!-- 日志输出到指定文件 -->
<appender name="myFile" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="${htglxt}log/app.log" />
<param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%-5p %d{MM-dd HH:mm:ss} %m (%F:%L) \n" />
</layout>
</appender>
<!-- 定义输出的类别 -->
<category name="java.sql">
<priority value="debug" />
</category>
<category name="com.ibatis">
<priority value="error" />
</category>
<!-- 根logger的设置
(这一步很重要,会将上面定义的两种输出方式都加进入,也可以选其一,建议开发过程使用控制台,生 产环境使用文件)
-->
<root>
<priority value ="error"/>
<appender-ref ref="myConsole" />
<appender-ref ref="myFile" />
</root>
</log4j:configuration>
特别注意:上面的配置中的红色标记要特别注意,这里配置的是你的项目根路径,此参数是在wex.xml文件中配置的,名字可以随便命名,这里推荐使用项目名称。
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>htglxt</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>WEB-INF/classes/log4j.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
当然输出的位置也可以使用绝对路径,这里不再演示。
相关推荐
- **Appender配置**:在properties文件中,每个appender都有自己的配置,如`log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender`定义了一个滚动日志文件的appender。 3. **日志级别** - **日志级别*...
要在项目中使用Log4j,首先需要将`log4j.jar`添加到项目的类路径中,然后创建或引用`log4j.xml`配置文件。在代码中,通过以下方式创建和使用Logger: ```java import org.apache.log4j.Logger; public class ...
Log4j2 配置模板学习笔记 Log4j2 是 Java 语言中一种流行的日志记录工具,它提供了灵活的日志记录管理功能。下面我们将学习 Log4j2 配置模板的使用和配置。 引入 Log4j2 依赖 在使用 Log4j2 之前,需要在 Maven ...
- 在log4j配置文件中,我们已经定义了日志输出到文件,如`/var/log/app.log`。`DailyRollingFileAppender`会根据日期每天创建新的日志文件,避免单个文件过大。 6. **使用Log4j** - 在Java代码中,通过`Logger....
本篇文章将深入探讨这两个关键组件:日志配置文件`log4j.xml`和MySQL数据库驱动文件`mysql-connector-java-5.1.39-bin.jar`。 首先,我们来了解`log4j.xml`。Log4j是Apache组织提供的一款开源的日志记录框架,广泛...
`log4j.properties`是Apache Log4j框架中用于配置日志记录行为的核心文件之一。通过这个文件,开发者可以定义日志消息的输出方式(例如控制台或文件)、日志级别(如DEBUG、INFO等)以及日志格式等内容。正确配置`...
在 SSM 整合项目中,需要在 web.xml 文件中指定 Log4j 配置文件的位置,以便 Spring 可以加载 Log4j 配置文件。下面是一个基本的 web.xml 配置: ``` <listener-class>org.springframework.web.util.Log4...
在实际应用中,将`log4j.jar`添加到项目的类路径中,并根据项目需求定制`log4j.properties`,即可实现有效的日志管理。这不仅有助于问题排查,也有利于系统维护和性能优化,因为过多的日志可能会占用大量磁盘空间,...
4. **log4j.properties**: 这是Apache Log4j的日志配置文件,用于管理应用程序的输出日志。你可以在这里配置日志级别(如DEBUG、INFO、WARN、ERROR等)、日志输出目的地(控制台、文件、数据库等)、以及不同的日志...
### 关于Log4j.xml配置文件的理解与应用 #### 一、引言 在Java开发领域,日志记录是至关重要的一个环节。它不仅能够帮助开发者更好地了解程序运行时的状态,还能在出现故障时快速定位问题所在。Log4j作为一款优秀...
1. **配置文件**:如`log4j2.xml`,这是Log4j2的配置中心,定义了日志记录的策略、级别、输出目标等。 2. **日志记录器(Logger)**:负责收集和处理日志事件。 3. **日志级别(Level)**:如`TRACE`, `DEBUG`, `...
标题中的“Log4J.xml”指的是Apache Log4j框架的配置文件。Log4j是Java平台上广泛使用的日志记录工具,它允许程序员以灵活和可配置的方式控制应用程序的日志输出。XML格式的配置文件提供了更高级别的结构和可读性,...
- `org.apache.log4j.FileAppender`:将日志输出到指定的文件中。 - `org.apache.log4j.DailyRollingFileAppender`:根据日期滚动日志文件,每天生成一个新的日志文件。 - `org.apache.log4j.RollingFileAppender...
### Log4j中配置日志文件相对路径方法详解 #### 概述 在软件开发过程中,日志记录是一项重要的功能,它有助于开发者调试程序、监控应用程序的运行状态以及追踪问题。`Log4j`作为一款优秀的日志管理工具,被广泛应用...
- **定义日志文件Appender**:如`log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender`,每天创建新的日志文件。 - **文件Appender属性**:`log4j.appender.FILE.File=logs/app.log`,指定日志文件的...
`log4j.properties`是Log4j的配置文件,通过它我们可以定制日志的级别、输出方式、格式等。一个基本的`log4j.properties`配置示例如下: ```properties # 设置全局日志级别 log4j.rootLogger=DEBUG, stdout, R # ...
首先,我们需要创建一个`log4j.properties`或`log4j.xml`配置文件,这个文件通常放在项目的`src/main/resources`目录下。在这个配置文件中,我们将定义日志的输出级别、布局模式以及输出目的地。 以下是一个基本的`...
- 配置文件可以是 `log4j.properties` 或 `log4j.xml`,通常放在项目的根目录或类路径下。 - 可以通过指定不同的 Appender 和 Layout 来控制日志的输出方式和格式。 3. **初始化 Logger 对象**:可以通过 `Logger...
解压“log4j.zip”后,我们通常会找到一个名为“log4j.properties”或“log4j.xml”的配置文件,这是Log4j的核心配置文件。例如,以下是一个简单的配置示例: ```properties # log4j.properties log4j.rootLogger=...
这个配置文件定义了 Log4j 的根记录器(rootLogger),包括日志输出级别、输出目的地和日志格式。 三、日志输出级别 Log4j 提供了五个日志输出级别: 1. DEBUG:调试信息 2. INFO:一般信息 3. WARN:警告信息 4....