`
Mr_Chunlei
  • 浏览: 29788 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

log4j配置文件学习

 
阅读更多

不要拷贝,即使自己写一遍也能学到东西:原地址

项目交接了,代码敏感(老大自己说的,我超不赞同)的老大们写的代码太牛了(从来不加注释)无语了,前期任务多,时间紧抱怨看段代码太浪费时间和精力,一天下来眼睛布满血丝。现在免疫了,抛开了太多顾虑,看一段代码很高兴啊哈哈(后期等死咧,任务超多,假期前列了一下18项,没自己时间,不过可以睡个好觉)

交接的项目中存在solr和ssh的项目,测试那边想将solr日志和ssh的日志分别打印出来,便于查找,自己还要模拟spring编写测试,所以查看了一下知识就直接帮他们配置了一下,但是配置两个地方先使用,现在有时间了,好好学习一下,后期帮他们修改一下,完善项目。

<pre name="code" class="html">log4j.rootLogger=INFO, CONSOLE, A
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppenderlog4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayoutlog4j.appender.CONSOLE.layout.ConversionPattern=[%-5p] %d{HH:mm:ss} (%F:%L) - %m%nlog4j.appender.A =org.apache.log4j.DailyRollingFileAppenderlog4j.appender.A.File = ../webapps/r2k/logs/log.txtlog4j.appender.A.layout=org.apache.log4j.PatternLayoutlog4j.appender.A.layout.ConversionPattern=[%-5p] %d{HH:mm:ss} (%F:%L) - %m%nlog4j.logger.com.apabi=DEBUG


上面的:

一、log4j.rootLogger=INFO, CONSOLE, A
其中rootLogger定义了日志输出的等级为INFO. 和输出地方为CONSOLE,A两个地方(可以理解为两个选择)。输出等级可以分为OFF<FATAL<ERROR<WARING<INFO<DEBUG<ALL,其中OFF最低,当选择OFF时不打出任何信息,INFO则打印出OFF,FATAL,ERROR,WARING,INFO信息,其他选项信息就可以理解了。CONSOLE ,A分别找到下面的一些配置信息


二、log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
这里定义了CONSOLE输出端的类型,所有的选择如下:

org.apache.log4j.ConsoleAppender(控制台),

org.apache.log4j.FileAppender(文件),

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)


三、log4j.appender.A.File = ../webapps/r2k/logs/log.txt
这里定义了输出文件夹,这里动态的制定了文件的地址,如在项目的log4j则配置日志文件到tomcat的webapps下的r2k项目的logs文件夹下的log.txt


四、log4j.appender.A.layout=org.apache.log4j.PatternLayout
这里定义了输出文件以什么样的形式进行展示,展示格式的所有选择如下:

org.apache.log4j.HTMLLayout(以HTML表格形式布局),

org.apache.log4j.PatternLayout(可以灵活地指定布局模式),

org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)


五、log4j.appender.A.layout.ConversionPattern=[r2k][%-5p] %d{HH:mm:ss} (%F:%L) - %m%n
<span style="font-family: Calibri;font-size:12px; line-height: 25.1875px;"></span><span style="font-family: Calibri;font-size:12px; line-height: 25.1875px;">log4j.appender.stdout.layout.ConversionPattern= [QC] %p [%t] %C.%M(%L) | %m%n</span>

如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern,打印参数如下:

%m输出代码中指定的消息

%p输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

%r输出自应用启动到输出该log信息耗费的毫秒数

%c输出所属的类目,通常就是所在类的全名

%t输出产生该日志事件的线程名

%n输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”

%d输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日22:10:28,921

%l输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。

[QC]是log信息的开头,可以为任意字符,一般为项目简称。

输出的信息

[TS] DEBUG [main] AbstractBeanFactory.getBean(189) | Returning cached instance of singleton bean 'MyAutoProxy'

具体讲解可参照第三部分定义配置文件中的格式化日志信息。


六、log4j.logger.com.apabi=DEBUG
指定项目中com.apabi包下的类的输出日志等级定义为DEBUG

 七、log4j.logger.org.apache.commons=ERROR
  log4j.logger.org.apache.struts=WARN

这两句是struts的包。

八、log4j.logger.org.springframework=DEBUG

此句为Spring的包。


九、 log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN
    log4j.logger.org.hibernate=DEBUG

此两句是hibernate的包。


  1. log4j.logger.com.fuyou.log.test2=debug,test2log
  2. log4j.logger.com.fuyou.log.test=debug,testlog

不同的包输出到不同的地方


4,log4j的使用

a)、从www.apache.org下载commongs-logging包;

b)、在你的class里面定义protectedfinalLoglogger=LogFactory.getLog(this.getClass());
c)、在需要日志输出的地方logger.info(...),logger.error(...),logger.debug(...),....注意,在使用时前最好做个判断if(logger.isDebugEnabled()){logger.debug("...");}其他类似。

1)需要考证,如果我不配置地方,呢么当项目来临时选择哪个

2)配置了com.hibernat= debug,而com.hibernate.de=info这个时候声明有没有顺序,是否会覆盖,需要参看源代码

分享到:
评论

相关推荐

    log4j配置文件

    log4j的简单配置,可以直接在项目中用,当然只是用自己学习时用。

    log4j使用手册和配置文件示例

    **log4j配置文件格式.txt、log4j配置文件基本含义说明.txt** 这两个文本文件可能包含了log4j配置文件的格式规范和详细解释,对于理解和编写配置文件非常有用。 总结来说,这个压缩包提供了log4j的使用教程、配置...

    log4j日志配置以及配置文件详解

    接下来,`log4j配置说明.txt`文件通常会提供更详细的解释和示例,包括如何配置不同的appender(如FileAppender、RollingFileAppender等),如何定义不同logger的级别,以及如何使用自定义的error handler和filter。...

    Log4j2学习log4j2.xml配置模板

    Log4j2 配置模板学习笔记 Log4j2 是 Java 语言中一种流行的日志记录工具,它提供了灵活的日志记录管理功能。下面我们将学习 Log4j2 配置模板的使用和配置。 引入 Log4j2 依赖 在使用 Log4j2 之前,需要在 Maven ...

    log4j的配置示例

    首先,Log4j的核心在于其配置文件——`log4j.properties`或`log4j.xml`,这决定了日志输出的级别、格式和目的地。配置文件的基本结构包括定义日志输出的Appender(输出目的地,如控制台、文件、电子邮件等)和设置...

    Log4j配置实例

    Log4j配置文件** Log4j的配置主要通过一个名为`log4j.properties`或`log4j.xml`的配置文件进行。这个文件定义了日志的行为,包括日志级别、输出目的地、格式等。下面是一个简单的`log4j.properties`配置示例: ```...

    log4j配置

    Log4j的配置通常通过一个XML或properties格式的配置文件完成,例如`log4j.properties`或`log4j.xml`。以下是一个基本的`log4j.properties`配置示例: ```properties # 设置根日志器的级别为INFO log4j.rootLogger=...

    log4j(内含log4j的jar包和log4j的配置文件:有DEBUG和INFO两种)

    **标题与描述解析** ...综上所述,Log4j是一个强大的日志框架,通过配置文件可以灵活控制日志的输出,而提供的RAR压缩包包含了Log4j的运行库和不同级别的配置示例,对于学习和使用Log4j进行日志管理非常有帮助。

    [简单]log4jdbc-log4j2配置简记

    3. 配置log4j2:创建一个log4j2的配置文件(如log4j2.xml或log4j2.json),定义日志输出的模式和级别。例如,以下是一个简单的配置示例: ```xml [%t] %-5level %logger{36} - %msg%n"/&gt; `...

    Log4j将System.out搞到log4j中输出四

    下面是一个简单的示例,展示如何在Log4j配置文件中设置ConsoleAppender: ```xml &lt;appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"&gt; &lt;layout class="org.apache.log4j.PatternLayout"&gt; ...

    log4j的配置

    本文将基于提供的log4j.xml配置文件,详细解析其各项设置。 #### 二、log4j.xml配置文件结构 log4j.xml配置文件遵循XML格式,主要由以下几部分组成: 1. **文档声明**:用于声明当前XML文档的版本和编码方式。 - ...

    Log4j配置资料大全

    Log4j是Apache的一个开源项目,它为Java应用程序提供了一个灵活的日志系统。这个系统能够让你控制日志信息的输出地方...通过深入学习和实践,你可以掌握如何根据项目需求定制Log4j配置,实现高效、有针对性的日志记录。

    log4j 基本使用 配置文件 学习笔记

    **log4j基础使用与配置文件详解** 在Java开发中,日志管理是不可或缺...通过阅读《log4j学习笔记.doc》、《log4j.doc》、《log4j配置文件.doc》和《log4j的基本使用.doc》等文档,你将能更深入地掌握log4j的使用技巧。

    log4j各版本和配置文件

    《log4j各版本与配置文件详解》 在Java编程领域,日志管理是一个至关重要的环节,它能够帮助开发者追踪程序运行状态,定位错误和异常,优化系统性能。Log4j作为Apache开源组织提供的一款强大的日志框架,因其灵活性...

    log4j简单使用

    5. **配置文件**: `log4j.properties`或`log4j.xml`是Log4j的配置文件,通过配置这些文件,我们可以定制日志行为。例如,我们可以指定哪个Logger的级别,选择哪个Appender,以及定义日志格式。 6. **Filter**: ...

    springmvc log4j 配置 demo

    在这个"springmvc log4j配置 demo"中,我们将探讨如何将Log4j集成到Spring MVC应用中,以便进行高效且有组织的日志管理。 首先,Log4j是Apache的一个开源项目,提供了一套灵活的日志记录系统。它的优点在于可配置性...

    深入学习log4J

    首先,我们来看看Log4J配置文件的学习。Log4J的核心在于其配置文件,通常命名为`log4j.properties`或`log4j.xml`。配置文件定义了日志的输出级别(如DEBUG、INFO、WARN、ERROR和FATAL)、输出目的地(控制台、文件、...

    log4j详解配置说明

    Log4j 的配置文件通常命名为 `log4j.properties`。配置项以键值对的形式出现,每个配置项都有其特定的功能。 - **根 Logger**: 定义了全局的日志级别和 Appender(输出目的地)。 - 格式:`log4j.rootLogger=...

Global site tag (gtag.js) - Google Analytics