log4j 基础

Log4j是apache的一个开源项目,用来操作程序日志信息的框架。因便于管理,在工程中用来代替System.out打印语句。通过配置Log4j中的log4j.properties,可以指定日志信息的级别,输出地点,输出格式。
一、LOG4J组成 
 Log4j的有3大主要组件:
      1,Logger:记录器,决定什么日志信息应该被输出、什么日志信息应该被忽略。
      2,Appender:存放器,指定日志信息应该输出到什么地方,可以是控制台、文件、网络设备。
      3,Layout:布局格式,指定日志信息的输出格式。
   一个logger可以用多个appender,也就是说日志信息可以同时输出到多个设备上,每个appender对应一种layout。
   所以,记录器用来整合日志信息,一个日志信息调整好以后,交给记录器的所有存放器,每一个存放器根据自己的格式输出日志信息。
二、记录器组件Logger
   1.根记录器 : rootLogger
     配置语法 :log4j.rootLogger = [日志级别],存放器名1,存放器名2, ... ,存放器名N
     日志级别 :级别由高到低依次是:fatal、error、warn、info、debug。
     项目中代码:
          log4j.rootLogger=INFO, stdout, logfile
      跟记录器的日子级别是info,所以info,warn,error,fatal均会被执行。stdout,logfile是存放器。
   2. 在配置文件中配置Logger组件
      可在Log4J配置文件中配置自己的Logger组件
      项目中代码:
      log4j.logger.Application=INFO,Application
      log4j.logger.Service=DEBUG,Service
      log4j.logger.jdbc=INFO,jdbc
      log4j.logger.Action=INFO,Action
      定义了application,service,jdbc,action四个自己的logger组件,并分别配置了级别和存放器。

三、存放器组件Appender
    配置语法 :

log4j.appender.存放器名 = 存放类
         log4j.appender.存放器名.option1 = value1
     存放类:
 org.apache.log4j.ConsoleAppender         控制台输出
        org.apache.log4j.FileAppender          文件
        org.apache.log4j.DailyRollingFileAppender 每天产生一个日志文件
        org.apache.log4j.RollingFileAppender  文件大小到达指定尺寸的时候产生一个新的文件
        org.apache.log4j.WriterAppender   将日志信息以流格式发送到任意指定的地方

项目中代码: 
       Application记录器:
         log4j.appender.Application=org.apache.log4j.RollingFileAppender
         log4j.appender.Application.encoding=UTF-8
         log4j.appender.Application.File=/imagesys/logs/ImageCreditServer/ApplicationLog.log
         log4j.appender.Service.MaxFileSize=10240KB     
       Service记录器:
          log4j.appender.Service=org.apache.log4j.RollingFileAppender
          log4j.appender.Service.encoding=UTF-8
          log4j.appender.Service.File=/imagesys/logs/ImageCreditServer/ServiceLog.log
          log4j.appender.Service.MaxFileSize=10240KB
        jdbc记录器:
          log4j.appender.jdbc=org.apache.log4j.RollingFileAppender
          log4j.appender.jdbc.encoding=UTF-8
          log4j.appender.jdbc.File=/imagesys/logs/ImageCreditServer/jdbcLog.log
          log4j.appender.jdbc.MaxFileSize=1024KB
        action记录器:
          log4j.appender.Action=org.apache.log4j.RollingFileAppender
          log4j.appender.Action.encoding=UTF-8
          log4j.appender.Action.File=/imagesys/logs/ImageCreditServer/ActionLog.log
          log4j.appender.Action.MaxFileSize=10240KB
  分别制定了输出文件的存放类,编码方式,文件路径,文件大小。
 四、格式化组件Layout
       配置语法 :
       log4j.appender.存放器名.layout = 格式类
       log4j.appender.存放器名.layout.option1 = value1
        … …
       log4j.appender.存放器名.layout.optionN = valueN
       输出格式类型:
       . org.apache.log4j.HTMLLayout(以HTML表格形式布局);
       . org.apache.log4j.PatternLayout(可以灵活地指定布局模式);
       . org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串);
       . org.apache.log4j.TTCCLayout(包含日志产生的时间、线程和类别等信息);
       符号             描述
        %r          自程序开始后消耗的毫秒数
        %t          表示日志记录请求生成的线程
        %p          表示日志语句的优先级
        %r          与日志请求相关的类别名称
        %c          日志信息所在的类名
        %m%n        表示日志信息的内容
       项目中代码:
       log4j.appender.Application.layout=org.apache.log4j.PatternLayout
       log4j.appender.Application.layout.ConversionPattern=%d %p [%c] - %m%n
       以自定义的格式输出日志信息。

时间: 2024-10-22 13:04:01

log4j 基础的相关文章

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

log4j可以通过使用配置文件的方式进行配置. 配置步骤如下: 1.定义日志组件logger 每个logger都可以拥有一个或者多个appender,每个appender表示一个日志的输出目的地,比如console或者某个文件. 配置root Logger的语法为: log4j.rootLogger=[priority],appenderName,appenderName,...- 配置自定义Logger组件的语法为: log4j.logger.loggerName=[priority],app

Log4j基础知识

Log4J是Apache的一个开放源代码的项目.通过使用Log4J,程序员可以控制日志信息输送的目的地,包括控制台,文件,GUI组件和NT事件记录器,也可以控制每一条日志的输出格式,或通过定义每一条日志信息的级别,更加细致地控制日志的生成过程. Log4j的组成: Log4j由三个重要的组成构成:日志记录器(Loggers),输出端(Appenders)和日志格式化器(Layout). Appender.Layout分别是输出端和日志格式化器的祖先,下图显示了他们的对应关系. 日志记录器Logg

Log4j基础

package com.cn21.yao.service; import org.apache.log4j.Logger; public class UserService { //方法一: //public static final Logger logger = Logger.getLogger("test");//会去找log4j.properties中的log4j.logger.test //方法二: public static final Logger logger = Lo

log4j 基础教程

参考引用自------>http://javacrazyer.iteye.com/blog/1135493 基于log4j的运行方式 import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; public class TestLog4j { static Logger logger = Logger.getLogger(TestLog4j.class); public static void mai

Log4J日志配置详解

一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR <

log4j.properties文件的配置

Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用

log4j 配置详解

一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR <

【转】 log4j输出多个自定义日志文件

原文链接 http://blog.csdn.net/janestone/article/details/1862678 log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况, 怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在 现有的log4j基础上稍加配置即可轻松实现这一功能. 先看一个常见的log4j.properties文件,它是在控制台和myweb.log文件中记录日志: log4j.rootLogger=DEBUG, stdout

(转)Log4j详解

一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为五个级别:DEBUG.INFO.WARN.ERROR和FATAL.这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR <