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. App 打包并跳过 AppStore 的发布下载

    一.App 打包 (编译 -> 链接 -> 打包) 1) 下载发布版的证书并安装. 2)Target -> Build Setting,改为发布版本的 profile 3) Targ ...

  2. Excel Interior.ColorIndex色彩列表

    Microsoft.Office.Interop.Excel.Range range; ; i < dt.Columns.Count; i++) { worksheet.Cells[, i + ...

  3. 怎样将BigDecimal转换成Int

    BigDecimal a=new BigDecimal(12.88); int b=a.intValue(); System.out.println(b);//b=12;

  4. Eclipse安装maven插件报错

    Eclipse安装maven插件,报错信息如下: Cannot complete the install because one or more required items could not be ...

  5. thttpd和cgilua安装与运行流程分析

    安装 参考如下博文安装thttpd软件 http://blog.csdn.net/21aspnet/article/details/7045845 http://blog.csdn.net/drago ...

  6. svg学习(七)polygon

    <polygon> 标签用来创建含有不少于三个边的图形. <?xml version="1.0" standalone="no"?> & ...

  7. js获取url参数值

    用过的封装好的js获取url问号后的参数的方法: <script> var Request = new Object(); Request = GetRequest();var error ...

  8. js 获取参数

    <html lang="en"> <head> <meta charset="UTF-8"> <meta name=& ...

  9. <Interview problem>二进制加法

    闲来无事,搜集一些有趣的面试题,以及解决方案,有些代码可能会自己写, 有些网上有比较完整的方案了,就直接把代码拷贝过来,描述一下解题思路. Given two binary strings, retu ...

  10. UBUNTU下Y86模拟器的安装和使用

    UBUNTU下Y86模拟器的安装和使用 由于上周在虚拟机中安装Y86模拟器中出现了一些问题并且没得到解决,所以上周实验是在实验楼上做的,这几天练习了UBUNTU下Y86模拟器的安装和使用. 参考博客: ...