- 浏览: 377249 次
- 来自: 北京
文章分类
- 全部博客 (237)
- XML (6)
- JavaSE (39)
- Junit (1)
- Maven (10)
- JavaScript (12)
- JavaEE (16)
- HTML5 (10)
- java多线程 (8)
- Hibernate (30)
- Java反射 (3)
- Spring (11)
- Struts (1)
- svn (2)
- linux (12)
- 代码实例 (1)
- 设计模式 (1)
- UML (1)
- javassist (1)
- Oracle (3)
- Hibernate异常 (9)
- DWR (6)
- Java泛型 (2)
- SpringMVC (11)
- Dbunit (3)
- github (2)
- Algorithm (1)
- zTree (1)
- jquery (7)
- freemarker (4)
- mysql (5)
- ffmpeg (1)
- 编码 (1)
- lucene (15)
- hadoop (1)
- JVM (1)
- Regular Expressions (5)
- myeclipse (1)
- 爬虫 (7)
- 加密 (3)
- WebService (2)
- Socket (2)
- Windows (1)
最新评论
-
wxpsjm:
好直接
HV000030: No validator could be found for type: java.lang.Integer. -
wxhhbdx:
学习了,对新手来说很不错的教程。
SpringMVC入门 (二) 数值传递 -
xgcai:
正好在学dwr
DWR入门 (二)用户实例
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:
上面的代码会生成以下的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{}设定的。
- 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{}设定的。
发表评论
-
webservice获取访问服务的ip地址
2014-08-11 16:02 19771. 首先注入javax.xml.ws.WebServiceC ... -
java.lang.IllegalStateException: ServletConfig has not been initialized
2014-08-06 13:04 2994java.lang.IllegalStateException ... -
Character reference "�" is an invalid XML character.
2014-07-10 18:35 2135org.xml.sax.SAXParseException: ... -
jquery.validate.js的错误信息显示位置
2014-03-04 14:04 2260问题描述: 如图所示, 这里的代码是: <tr ... -
IE下的li:hover问题解决
2014-02-19 22:26 896当在css中设定li:hover{cursor:pointer ... -
HV000030: No validator could be found for type: java.lang.Integer.
2014-01-11 12:58 6786http://stackoverflow.com/questi ... -
图片压缩
2014-01-05 22:42 0package org.konghao.basic.util; ... -
[转]Access restriction:The type JPEGCodec is not accessible due to restriction on
2014-01-05 22:23 894Access restriction:The type JPE ... -
uploadify上传文件实例
2014-01-05 12:35 1310以Maven和SpringMVC为例。 1. 上官网http ... -
jsp include page <jsp:param value="val" name="n"/>
2013-12-18 22:09 1142<jsp:include page="/jsp ... -
log4j 关于rootLogger以及一些问题
2013-12-17 12:56 1839今天遇到的一些问题。 package com.lj.b ... -
dbunit错误:non-uppercase input column:xx in ColumnNameToIndexes cache map
2013-12-14 18:06 3296testLoad(com.lj.core.dao.Test ... -
log4j 入门实例 (二) 输出到文件以及网页
2013-12-12 17:41 1044这里先讲如何将log4j的日志信息输出到文本文件。 1. ... -
log4j 入门实例 (一) HelloLog4j
2013-12-12 17:36 1530首先要下载官网的jar包以及说明文档文件。 文件里包含了log ... -
JPA初步学习
2013-10-29 17:33 0这两天在写一个ORM方法。 实现类对象和XML文件的mappi ... -
使用jackson生成json对象的实例
2013-10-24 11:25 3746这里写了一个将json和Java的Object对象进行互相转换 ... -
Servlet从硬盘读取图片并传送到前台
2013-10-21 20:39 1504public void doGet(HttpServletR ...
相关推荐
Log4j主要由三部分组成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于记录日志信息,Appender决定日志信息输出到哪里,而Layout则规定了日志信息的格式。 1. **Logger**:Logger是日志记录的...
本篇文章将深入探讨Log4j的入门知识和核心特性。 ### 1. Log4j简介 Log4j是基于Java的日志框架,最初由Ceki Gülcü设计,旨在提供灵活且高效的日志记录解决方案。Log4j提供了丰富的配置选项,可以控制日志信息的...
### Log4j从入门到详解知识点汇总 #### 1. Log4j简介 Log4j是Apache的一个开源项目,主要用于实现日志记录功能。通过使用Log4j,开发者可以非常方便地控制日志信息的输出目的地(如控制台、文件等)、每条日志的...
### Log4j 入门与详解 #### 一、Log4j简介 Log4j是Apache组织提供的一个开源日志框架,它可以帮助开发者轻松地在应用程序中实现日志记录功能。传统的日志记录方式通常是在代码中直接使用`System.out.println()`等...
在Java代码中,我们通过引入Log4j的API并获取对应的Logger实例来记录日志: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass....
- `log4j.appender.*.layout`: 设置了appender使用的布局。 下面是一个更详细的配置文件示例: ```properties # 根logger设置为debug级别,使用appender1 log4j.rootLogger=debug, appender1 # 定义appender1为...
- `log4j.appender.stdout.layout=org.apache.log4j.PatternLayout`: 指定了控制台输出器的日志布局模式(PatternLayout)。 - `log4j.appender.stdout.layout.ConversionPattern`: 定义了日志输出的具体格式。 #### ...
Appender 是 Log4j2 中的核心组件之一,负责将日志事件输出到不同的目的地: - **Console Appender**:输出到控制台。 - **File Appender**:将日志记录写入文件。 - **DB Appender**:记录到数据库。 - **SMTP ...
Log4j由三个主要组件构成:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger用于记录日志信息,Appender定义了日志输出的目的地,如控制台、文件、数据库等,而Layout则决定了日志信息的格式。 **2. ...
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由三个主要组件构成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于生成日志消息,Appender负责将这些消息输出到指定的位置,而Layout则决定了日志消息的格式。 步骤1:引入Log4j库 在...
`log4j.appender.Console` 和 `log4j.appender.File` 分别定义了输出到控制台和文件的Appender。通过 `Target` 属性指定输出位置,`layout` 属性定义了日志的显示格式。 3.1.3 配置日志信息的格式(布局) `...
3. **输出格式**:Log4j允许自定义日志的输出格式,这通过`layout`组件实现。常见的布局类型有`PatternLayout`和`SimpleLayout`,其中`PatternLayout`允许更复杂的格式化选项。 三、高级特性 除了基础功能,Log4j...
《Java日志记录:Log4j入门教程》 在Java编程中,日志记录是一项至关重要的任务,它有助于开发者在程序运行过程中跟踪错误、调试代码以及监控系统性能。Log4j是Apache软件基金会开发的一个开源日志框架,因其强大的...
**log4net控件应用入门实例源码** `log4net`是Apache组织提供的一款开源的日志记录框架,广泛应用于.NET平台,它为应用程序提供了一种灵活、强大的日志记录方式。这个压缩包中的源码实例是针对初学者设计的,旨在...
1. **Log4j基础**:Log4j主要由三个核心部分组成:Logger(记录器)、Appender(输出端)和Layout(布局)。Logger负责记录日志信息,Appender定义了日志输出的位置(如控制台、文件等),Layout则决定了日志的格式...