log4j组件介绍 
Log4j主要有三个组件:

  • Logger:负责供客户端代码调用,执行debug(Object msg)、info(Object msg)、warn(Object msg)、error(Object msg)等方法。
  • Appender:负责日志的输出,Log4j已经实现了多种不同目标的输出方式,可以向文件输出日志、向控制台输出日志、向Socket输出日志等。
  • Layout:负责日志信息的格式化。

Logger 层级介绍 
Logger的层级是logger名字指定的,如x.y 表示两层,x层和y层,x是y的父层级,x.y所在层级是y层级

log4j.additivity.* = false : 表示当前logger不需要打到父层级所指定的appender,只打到当前的appender; 
      默认true:表示当前logger将打印日志到当前的appender及所有的父层级所指定的appender

执行顺序及关系 
调用Log4j输出日志时,调用各个组件的顺序:

    • 1、日志信息传入 Logger。
    • 2、将日志信息封装成 LoggingEvent 对象并传入 Appender。
    • 3、在 Appender 中调用 Filter 对日志信息进行过滤,调用 Layout 对日志信息进行格式化,然后输出。     转自:http://gemantic.iteye.com/blog/1234996

首先要对配置文件的各个参数进行说明,这样才能合理的进行配置。

参数意义说明:

配置根Logger

  1. 其语法为:
  2. log4j.rootLogger = [ level ] , appenderName1, appenderName2, …
  3. level: 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或
  4. 者您定义的级别。Log4j建议只使用四个级别,优 先级从高到低分别是ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定 义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。
  5. appenderName: 就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。
  6. 例如:log4j.rootLogger=info,A1,B2,C3

输出级别的种类

  1. OFF 、FATAL 、ERROR、WARN、INFO、DEBUG、TRACE 、ALL
  2. OFF 为最高等级 关闭了日志信息
  3. FATAL  为可能导致应用中止的严重事件错误
  4. ERROR 为严重错误 主要是程序的错误
  5. WARN 为一般警告,比如session丢失
  6. INFO 为一般要显示的信息,比如登录登出
  7. DEBUG 为程序的调试信息
  8. TRACE 为比DEBUG更细粒度的事件信息
  9. ALL 为最低等级,将打开所有级别的日志

 

配置日志信息输出目的地

  1. log4j.appender.appenderName = fully.qualified.name.of.appender.class
  2. 1.org.apache.log4j.ConsoleAppender(控制台)
  3. 2.org.apache.log4j.FileAppender(文件)
  4. 3.org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
  5. 4.org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
  6. 5.org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

 

配置日志信息的格式

    1. log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
    2. 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局),
    3. 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
    4. 3.org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
    5. 4.org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)   转自:http://blog.csdn.net/hu_shengyang/article/details/6754031

转!!log4j基础的更多相关文章

  1. Log4J基础详解及示例大全

    去年这个时候,为做软件工程的大作业就详细学过Log4J的用法了,时隔一年想要在新的项目中好好使用一下的时候,发现几乎全忘了,悲催啊-- 再上网查资料,总是不能找到一篇符合我的口味,拿来就能轻松上手,方 ...

  2. log4j 基础教程【转】

    参考引用自: http://javacrazyer.iteye.com/blog/1135493 我的git地址: https://git.oschina.net/KingBoBo/Log4JDemo ...

  3. Log4j基础知识

    Log4J是Apache的一个开放源代码的项目.通过使用Log4J,程序员可以控制日志信息输送的目的地,包括控制台,文件,GUI组件和NT事件记录器,也可以控制每一条日志的输出格式,或通过定义每一条日 ...

  4. Log4J基础详解及示例大全(转)

    log4j可以通过使用配置文件的方式进行配置. 配置步骤如下: 1.定义日志组件logger 每个logger都可以拥有一个或者多个appender,每个appender表示一个日志的输出目的地,比如 ...

  5. log4j基础配置使用

    添加log4j的jar包:可以从maven处下载:https://mvnrepository.com/artifact/log4j/log4j/1.2.17 <!-- https://mvnre ...

  6. Log4J基础

    Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式.日志信息的优先级从高到低有ERROR.WARN. INFO.DEBUG,分别用来指定这条日志信息的重要程度: ...

  7. 《手把手教你》系列基础篇(八十六)-java+ selenium自动化测试-框架设计基础-Log4j实现日志输出(详解教程)

    1.简介 自动化测试中如何输出日志文件.任何软件,都会涉及到日志输出.所以,在测试人员报bug,特别是崩溃的bug,一般都要提供软件产品的日志文件.开发通过看日志文件,知道这个崩溃产生的原因,至少知道 ...

  8. Log4j配置详解(转)

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  9. log4j的配置

    转载:http://it.oyksoft.com/log4j/ 收藏:http://www.cnblogs.com/ITEagle/archive/2010/04/23/1718365.html 一. ...

随机推荐

  1. LoadRunner,一个简单的例子

    一.录制脚本,这个就不说了,但是可以说说录完一个简单的脚本之后可以做的一些后续工作 1.设置事务的开始跟结束点(参考他人的http://www.cnblogs.com/fnng/archive/201 ...

  2. ls 只显示目录

    只显示目录: ls -d */ 在实际应用中,我们有时需要仅列出目录,下面是 4 种不同的方法. 1. 利用 ls 命令的 -d 选项: $ ls -d */ 2. 利用 ls 命令的 -F 选项: ...

  3. Struts2 框架下 session 读出来为null

    我用的strust2框架,开始的时候这么写的: 在 登陆函数中(注释部分): public String dealerLogin(){        EntityInfo entityinfo=dea ...

  4. SQL Nexus

    在前面的SQLdiag系列中有提到SQLNexus,当时我们用SQLNexus查看了Perfmon Summary(性能计数器).ReadTrace Reports(跟踪文件)两项报表.SQLNexu ...

  5. Vcenter server 5.5上传ISO镜像

    1.摘要 --- 浏览要上传的硬盘. 2.创建一个文件夹专业门存放ISO镜像. 3.选择上传文件. 4.选择文件上传即可.

  6. ios每日一发--仿侧边抽屉效果

    效果图如下 代码实现以及思路下面分析: 代码创建导航控制器 Appdelegate.m中 #import "AppDelegate.h" #import "ViewCon ...

  7. Spark+Hadoop+Hive集群上数据操作记录

    [rc@vq18ptkh01 ~]$ hadoop fs -ls / drwxr-xr-x+ - jc_rc supergroup 0 2016-11-03 11:46 /dt [rc@vq18ptk ...

  8. MyEclipse中无法识别 sun.misc.BASE64Encoder

    sun.misc.BASE64Encoder/BASE64Decoder类不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用.但是在MyEclipse中直接使用却找不到该类. 解决方法: 1 ...

  9. composer--------------今天遇到几个奇葩问题,记录一下

    1.就是composer跟xdebug有冲突,每次用composer命令的时候都要报xdebug的错误,其实这个只要你去php的配置文件里面将xdebug注释掉就可以了,但是我注释掉了以后还是不行.找 ...

  10. 解决MyEclipse报错问题

    转载文章.   做NC的时候从别人那拷了个NC_DEMO结果我这报错他那没报错  import nc.bs.wfengine.engine.ext.TaskTopicResolver;  报错信息:A ...