使用配置文件
log4j.rootCategory=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout #输出格式 log4j.appender.stdout.layout.ConversionPattern=%p [%t] %C.%M(%L) | %m%n
log4j的输出如下
DEBUG [main] LogTest.main(9) | I'm DEBUG INFO [main] LogTest.main(10) | I'm INFO WARN [main] LogTest.main(11) | I'm WARN ERROR [main] LogTest.main(12) | I'm ERROR FATAL [main] LogTest.main(13) | I'm FATAL i'm syso
对于有强迫症的同学来说,上面的输出看起来有点别扭,现在更改配置如下
log4j.rootCategory=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%-5p\: %d{HH\:mm\:ss,SSS} %C{1}[ln\:%L]\: %m%n
输出如下
DEBUG: 14:30:19,022 LogTest[ln:9]: I'm DEBUG INFO : 14:30:19,027 LogTest[ln:10]: I'm INFO WARN : 14:30:19,027 LogTest[ln:11]: I'm WARN ERROR: 14:30:19,028 LogTest[ln:12]: I'm ERROR FATAL: 14:30:19,028 LogTest[ln:13]: I'm FATAL i'm syso
现在看起来舒服点。
Log4j中常用的参数表:
参数 |
描述 |
实例 |
c |
输出Logger所在的类别(即Logger的名字)。 允许使用%c{数字}输出部分的名字(从右边往左边数)。见实例 |
%c将输出com.log4j.Log4jTest %c{1}将输出Log4jTest %c{2}将输出log4j.Log4jTest %c{3}将输出com.log4j.Log4jTest |
C |
输出Logger所在类的名称 有时候Logger的名称不同于类名,例如Hibernate中用org.hibernate.SQL作为所有输出DML语句的Logger的名称,便于控制。允许使用%C{数字}输出部分的名称(从右边往左边)。见实例 |
%C将输出com.log4j.Log4jTest %C{1}将输出Log4jTest %C{2}将输出log4j.Log4jTest %C{3}将输出com.log4j.Log4jTest |
d |
输出日期。允许使用%d{yyyy-MM-dd HH:mm:ss}格式化日期。%d不仅支持JDKSimpleDateFormat的日期格式,还支持log4j自己的日期格式,例如ABSOLUTE,DATE,ISO8601等 |
%d将输出2013-06-06 22:24:25,353 %d{yyyy-MM-dd}将输出2013-06-06 %d{ABSOLUTE}将输出22:24:25,353 %d{DATE}将输出06六月2013 22:24:25,253 |
F |
输出所在的类文件名称 |
%F将输出Log4jTest.java |
l |
输出语句所在的行数,包括类名,方法名,文件名,行数等 |
%l将输出com.log4j.test.Log4jTest.main(Log4jTest.java:50) |
L |
输出语句所在的行数,只输出数字 |
%L将输出 50 |
m |
输出日志 |
输出日志,即log.info(“”),log.debug(“”)参数 |
M |
输出方法名 |
%M将输出main |
n |
换行.Windows下输出\r\n,Linux下输出\n |
含行 |
p |
输出日志级别(prioriry) |
DEBUG,INFO,ERROR,FITAL等 |
r |
输出从程序启动到输出该日志之间的时间间隔,单位毫秒 |
%r将输出300 |
t |
输出当前的线程名称 |
%t将输出main,Thread-0,Thread-1等 |
% |
%%用来输出百分号 |
|
相关推荐
当我们面对特定项目需求,比如需要自定义日志文件名和日志输出格式时,Log4j同样提供了相应的解决方案。 首先,让我们深入理解如何自定义日志文件名。默认情况下,Log4j的日志文件名通常是固定的或者基于时间戳生成...
《Log4j将System.out重定向到Log4j输出详解》 在日志管理中,Log4j是一款广泛使用的开源日志框架,它允许开发者灵活地控制日志信息的输出方式和级别。当我们习惯于使用`System.out.println()`进行调试时,如何将...
本文将深入探讨如何利用Log4j进行日志输出格式化以及设置日志文件名格式化,以满足公司的标准化需求。 首先,我们来看日志输出格式化。Log4j的核心在于其灵活性,可以通过自定义布局模板来控制日志输出的格式。最...
通过配置log4j,我们可以控制日志的输出位置、级别以及格式。 ### 二、Log4j配置 Log4j的配置主要通过一个XML或.properties文件进行,通常命名为log4j.properties或log4j.xml。以下是一个基本的log4j.properties...
为了改善这些问题,Tomcat提供了一种机制,允许我们通过配置和替换特定的jar包来使用Log4j输出catalina.out日志。这可以通过修改Tomcat的配置文件并引入Log4j的jar包来实现。 下面是具体的操作步骤和配置方法: 1....
Log4j是Apache的一个开源项目,它提供了一个灵活的日志系统,允许开发者在运行时控制日志信息的级别、格式以及输出位置,包括文件、控制台、数据库等。 描述"一直在使用log4j。输出到文件的方式配置log4j。这是一个...
Log4j 的核心组件包括日志记录器(Logger)、日志输出目的地(Appender)和日志格式化器(Layout)。 二、配置 Log4j.properties 文件 在 SSM 整合项目中,配置 Log4j.properties 文件是必不可少的步骤。该文件...
本话题将深入探讨如何使用Log4j实现多文件输出打印,以及自定义日志的配置。 首先,我们要理解Log4j的基本工作原理。Log4j的核心组件包括Logger、Appender和Layout。Logger负责生成日志事件,Appender则负责接收...
**三、Log4j配置详解** 1. **日志级别**: 包括DEBUG、INFO、WARN、ERROR和FATAL。开发者可以通过设置日志级别来过滤输出信息,例如,只显示错误和警告,或者包括所有级别的信息。 2. **Appenders**: Appender是Log...
设置log4j的根目录,值为 日志等级(DEBUG,INFO,WARN,ERROR,FATAL) , 输出目标名称 log4j.rootLogger=DEBUG,A1 设置输出方式,常用的有: ConsoleAppender 在控制器中输出信息 RollingFileApperder 在文件中输出...
Log4j主要包括三个关键部分:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger负责生成日志事件,Appender决定这些事件如何被输出(例如,写入文件、发送邮件或显示在控制台),而Layout则决定了日志...
- **Logger**: 日志记录器,是Log4j的核心组件,负责实际的日志输出。你可以为每个功能模块创建一个独立的Logger,以便区分日志来源。 - **Appender**: 输出目的地,用于定义日志信息被发送到哪里,如控制台、文件...
Log4j主要包括三个核心组件:配置器(Configurator)、日志器(Logger)和布局器(Layout)。配置器负责读取配置文件并设置日志行为;日志器是实际执行日志记录的对象,可以按照不同的级别(如DEBUG、INFO、WARN、...
**标题解析:** "log4j输出日志到数据库表中" 指的是使用Log4j这个流行的Java日志框架,将日志记录存储在数据库的特定表中,而不是默认的文本文件或控制台。这通常是出于日志管理、分析和长期存储的需求。 **描述...
3. **强大的异步日志功能**:Log4j2提供了基于LMAX Disruptor库的强大异步日志处理能力,显著提高了日志记录的性能。 4. **插件式架构**:Log4j2采用了插件式的软件架构,这使得框架易于扩展而无需修改其核心代码。...
Log4j主要包括三个核心组件:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger是日志记录的起点,Appender定义了日志的输出位置和方式,而Layout则决定了日志的格式。 集成Log4j到Android工程: 1. *...
配置Log4j通常通过一个XML或JSON格式的配置文件完成,例如`log4j2.xml`或`log4j2.json`,这个文件定义了日志的输出级别、目的地(如控制台、文件、数据库等)以及格式。 总的来说,Log4j 2是Java开发中不可或缺的...
以下是一个基本的 `log4j.properties` 示例,用于设置日志级别、输出目的地及格式: ``` log4j.rootLogger=DEBUG, Console, FileAppender # 控制台输出 log4j.appender.Console=org.apache.log4j....
总结,SLF4J和Log4j的组合使用让日志管理更加灵活,开发者可以通过SLF4J的简洁API进行日志记录,同时利用Log4j的强大功能,如自定义输出格式和多种输出目的地。通过适当的配置和测试,我们可以确保日志系统按照预期...
参照了几个网上大神配置,部分教程的描述有误,最终调试完成,可以实现kettle日志输出,测试版本...需要替换的文件为,Kettle的程序目录下data-integration-6.0\plugins\kettle5-log4j-plugin中有一个log4j.xml文件。