`

log4j 入门实例 (三) 输出布局(layout)

阅读更多
log4j提供了以下几种layout
- org.apache.log4j.HTMLLayout (以HTML表格形式布局)
- org.apache.log4j.SimpleLayout (包含日志信息的级别和信息字符串)
- org.apache.log4j.TTCCLayout (包含日志产生的时间,执行绪,类别等信息。)
- org.apache.log4j.PatternLayout (可以灵活的指定布局模式)


这里看一下SimpleLayout的输出:

DEBUG - In the main method
INFO - This is info message
ERROR - This is error message
FATAL - This is fatal message

只有级别和信息被显示了出来

这里的难点是日志信息的样式的自定义。
自定义是通过log4j的转换字符实现的。具体信息在http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html

自定义实例1:
log4j.appender.appender2=org.apache.log4j.ConsoleAppender
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=%r [%t] %p %c %l %m%n
这个设定会输出以下的console信息:
0 [main] DEBUG com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:12) In the main method
4 [main] INFO com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:13) This is info message
5 [main] ERROR com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:14) This is error message
5 [main] FATAL com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:15) This is fatal message

%r -表示从创建该layout到该事件发生之间所经过的时间
[%t] -中括号没有特殊意义,表示就那么放在信息中。 %t表示执行该事件的线程的名称
%p -表示该日志事件的优先级, 比如INFO ,DEBUG
%c -表示该事件所在的完整类别名。 这里如果写%c{1},就会显示为HelloLog4J,就没有包名了。
%m -输出日志信息
%n -换行符



自定义实例2:
log4j.appender.appender2=org.apache.log4j.ConsoleAppender
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=[%d{yy/MM/dd HH:mm:ss:SSS}][%C-%M]%m%n

上面的代码会生成以下的log信息:
hello log4j
[13/12/12 19:20:17:802][com.lj.log4j.HelloLog4J-main]In the main method
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is info message
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is error message
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is fatal message

前面的是日期格式, 是由%d{}设定的。

分享到:
评论

相关推荐

    Log4j入门实例Log4j入门实例

    Log4j主要由三部分组成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于记录日志信息,Appender决定日志信息输出到哪里,而Layout则规定了日志信息的格式。 1. **Logger**:Logger是日志记录的...

    log4j入门、详解

    本篇文章将深入探讨Log4j的入门知识和核心特性。 ### 1. Log4j简介 Log4j是基于Java的日志框架,最初由Ceki Gülcü设计,旨在提供灵活且高效的日志记录解决方案。Log4j提供了丰富的配置选项,可以控制日志信息的...

    Log4j 入门到详解[推荐].pdf

    ### Log4j从入门到详解知识点汇总 #### 1. Log4j简介 Log4j是Apache的一个开源项目,主要用于实现日志记录功能。通过使用Log4j,开发者可以非常方便地控制日志信息的输出目的地(如控制台、文件等)、每条日志的...

    log4j入门、详解.pdf

    ### Log4j 入门与详解 #### 一、Log4j简介 Log4j是Apache组织提供的一个开源日志框架,它可以帮助开发者轻松地在应用程序中实现日志记录功能。传统的日志记录方式通常是在代码中直接使用`System.out.println()`等...

    Log4j教程

    在Java代码中,我们通过引入Log4j的API并获取对应的Logger实例来记录日志: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass....

    log4j从入门到详解

    - `log4j.appender.*.layout`: 设置了appender使用的布局。 下面是一个更详细的配置文件示例: ```properties # 根logger设置为debug级别,使用appender1 log4j.rootLogger=debug, appender1 # 定义appender1为...

    log4J最简单入门

    - `log4j.appender.stdout.layout=org.apache.log4j.PatternLayout`: 指定了控制台输出器的日志布局模式(PatternLayout)。 - `log4j.appender.stdout.layout.ConversionPattern`: 定义了日志输出的具体格式。 #### ...

    log4j2用户指南

    Appender 是 Log4j2 中的核心组件之一,负责将日志事件输出到不同的目的地: - **Console Appender**:输出到控制台。 - **File Appender**:将日志记录写入文件。 - **DB Appender**:记录到数据库。 - **SMTP ...

    java学习log4j详细文档和入门工程

    Log4j由三个主要组件构成:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger用于记录日志信息,Appender定义了日志输出的目的地,如控制台、文件、数据库等,而Layout则决定了日志信息的格式。 **2. ...

    log4j入门到详解

    log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n ``` 4. **使用Log4j** - 在Java代码中,我们通过`Logger`类获取...

    log4j入门与精通教程

    ### log4j入门与精通教程 #### 一、引言 在软件开发过程中,日志记录是一项非常重要的功能。它不仅能够帮助开发者更好地理解和追踪应用程序的行为,还能够在系统出现故障时提供关键信息以便进行问题诊断。传统的...

    Log4j的HelloWorld 在javaSE中入门使用一

    Log4j由三个主要组件构成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于生成日志消息,Appender负责将这些消息输出到指定的位置,而Layout则决定了日志消息的格式。 步骤1:引入Log4j库 在...

    log4j日志管理安装使用文档

    `log4j.appender.Console` 和 `log4j.appender.File` 分别定义了输出到控制台和文件的Appender。通过 `Target` 属性指定输出位置,`layout` 属性定义了日志的显示格式。 3.1.3 配置日志信息的格式(布局) `...

    最详细的Log4j使用教程

    3. **输出格式**:Log4j允许自定义日志的输出格式,这通过`layout`组件实现。常见的布局类型有`PatternLayout`和`SimpleLayout`,其中`PatternLayout`允许更复杂的格式化选项。 三、高级特性 除了基础功能,Log4j...

    log4j_tutorial.rar_log4j java

    《Java日志记录:Log4j入门教程》 在Java编程中,日志记录是一项至关重要的任务,它有助于开发者在程序运行过程中跟踪错误、调试代码以及监控系统性能。Log4j是Apache软件基金会开发的一个开源日志框架,因其强大的...

    log4net控件应用入门实例源码.zip

    **log4net控件应用入门实例源码** `log4net`是Apache组织提供的一款开源的日志记录框架,广泛应用于.NET平台,它为应用程序提供了一种灵活、强大的日志记录方式。这个压缩包中的源码实例是针对初学者设计的,旨在...

    log4j-在控制台打印sql的源码

    1. **Log4j基础**:Log4j主要由三个核心部分组成:Logger(记录器)、Appender(输出端)和Layout(布局)。Logger负责记录日志信息,Appender定义了日志输出的位置(如控制台、文件等),Layout则决定了日志的格式...

Global site tag (gtag.js) - Google Analytics