Log4j配置详解

通常,我们都提供一个名为log4j.properties的文件,在第一次调用到Log4J时,Log4J会在类路径(../web-inf/class/当然也可以放到其它任何目录,只要该目录被包含到类路径中即可)中定位这个文件,并读入这个文件完成的配置。

这个配置文件告诉Log4J以什么样的格式、把什么样的信息、输出到什么地方。

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

综合使用这三个组件可以轻松的记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。

下面对三个组件分别进行说明: 1、 Loggers Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。

这五个级别是有顺序的,DEBUG Log4j有一个规则:假设Loggers级别为P,如果在Loggers中发生了一个级别Q比P 高,则可以启动,否则屏蔽掉。

假设你定义的级别是info,那么error和warn的日志可以显示而比他低的debug信息就不显示了。

Java程序举例来说: //建立Logger的一个实例,命名为“com.foo” Logger logger = Logger.getLogger("com.foo"); //"com.foo"是实例进行命名,也可以任意 //设置logger的级别。

通常不在程序中设置logger的级别。

一般在配置文件中设置。

logger.setLevel(); Logger barlogger = Logger.getLogger("com.foo.Bar"); //下面这个请求可用,因为WARN >= INFO logger.warn("Low fuel level."); //下面这个请求不可用,因为DEBUG = INFO ("Located nearest gas station."); //下面这个请求不可用,因为DEBUG Log4j其中的一个小小的地方,Log4j日志系统允许把日志输出到不同的地方,如控制台(Console)、文件(Files)、根据天数或者文件大小产生新的文件、以流的形式发送到其它地方等等。

其语法表示为: org.apache.log4j.ConsoleAppender(控制台) org.apache.log4j.FileAppender(文件) org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件) org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) 配置时使用方式为: log4j.appender.appenderName = .of.appender.class log4j.appender.appenderName.option1 = value1 …log4j.appender.appenderName.option = valueN 这样就为日志的输出提供了相当大的便利。

3、Layouts 有时用户希望根据自己的喜好格式化自己的日志输出。

Log4j可以在Appenders的后面附加Layouts来完成这个功能。

Layouts提供了四种日志输出样式,如根据HTML样式、自由指定样式、包含日志级别与信息的样式和包含日志时间、线程、类别等信息的样式等等。

其语法表示为: org.apache.log4j.HTMLLayout(以HTML表格形式布局), org.apache.log4j.PatternLayout(可以灵活地指定布局模式), org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) 配置时使用方式为: yout=yout.class yout.option1 = value1 … yout.option = valueN>>>> 4 . Log4j的配置  以上是从原理方面说明Log4j的使用方法,在具体Java编程使用Log4j可以参照以下示例: 1、建立Logger实例: 语法表示:public static Logger getLogger( String name) 实际使用:static Logger logger = Logger.getLogger(ServerWithLog4j.class.getName ()) ; 2、读取配置文件: 获得了Logger的实例之后,接下来将配置Log4j使用环境: 语法表示: BasicConfigurator.configure():自动快速地使用缺省Log4j环境。

PropertyConfigurator.configure(String configFilename):读取使用Java的特性文件编写的配置文件。

DOMConfigurator.configure(String filename):读取XML形式的配置文件。

实际使用:PropertyConfigurator.configure("ServerWithLog4j.properties"); 3、插入日志信息 完成了以上连个步骤以后,下面就可以按日志的不同级别插入到你要记录日志的任何地方了。

语法表示: Logger.debug(Object message);//调试信息 (Object message);//一般信息 Logger.warn(Object message);//警告信息 Logger.error(Object message);//错误信息 Logger.fatal(Object message);//致命错误信息 实际使用:("ServerSocket before accept: " + server); >>>> 5. 配置过程 Log4j真正在系统中运行事先还要对配置文件进行定义。

定义步骤就是对Logger、Appender及Layout的分别使用。

Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java特性文件(键=值)】。

下面我们介绍使用Java特性文件做为配置文件的方法具体如下: 1、配置根Logger,其语法为: log4j.rootLogger = [ level ] , appenderName1, appenderName2, …level : 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。

Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。

通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。

比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。

appenderName:就是指定日志信息输出到哪个地方。

您可以同时指定多个输出目的地。

例如:log4j.rootLogger=info,A1,B2,C3 2、配置日志信息输出目的地,其语法为: log4j.appender.appenderName = .of.appender.class // ".of.appender.class" 可以指定下面五个目的地中的一个:.apache.log4j.ConsoleAppender(控制台).apache.log4j.FileAppender(文件).apache.log4j.DailyRollingFileAppender(每天产生一个日志文件).apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件).apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)1.ConsoleAppender选项Threshold=WARN:指定日志消息的输出最低层次。

ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。

Target=System.err:默认情况下是:System.out,指定输出控制台2.FileAppender 选项Threshold=WARN:指定日志消息的输出最低层次。

ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。

File=mylog.txt:指定消息输出到mylog.txt文件。

Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。

3.DailyRollingFileAppender 选项Threshold=WARN:指定日志消息的输出最低层次。

ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。

File=mylog.txt:指定消息输出到mylog.txt文件。

Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。

DatePattern='.'yyyy-ww:每周滚动一次文件,即每周产生一个新的文件。

当然也可以指定按月、周、天、时和分。

即对应的格式如下:1)'.'yyyy-MM: 每月2)'.'yyyy-ww: 每周3)'.'yyyy-MM-dd: 每天4)'.'yyyy-MM-dd-a: 每天两次5)'.'yyyy-MM-dd-HH: 每小时6)'.'yyyy-MM-dd-HH-mm: 每分钟4.RollingFileAppender 选项Threshold=WARN:指定日志消息的输出最低层次。

ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。

File=mylog.txt:指定消息输出到mylog.txt文件。

合集下载

Log4j说明

Log4j说明

Log4j说明1.log4j.rootCategory=INFO, stdout , R此句为将等级为INFO的日志信息输出到stdout和R这两个目的地,stdout和R的定义在下面的代码,可以任意起名。

等级可分为OFF、 FATAL、ERROR、WARN、INFO、DEBUG、ALL,如果配置OFF则不打出任何信息,如果配置为INFO这样只显示INFO, WARN, ERROR的log 信息,而DEBUG信息不会被显示,具体讲解可参照第三部分定义配置文件中的logger。

2. log4j.appender.stdout=org.apache.log4j.ConsoleAppender此句为定义名为stdout的输出端是哪种类型,可以是org.apache.log4j.ConsoleAppender(控制台),org.apache.log4j.FileAppender(文件),org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)具体讲解可参照第三部分定义配置文件中的Appender。

4 yout=org.apache.log4j.PatternLayout此句为定义名为stdout的输出端的layout是哪种类型,可以是org.apache.log4j.HTMLLayout(以HTML表格形式布局),org.apache.log4j.PatternLayout(可以灵活地指定布局模式),org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)具体讲解可参照第三部分定义配置文件中的Layout。

log4j 标准

log4j 标准

log4j 标准
Log4j是一个Java日志框架,它提供了一种灵活的方式来记录应用程序的
日志信息。

以下是Log4j的标准:
1. 配置文件:Log4j使用一个配置文件来定义日志记录的行为。

这个配置文件可以是XML、properties或YAML格式。

在配置文件中,可以指定日志级别、输出目的地(例如控制台、文件、数据库等)以及其他相关设置。

2. Logger对象:Log4j使用Logger对象来记录日志。

每个Logger对象
都有一个名称,可以通过继承关系组织成层次结构。

Logger对象可以记录
不同级别的日志信息,包括DEBUG、INFO、WARN、ERROR和FATAL。

3. Appender对象:Appender对象定义了日志信息的输出目的地。

例如,可以将日志信息输出到控制台、文件、数据库或电子邮件等。

每个Logger
对象可以关联多个Appender对象,以便将日志信息发送到不同的目的地。

4. 布局和格式化程序:Log4j使用布局或格式化程序来控制日志信息的输出格式。

布局或格式化程序可以将Logger对象记录的日志信息转换成所需的格式,并将其输出到指定的目的地。

5. 日志级别:Log4j使用不同的日志级别来控制日志信息的输出。

这些级别从低到高分别是DEBUG、INFO、WARN、ERROR和FATAL。

通过设置适当的级别,可以过滤掉不需要的日志信息,以便更好地控制应用程序的性能和输出。

总之,Log4j提供了一种灵活、可配置和可扩展的日志记录机制,适用于各种规模的应用程序开发。

log4j配置

log4j配置

#配置根Logger#log4j.rootLogger = [ level ] , appenderName1 , appenderName2#[level] 是日志输出级别OFF:不打出任何信息、FATAL、ERROR:错误、WARN:警告、INFO、DEBUG、ALLlog4j.rootLogger=ERROR,stdout,file#配置日志信息输出目的地#org.apache.log4j.ConsoleAppender(控制台),org.apache.log4j.FileAppender(文件),org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender (文件大小到达指定尺寸的时候产生一个新的文件),org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)log4j.appender.stdout=org.apache.log4j.ConsoleAppen der#配置日志信息的格式#.apache.log4j.HTMLLayout(以HTML表格形式布局),.apache.log4j.PatternLayout(可以灵活地指定布局模式),.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)yout=org.apache.log4j.PatternLayout#PatternLayout类型指定的打印信息的具体格式yout.ConversionPattern=%d%p [%c]-%m%nlog4j.appender.file=org.apache.log4j.RollingFileAppend erlog4j.appender.file.File=./elane.loglog4j.appender.file.MaxFileSize=10MB#MaxBackupIndex 最大备份文件的序号,限制文件个数log4j.appender.file.MaxBackupIndex=1yout=org.apache.log4j.PatternLayo utyout.ConversionPattern=%d%p [%c]-%m%n# General Apache libraries.apache=INFO# Spring.springframework=INFO# Disable verbose logging.jsecurity.util.ThreadContext=INFO.jsecurity.cache.ehcache.EhCache=INFO。

详细讲解Java中log4j的使用方

详细讲解Java中log4j的使用方
其语法表示为:
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
#灵活定义输出格式具体查看log4j javadoc org.apache.log4j.PatternLayout
#d时间....
yout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
#R输出到文件RollingFileAppender的扩展,可以提供一种日志的备份功能。
#log4j中有五级logger
#FATAL 0
#ERROR 3
#WARN 4
#INFO 6
#DEBUG 7ቤተ መጻሕፍቲ ባይዱ
配置根Logger,其语法为:
#log4j.rootLogger = [ level ] , appenderName, appenderName, …
log4j.rootLogger=INFO, A1 ,R
2、读取配置文件:
获得了Logger的实例之后,接下来将配置Log4j使用环境:
语法表示:
BasicConfigurator.configure():自动快速地使用缺省Log4j环境。
PropertyConfigurator.configure(String configFilename):读取使用Java的特性文件编写的配置文件。

Java开发日志分析工具Log4j使用详解

Java开发日志分析工具Log4j使用详解

Java开发日志分析工具Log4j使用详解Log4j是一个用于记录应用程序运行时日志的Java开发工具。

它可以帮助开发人员更好地理解和监控应用程序的运行状态,以及解决潜在的问题。

下面将详细介绍Log4j的使用方法和功能。

一、Log4j的配置文件Log4j使用一个名为log4j.properties的配置文件来定义日志的输出格式、日志级别、输出目标等。

这个配置文件需要放在应用程序的classpath下,以便Log4j能够找到它并加载配置。

配置文件中的每一个配置项都有一个特定的名称和对应的值。

例如,可以使用"log4j.rootLogger"配置项来设置根日志记录器的级别,使用"log4j.appender.console"配置项来设置控制台输出的格式等。

二、Log4j的日志级别Log4j提供了多个日志级别,用于控制日志的输出。

这些日志级别按照严重程度递增,包括TRACE、DEBUG、INFO、WARN、ERROR和FATAL。

可以通过配置文件中的"log4j.rootLogger"配置项来设置根日志记录器的级别,从而决定哪些级别的日志会被记录。

三、Log4j的输出目标Log4j可以将日志输出到不同的目标,包括控制台、文件、数据库等。

可以通过配置文件中的"log4j.appender"配置项来设置输出目标。

常用的输出目标有:1. ConsoleAppender:将日志输出到控制台。

2. FileAppender:将日志输出到文件。

3. RollingFileAppender:将日志输出到滚动文件,可以设置文件的大小和数量,以便自动滚动日志文件。

4. JDBCAppender:将日志输出到数据库。

四、Log4j的日志格式Log4j可以自定义日志的输出格式。

可以通过配置文件中的"log4j.appender"配置项来设置输出格式。

log4j配置详解

log4j配置详解

log4j.properties配置详解一、Log4j配置第一步:加入log4j-1.2.8.jar到lib下。

第二步:在CLASSPATH下建立log4j.properties。

内容如下:Java代码log4j.rootCategory=INFO, stdout , Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%nlog4j.appender.R=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.R.File=D:\\Tomcat 5.5\\logs\\qc.logyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%d-[TS] %p %t %c - %m%n.neusoft=DEBUG.opensymphony.oscache=ERROR.sf.navigator=ERRORmons=ERROR.apache.struts=W ARN.displaytag=ERROR.springframework=DEBUG.ibatis.db=WARN.apache.velocity=FATAL.canoo.webtest=WARN.hibernate.ps.PreparedStatementCache=W ARN.hibernate=DEBUG.logicalcobwebs=W ARNlog4j.rootCategory=INFO, stdout , Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%nlog4j.appender.R=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.R.File=D:\\Tomcat 5.5\\logs\\qc.logyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%d-[TS] %p %t %c - %m%n.neusoft=DEBUG.opensymphony.oscache=ERROR.sf.navigator=ERRORmons=ERROR.apache.struts=W ARN.displaytag=ERROR.springframework=DEBUG.ibatis.db=WARN.apache.velocity=FATAL.canoo.webtest=WARN.hibernate.ps.PreparedStatementCache=W ARN.hibernate=DEBUG.logicalcobwebs=W ARNlog4j.rootCategory=INFO, stdout , Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%nlog4j.appender.R=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.R.File=D:\\Tomcat 5.5\\logs\\qc.logyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%d-[TS] %p %t %c - %m%n.neusoft=DEBUG.opensymphony.oscache=ERROR.sf.navigator=ERRORmons=ERROR.apache.struts=W ARN.displaytag=ERROR.springframework=DEBUG.ibatis.db=WARN.apache.velocity=FATAL.canoo.webtest=WARN.hibernate.ps.PreparedStatementCache=W ARN.hibernate=DEBUG.logicalcobwebs=W ARNlog4j.rootCategory=INFO, stdout , Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%nlog4j.appender.R=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.R.File=D:\\Tomcat 5.5\\logs\\qc.logyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%d-[TS] %p %t %c - %m%n.neusoft=DEBUG.opensymphony.oscache=ERROR.sf.navigator=ERRORmons=ERROR.apache.struts=W ARN.displaytag=ERROR.springframework=DEBUG.ibatis.db=WARN.apache.velocity=FATAL.canoo.webtest=WARN.hibernate.ps.PreparedStatementCache=W ARN.hibernate=DEBUG.logicalcobwebs=W ARN第三步:相应的修改其中属性,修改之前就必须知道这些都是干什么的,在第二部分讲解。

LOG4J深入配置V1.0

基础平台LOG4J配置Log4j,即log for java。

它的使用和配置在网络上搜索相信会有很多,在此不再赘述这些信息。

在此篇幅中主要介绍在基础平台开发过程中确认log4j最终配置的一个流程和要点。

Log4j有两种配置方式,一种是非常常见的properties形式,另外一种是xml 形式。

两者的区别主要在于,properties配置是键值对形式的,主要面向简单的配置,如果可以使用properies满足的需求没有必要使用xml;而xml配置提供了更多强大的功能,比如分级log输出等,同时使用xml进行配置需要对log4j有一定的了解。

鉴于在未来的使用中需要其提供的某些强大功能,在升级系统中采用xml配置log4j配置信息。

在初步的探讨中,并且通过老版系统提供的properties配置文件提供的信息,确认在log4j的使用中需要以下三点重要特性:●提供文件固定大小切换功能●隔日文件切换功能●需要提供必要的日志级别记录特殊信息Log4j为我们提供了很多的appender,诸如org.apache.log4j.ConsoleAppender,org.apache.log4j.FileAppender,org.apache.log4j.DailyRollingFileAppender,org.apache.log4j.RollingFileAppender等几种常见的类型,但是将两种进行结合使用确实是一种比较难处理的需求,所以只能一种功能借助log4j,另外一种功能自我实现。

但是由于log4j记录日志速度较快,如果自己实现日志文件固定大小切换功能,实现不好的话会导致文件很大,可能会打不开,而切换日志文件夹,即便是比较慢,也不会对日志有什么较大的影响。

所以综上考虑,采用切换日期文件夹自我实现,切换日志文件借助于log4j功能。

对于切换日期文件夹,借助log4j中日志文件路径可动态配置的优势实现,首先在log4j配置文件中配置动态路径,保留一个时间动态参数,如下:<param name="File"value="E:/suntel_log/controlSystem/${Date}/app-message.log"/>同时在初始化log4j的时候设置系统参数date:System.setProperty("Date", DateHandler.getStringDate());,到目前为止,系统log4j确认了本日日志记录路径,但是日期切换之后却依然不能主动设置。

log4j.properties错误及配置详解

log4j.properties错误及配置详解当在Eclipse上运⾏MapReduce程序遇到以上问题时,请检查项⽬中是否有log4j.properties配置⽂件,或者配置⽂件是否正确。

刚接触Hadoop的时候不太了解log4j.properties配置的含义和作⽤是什么,后来意识到了其重要性,但⽹上的内容⼤多太杂太单⼀,因此想整理⼀份出来供⼤家参考。

#################################################################################①配置根Logger:#log4j.rootLogger = [level],appenderName,appenderName2,...#level是⽇志记录的优先级,分OFF,TRACE,DEBUG(DeBug信息),INFO(普通信息),WARN(警告),ERROR(错误),FATAL(罕见严重的错误),ALL#Log4j建议只使⽤四个级别,优先级从低到⾼分别是DEBUG,INFO,WARN,ERROR#通过在这⾥定义的级别,您可以控制到应⽤程序中相应级别的⽇志信息的开关#⽐如在这⾥定义了INFO级别,则应⽤程序中所有DEBUG级别的⽇志信息将不被打印出来#appenderName就是指定⽇志信息输出到哪个地⽅。

可同时指定多个输出⽬的#如果配置OFF则不打出任何信息,如果配置为INFO这样只显⽰INFO、WARN、ERROR的log信息,#⽽DEBUG信息不会被显⽰,DEBUG级别上仅次于ALL象征⽇志全部输出.#OFF和ALL没有实际意义象征全关开;#################################################################################②配置⽇志信息输出⽬的地Appender#Log4j提供的appender有以下⼏种:#1)org.apache.log4j.ConsoleAppender(输出到控制台)#2)org.apache.log4j.FileAppender(输出到⽂件)#3)org.apache.log4j.DailyRollingFileAppender(每天产⽣⼀个⽇志⽂件)#4)org.apache.log4j.RollingFileAppender(⽂件⼤⼩到达指定尺⼨的时候产⽣⼀个新的⽂件)#5)org.apache.log4j.WriterAppender(将⽇志信息以流格式发送到任意指定的地⽅)#1)ConsoleAppender选项属性# -Threshold = DEBUG:指定⽇志消息的输出最低层次# -ImmediateFlush = TRUE:默认值是true,所有的消息都会被⽴即输出# -Target = System.err:默认值System.out,输出到控制台(err为红⾊,out为⿊⾊)##2)FileAppender选项属性# -Threshold = INFO:指定⽇志消息的输出最低层次# -ImmediateFlush = TRUE:默认值是true,所有的消息都会被⽴即输出# -File = C:\log4j.log:指定消息输出到C:\log4j.log⽂件# -Append = FALSE:默认值true,将消息追加到指定⽂件中,false指将消息覆盖指定的⽂件内容# -Encoding = UTF-8:可以指定⽂件编码格式##3)DailyRollingFileAppender选项属性# -Threshold = WARN:指定⽇志消息的输出最低层次# -ImmediateFlush = TRUE:默认值是true,所有的消息都会被⽴即输出# -File = C:\log4j.log:指定消息输出到C:\log4j.log⽂件# -Append = FALSE:默认值true,将消息追加到指定⽂件中,false指将消息覆盖指定的⽂件内容# -DatePattern='.'yyyy-ww:每周滚动⼀次⽂件,即每周产⽣⼀个新的⽂件。

Log4j的使用和配置

Log4j的使用和配置2011-05-15 18:05:56标签:使用log4j 配置1、Log4j是什么?Log4j可以帮助调试(有时候debug是发挥不了作用的)和分析,要下载和了解更详细的内容,还是访问其官方网站吧:/log4j 。

2、Log4j的概念Log4j中有三个主要的组件,它们分别是Logger、Appender和Layout,Log4j 允许开发人员定义多个Logger,每个Logger拥有自己的名字,Logger之间通过名字来表明隶属关系。

有一个Logger称为Root,它永远存在,且不能通过名字检索或引用,可以通过Logger.getRootLogger()方法获得,其它Logger通过Logger.getLogger(String name)方法。

Appender则是用来指明将所有的log信息存放到什么地方,Log4j中支持多种appender,如console、files、GUI components、NT Event Loggers等,一个Logger可以拥有多个Appender,也就是你既可以将Log信息输出到屏幕,同时存储到一个文件中。

Layout的作用是控制Log信息的输出方式,也就是格式化输出的信息。

Log4j中将要输出的Log信息定义了5种级别,依次为DEBUG、INFO、WARN、ERROR和FATAL,当输出时,只有级别高过配置中规定的级别的信息才能真正的输出,这样就很方便的来配置不同情况下要输出的内容,而不需要更改代码,这点实在是方便啊。

3、Log4j的配置文件虽然可以不用配置文件,而在程序中实现配置,但这种方法在如今的系统开发中显然是不可取的,能采用配置文件的地方一定一定要用配置文件。

Log4j支持两种格式的配置文件:XML格式和Java的property格式,本人更喜欢后者,首先看一个简单的例子吧,如下:log4j.rootLogger=debug, stdout, Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayout# Pattern to output the caller's file name and line number.yout.ConversionPattern=%5p [%t] (%F:%L) - %m%nlog4j.appender.R=org.apache.log4j.RollingFileAppenderlog4j.appender.R.File=example.loglog4j.appender.R.MaxFileSize= 100KB# Keep one backup filelog4j.appender.R.MaxBackupIndex=1yout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%p %t %c - %m%n首先,是设置root,格式为log4j.rootLogger=[level],appenderName, ...,其中level就是设置需要输出信息的级别,后面是appender的输出的目的地,appenderName就是指定日志信息输出到哪个地方。

log4j.properties 详解与配置步骤

log4j.properties 详解与配置步骤一、入门实例1.新建一个JAva工程,导入包log4j-1.2.17.jar,整个工程最终目录如下2、src同级创建并设置log4j.properties3、设置日志内容1.package com.mucfc;2.import org.apache.log4j.Logger;3./**4. *@author linbingwen5. *@2015年5月18日9:14:216. */7.public class Test {8.private static Logger logger = Logger.getLogger(Test.class); 9.10./**11. * @param args12. */13.public static void main(String[] args) {14.// System.out.println("This is println message.");15.16.// 记录debug级别的信息17. logger.debug("This is debug message.");18.// 记录info级别的信息19. ("This is info message.");20.// 记录error级别的信息21. logger.error("This is error message.");22. }23.24.}4、输出结果(1)首先是控制台的信息(2)再来看输出的文件内容如下,发现已按照要求输出到对应的文档中去了。

二、Log4j基本使用方法Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。

日志信息的优先级从高到低有ERROR、WARN、INFO、DEBUG,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档