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. 升级到Xcode6.2后 免证书真机调试出错的问题

    我的本来是Xcode6.1 可以正常免证书真机调试,升级到Xcode6.2以后,真机调试就报错,然后就又按照这篇文章http://www.cnblogs.com/liuliuliu/p/4030524 ...

  2. NSString(或者说是UILabel)加入 “行间距” 之后的 “高度”计算

    一.首先,写一个工具类(NSString的分类,增加两个功能,计算高度宽度) #import "NSString+Extension.h" @implementation NSSt ...

  3. git pull all braches

    控制台下执行如下: git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote ...

  4. NPOI操作excel之读取excel数据

    NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目.  一.下载引用 去NPOI官网http://npoi.codeplex. ...

  5. jQuery的$.get和$.ajax函数对比

    $.get较为简便,但在精细控制上乏力$.get(    url, // 请求的地址    {url:url,remark:remark},// 请求参数    function(data,textS ...

  6. mongoose升级后遇到的问题

    由于想在mongoose中使用Q,所以将mongoose升级到了4.1.0,而线上mongoDB的版本是2.6.7,升级的时候,node-modules存在mongoose的残渣,所以调用 npm i ...

  7. Nhiberate (二) 搭项目

    使用: visual studio 2015 ;SQL SERVER 2012. 参考.测试可用 其中有点不太一样的地儿, ISession 的泛型方法: 用了 QueryOver<>,转 ...

  8. RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.7 版本发布

    历时数月,RDIFramework.NET V2.7 版本发布了,感谢大家的支持. RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,为企业或个人在.NET环境下快速开发系 ...

  9. 产品Backlog

    产品BACKLOG ID Name Imp Est How to demo Notes 1 界面(首页.订单.资料) 50 2 进入界面,选择需要的界面 使用分栏界面 2 首页里的功能按钮 40 6 ...

  10. url传值错误

    ValueError at /add/ invalid literal for int() with base 10: ''6'' Request Method: GET Request URL: h ...