Log4j配置说明
- 格式:docx
- 大小:26.59 KB
- 文档页数:30
RCP随着信息技术的不断发展,越来越多的企业和组织依赖于软件系统进行业务运营和管理。
而软件系统的稳定性和可靠性一直是企业和组织的重要关注点。
在这个过程中,日志是非常重要的一环。
软件系统会产生大量的日志,这些日志包含了系统的运行状态、异常信息、性能指标等重要信息。
通过对这些日志的收集和分析,可以及时发现系统故障、优化性能,提高系统的可靠性和稳定性。
本文将介绍RCP 程序的日志收集与分析实践。
一、RCP 程序简介RCP ( Rich Client Platform)是一个基于Eclipse 的框架,用于开发客户端应用程序。
RCP 程序可以在多个操作系统平台上运行,包括Windows、Linux 和Mac OS 等。
RCP 程序的架构分为三层:应用层、中间件层和系统层。
应用层包括用户界面、业务逻辑和数据持久化。
中间件层包括服务注册、服务提供和服务调用等。
系统层包括操作系统和底层接口。
二、RCP 程序的日志收集RCP 程序的日志信息最终会被输出到一个日志文件中。
在调试和问题排查时,需要查看日志文件中的信息。
因此,正确地配置日志输出非常重要。
下面介绍RCP 程序日志收集的实践:1. 使用log4j 作为日志框架:log4j 是一个开源的Java 日志框架,被广泛应用于Java 应用程序的日志记录。
在RCP 程序中,可以通过在插件中集成log4j,并通过配置文件设置日志输出级别和输出目的地。
下面是一个示例的log4j 配置文件:```log4j.rootLogger=INFO,FILElog4j.appender.FILE=org.apache.log4j.RollingFileAppenderlog4j.appender.FILE.File=${workspace_loc}/logs/eclipse.loglog4j.appender.FILE.MaxFileSize=10MBlog4j.appender.FILE.MaxBackupIndex=5yout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %p [%c] - %m%n```其中,rootLogger 设置日志输出级别为INFO,表示只输出INFO 级别及以上的日志信息;appender.FILE 设置输出目的为一个滚动式日志文件,文件大小不超过10MB,保留5 个备份文件;layout.ConversionPattern 设置日志输出格式。
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"><log4j:configuration xmlns:log4j='/log4j/'><appender name="console" class="org.apache.log4j.ConsoleAppender"><param name="Target" value="System.out"/><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p %c{1}:%L - %m%n" /></layout></appender><appender name="activexAppender" class="org.apache.log4j.DailyRollingFileAppender"><param name="File" value="logs/kettle.log" /><param name="DatePattern" value="yyyy-MM-dd" /><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="[%d{MMdd HH:mm:ss SSS\} %-5p] [%t] %c{3\} - %m%n" /></layout></appender><logger name="org.pentaho.di"><level value="on"/><appender-ref ref="activexAppender" /></logger><root><priority value ="off"></priority><appender-ref ref="console"></appender-ref> </root></log4j:configuration>。
Logback⼊门和配置说明Logback 是 Log4j 的改进版本,⽽且原⽣⽀持 SLF4J,Logback 的初始化步骤如下:1. 在类路径中查找 logback-test.xml 配置⽂件2. 在类路径中查找 logback.groovy 配置⽂件3. 在类路径中查找 logback.xml 配置⽂件4. 如果都没有找到,那边就是⽤默认配置,将⽇志输出到控制台maven 依赖在使⽤ logback 之前,需要增加相关依赖,slf4j-api 是 slf4j 的核⼼,定义了简单统⼀的接⼝,logback-classic 则是具体的⽇志实现。
<dependencies><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.2.3</version></dependency></dependencies>⽇志⽰例⾃动⽇志配置配置最简单的⽅法就是使⽤ logback 的默认配置,默认配置是将⽇志输出到控制台,代码如下:package org.lixue.slf4j;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloWorld{final static Logger logger=LoggerFactory.getLogger(HelloWorld.class);public static void main(String[]args){("HelloWorld");}}使⽤ logback-test.xml 或 logback.xml ⾃动配置在类路径中,创建 logback-test.xml 或 logback.xml 配置⽂件,并增加配置如下,该配置等价与⾃动配置:<configuration><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><!--encoders are assigned the typech.qos.logback.classic.encoder.PatternLayoutEncoderbydefault--><encoder><pattern>%d{HH:mm:ss.SSS}[%thread]%-5level%logger{36}-%msg%n</pattern></encoder></appender><root level="debug"><appender-ref ref="STDOUT"/></root></configuration>配置⽂件说明logback 配置⽂件的语法⾮常灵活。
MyBatis Log Plugin 是一个用于记录MyBatis 执行过程的插件,它可以帮助开发人员在调试和优化MyBatis 查询时更加方便地查看SQL 语句、参数和执行结果等信息。
下面是MyBatis Log Plugin 的使用方式:1. 添加MyBatis Log Plugin 依赖:首先,需要在项目的构建文件中添加MyBatis Log Plugin 的依赖,可以通过Maven、Gradle 或手动引入Jar 包的方式添加。
2. 配置MyBatis Log Plugin:在MyBatis 的配置文件中,需要配置MyBatis Log Plugin。
具体的配置方式取决于你使用的是XML 配置文件还是Java 配置类。
以下是一个XML 配置文件的示例:<configuration><plugins><plugin interceptor="org.apache.ibatis.logging.log4j.Log4jImpl"/><!-- 其他插件配置--></plugins><!-- 其他MyBatis 配置--></configuration>在上述示例中,我们配置了Log4jImpl 作为MyBatis Log Plugin 的拦截器,用于记录MyBatis 的执行日志。
3. 配置日志框架:MyBatis Log Plugin 需要依赖一个日志框架来记录执行日志,常见的日志框架包括Log4j、Logback 等。
你需要根据自己项目中使用的日志框架来配置相应的日志输出。
4. 使用MyBatis Log Plugin:配置完成后,MyBatis Log Plugin 将会记录MyBatis 的执行日志,包括SQL 语句、参数、执行时间等信息。
你可以在日志中查看这些信息,以便进行调试和优化。
Log⽇志级别从⾼到低排序ERROR、WARN、INFO、DEBUG说明:我们项⽬中没有加载,log⽇志有四个,⼤家可以在log4j⽂件中进⾏配置。
⽇志记录器(Logger)是⽇志处理的核⼼组件。
log4j具有5种正常级别(Level)。
⽇志记录器(Logger)的可⽤级别Level (不包括⾃定义级别 Level),以下内容就是摘⾃log4j API ():static Level WARNWARN level表明会出现潜在错误的情形。
static Level ERRORERROR level指出虽然发⽣错误事件,但仍然不影响系统的继续运⾏。
static Level FATALFATAL level指出每个严重的错误事件将会导致应⽤程序的退出。
另外,还有两个可⽤的特别的⽇志记录级别: (以下描述来⾃log4j API):static Level ALLALL Level是最低等级的,⽤于打开所有⽇志记录。
static Level OFFOFF Level是最⾼等级的,⽤于关闭所有⽇志记录。
⽇志记录器(Logger)的⾏为是分等级的。
如下表所⽰:分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。
Log4j建议只使⽤四个级别,优先级从⾼到低分别是 ERROR、WARN、INFO、DEBUG。
通过在这⾥定义的级别,您可以控制到应⽤程序中相应级别的⽇志信息的开关。
⽐如在这⾥定义了INFO级别,则应⽤程序中所有DEBUG级别的⽇志信息将不被打印出来,也是说⼤于等于的级别的⽇志才输出。
⽇志记录的级别有继承性,⼦类会记录⽗类的所有的⽇志级别。
logger⽇志设置:1、加包:log4j-1.2.16.jar ⼀般还会加⼊ commons-logging-1.1.1.jar2、在CLASSPATH 下建⽴log4j.properties[html]1. log4j.appender.stdout=org.apache.log4j.ConsoleAppender2. log4j.appender.stdout.Target=System.out3. yout=org.apache.log4j.PatternLayout4. yout.ConversionPattern=%d %5p %c{1}:%L - %m%n5.6. log4j.appender.file=org.apache.log4j.RollingFileAppender7. log4j.appender.file.File=${catalina.home}/logs/ddoMsg.log8. #log4j.appender.file.File=D:/SmgpAppService/logs/smgpApp.log9. log4j.appender.file.MaxFileSize=1024KB10. log4j.appender.file.MaxBackupIndex=10011. yout=org.apache.log4j.PatternLayout12. yout.ConversionPattern= %d{yyyy-MM-dd HH:mm:ss} %5p %c %t: - %m%n13.14. #INFO WARN ERROR DEBUG15. log4j.rootLogger=WARN, file, stdout16. #log4j.rootLogger=INFO,stdout17. mons.logging.Log=mons.logging.impl.SimpleLog18. #mons.digester.Digester=debug19. #mons.digester.ObjectCreateRule=debug20. #mons.digester.Digester.sax=info21.22. .jason.ddoMsg=debug在要输出的⽇志的类中定义:private static final org.apache.log4j.Logger logger = Logger.getLogger(类名.class);在类输位置:(XXX);logger 配置说明:1、 log4j.rootLogger=INFO, stdout , R此句为将等级为INFO的⽇志信息输出到stdout和R这两个⽬的地,stdout和R的定义在下⾯的代码,可以任意起名。
JAVAlog4j同一个类日志输出到不同的log文件中配置不能通过简单的配置log4j配置文件来实现,而需要在代码中调用Log4j的类来实现。
下面给出实现类:/** * @author QG * * 2010-7-22 上午10:27:50 LoggerRun.java */public class LoggerRun { //设定两个Logpublic static Logger infoLogger = Logger.getLogger("info.logger");public static Logger errorLogger = Logger.getLogger("error.logger");public static final String PROFILE = "log4j.properties";//设定异常log输出的路径private static final String PATH = Constants.PATH;static{try{URL configFileResource = (new File(LoggerRun.class.getResource("/").getPath()+PROFILE)).toUR L();PropertyConfigurator.configure(configFileResource);}catch(Exception e){e.printStackTrace();}}public LoggerRun(){try {Date date = new Date();SimpleDateFormat sf = new SimpleDateFormat("yyyyMMddHHmmss");String fileName = PATH + "exception_" +sf.format(date).toString() + ".log";FileAppender exceptionAppender = new FileAppender(new SimpleLayout(), fileName);errorLogger.addAppender(exceptionAppender);} catch (Exception e) {e.printStackTrace();}}}同时给出配置文件配置信息:.logger=INFO, info,stdoutlog4j.category.error.logger=ERROR,errorlog4j.appender.stdout=org.apache.log4j.ConsoleAppender yout=org.apache.log4j.PatternLayo utyout.ConversionPattern=%d{yyyy/ MM/dd HH:mm:ss.SSS} %-5p %m%=org.apache.log4j.RollingFileAppe nder.File=bin/log/info.log.MaxFileSize=100kb.MaxBackupIndex=4yout=org.apache.log4j.PatternLayout yout.ConversionPattern=%d{yyyy/MM /dd HH:mm:ss.SSS} %-5p %m%nlog4j.appender.error=org.apache.log4j.RollingFileApp enderlog4j.appender.error.File=bin/log/error.loglog4j.appender.error.MaxFileSize=100kblog4j.appender.error.MaxBackupIndex=4yout=org.apache.log4j.PatternLayout yout.ConversionPattern=%d{yyyy/M M/dd HH:mm:ss.SSS} %-5p %m%n在给出测试类:public class TestLog {public static final Logger logger=Logger.getLogger(T estLog.class);/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubfor(int i=0;i<10;i++){if(i<5){("TEST The Logger DUBUG");}else{LoggerRun.errorLogger.error("TEST THe LOGGER ERROR");}}}}同一个类中的日志按类型输出到了不同的日志文件中。
log4net使用手册1 简介1.1Log4net的优点:几乎所有的大型应用都会有自己的用于跟踪调试的API。
因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。
然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。
经验表明,日志记录往往是软件开发周期中的重要组成部分。
它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找到应用程序中的Bug;一旦在程序中加入了Log 输出代码,程序运行过程中就能生成并输出日志信息而无需人工干预。
另外,日志信息可以输出到不同的地方(控制台,文件等)以备以后研究之用。
Log4net就是为这样一个目的设计的,用于.NET开发环境的日志记录包。
1.2Log4net的安装:用户可以从/log4net/下载log4net的源代码。
解压软件包后,在解压的src目录下将log4net.sln载入Visual Studio .NET,编译后可以得到log4net.dll。
用户要在自己的程序里加入日志功能,只需将log4net.dll引入工程即可。
2 Log4net的结构log4net 有四种主要的组件,分别是Logger(记录器), Repository(库), Appender(附着器)以及Layout(布局).2.1Logger2.1.1 Logger接口Logger是应用程序需要交互的主要组件,它用来产生日志消息。
产生的日志消息并不直接显示,还要预先经过Layout的格式化处理后才会输出。
Logger提供了多种方式来记录一个日志消息,你可以在你的应用程序里创建多个Logger,每个实例化的Logger对象都被log4net框架作为命名实体(named entity)来维护。
这意味着为了重用Logger对象,你不必将它在不同的类或对象间传递,只需要用它的名字为参数调用就可以了。
log4net框架使用继承体系,继承体系类似于.NET中的名字空间。
Java⽇志框架SLF4J和log4j以及logback的联系和区别1.SLF4J(Simple logging Facade for Java)意思为简单⽇志门⾯,它是把不同的⽇志系统的实现进⾏了具体的抽象化,只提供了统⼀的⽇志使⽤接⼝,使⽤时只需要按照其提供的接⼝⽅法进⾏调⽤即可,由于它只是⼀个接⼝,并不是⼀个具体的可以直接单独使⽤的⽇志框架,所以最终⽇志的格式、记录级别、输出⽅式等都要通过接⼝绑定的具体的⽇志系统来实现,这些具体的⽇志系统就有log4j,logback,java.util.logging等,它们才实现了具体的⽇志系统的功能。
如何使⽤SLF4J?既然SLF4J只是⼀个接⼝,那么实际使⽤时必须要结合具体的⽇志系统来使⽤,我们⾸先来看SLF4J和各个具体的⽇志系统进⾏绑定时的框架原理图:其实slf4j原理很简单,他只提供⼀个核⼼slf4j api(就是slf4j-api.jar包),这个包只有⽇志的接⼝,并没有实现,所以如果要使⽤就得再给它提供⼀个实现了些接⼝的⽇志包,⽐如:log4j,common logging,jdk log⽇志实现包等,但是这些⽇志实现⼜不能通过接⼝直接调⽤,实现上他们根本就和slf4j-api不⼀致,因此slf4j⼜增加了⼀层来转换各⽇志实现包的使⽤,当然slf4j-simple除外。
其结构如下:slf4j-api(接⼝层)|各⽇志实现包的连接层( slf4j-jdk14, slf4j-log4j)|各⽇志实现包所以,结合各⽇志实现包使⽤时提供的jar包情况为:SLF4J和logback结合使⽤时需要提供的jar:slf4j-api.jar,logback-classic.jar,logback-core.jarSLF4J和log4j结合使⽤时需要提供的jar:slf4j-api.jar,slf4j-log412.jar,log4j.jarSLF4J和JDK中java.util.logging结合使⽤时需要提供的jar:slf4j-api.jar,slf4j-jdk14.jarSLF4J和simple(SLF4J本⾝提供的⼀个接⼝的简单实现)结合使⽤时需要提供的jar:slf4j-api.jar,slf4j-simple.jar当然还有其他的⽇志实现包,以上是经常会使⽤到的⼀些。
IDEA中log4j⽆法输出到本地properties配置⽆效问题IDEA中log4j ⽆法输出到本地,properties配置⽆效问题。
log4j添加以后⽆法输出⽇志信息,经检查(按以下顺序):1.jar包导⼊正常2.log4j.properties配置⽂件正常可以输出,但是properties⽂件⽆效。
4.删除properties⽂件之后log依然可以输出,可判断properties⽂件失效,或被覆盖。
5.经过验证为框架本⾝默认的import java.util.logging.Logger优先级⾼于import org.apache.log4j.Logger;,在实例化Logger.getLogger();过程中,默认调⽤了框架本⾝的Logger类导致log4j失效。
解决⽅法:注意引⼊org.apache.log4j.Logger即可; 为⽅便使⽤可以在任意地⽅新建类并导⼊log4j.Logger,初始化logger对象。
import org.apache.log4j.Logger;public class TestLogger {static public Logger logger=Logger.getLogger(TestLogger.class);}在使⽤的时候,TestLogger.logger.debug("");("");TestLogger.logger.error("");.....。
当然,也可以结合logger与log4j实现⾃定义⽇志⼯⼚,⽤来容错,这⾥就不作延申。
总结以上所述是⼩编给⼤家介绍的IDEA中log4j ⽆法输出到本地 properties配置⽆效问题,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。
在此也⾮常感谢⼤家对⽹站的⽀持!如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!。
文章标题:深度解析CAS Server日志级别设置与优化1.引言CAS Server作为一种常用的单点登录服务,对于日志级别的设置和优化显得尤为重要。
本文将深入探讨CAS Server日志级别的相关概念、设置方法及优化技巧,以帮助读者更全面地理解和应用CAS Server日志功能。
2. CAS Server日志级别的概念CAS Server的日志级别指的是对不同类型日志的优先级别设置,通常包括DEBUG、INFO、WARN、ERROR等级别。
不同级别的日志对应不同的信息记录和输出方式,同时也影响系统的性能和运行效率。
3. CAS Server日志级别的设置方法3.1 日志级别的配置文件在CAS Server的配置文件中,可以通过简单的配置来设置日志级别。
具体的配置方法如下所示:```xml<log4j:configuration xmlns:log4j=""><appender name="CONSOLE"class="org.apache.log4j.ConsoleAppender"><param name="Target" value="System.out" /><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" /></layout></appender><root><priority value="INFO" /><appender-ref ref="CONSOLE" /></root></log4j:configuration>```3.2 示例中的配置说明在上述示例中,我们可以看到使用了log4j框架来配置CAS Server的日志输出。
log4j的配置: Log4j配置 第一步 加入log4j-1.2.8.jar到lib下。 第二步 在CLASSPATH下建立log4j.properties。内容如下: 1 log4j.rootCategory=INFO, stdout , R 2 3 log4j.appender.stdout=org.apache.log4j.ConsoleAppender 4 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 5 log4j.appender.stdout.layout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%n 6 7 log4j.appender.R=org.apache.log4j.DailyRollingFileAppender 8 log4j.appender.R.File=D:\\Tomcat 5.5\\logs\\qc.log 9 log4j.appender.R.layout=org.apache.log4j.PatternLayout 10 log4j.appender.R.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n 11 12 log4j.logger.com.neusoft=DEBUG 13 log4j.logger.com.opensymphony.oscache=ERROR 14 log4j.logger.net.sf.navigator=ERROR 15 log4j.logger.org.apache.commons=ERROR 16 log4j.logger.org.apache.struts=WARN 17 log4j.logger.org.displaytag=ERROR 18 log4j.logger.org.springframework=DEBUG 19 log4j.logger.com.ibatis.db=WARN 20 log4j.logger.org.apache.velocity=FATAL 21 22 log4j.logger.com.canoo.webtest=WARN 23 24 log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN 25 log4j.logger.org.hibernate=DEBUG 26 log4j.logger.org.logicalcobwebs=WARN 第三步 相应的修改其中属性,修改之前就必须知道这些都是干什么的,在第二部分讲解。 第四步 在要输出日志的类中加入相关语句: 定义属性:protected final Log log = LogFactory.getLog(getClass()); 在相应的方法中: if (log.isDebugEnabled()){ log.debug(“System „..”); } 在实际编程时,要使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 = fully.qualified.name.of.appender.class // "fully.qualified.name.of.appender.class" 可以指定下面五个目的地中的一个: 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=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文件。 Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。 MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。 MaxBackupIndex=2:指定可以产生的滚动文件的最大数。 实际应用: log4j.appender.A1=org.apache.log4j.ConsoleAppender //这里指定了日志输出的第一个位置A1是控制台ConsoleAppender
3、配置日志信息的格式,其语法为: A.log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class "fully.qualified.name.of.layout.class" 可以指定下面4个格式中的一个: 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局), 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式), 3.org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), 4.org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) 1.HTMLLayout 选项 LocationInfo=true:默认值是false,输出java文件名称和行号 Title=my app file: 默认值是 Log4J Log Messages. 2.PatternLayout 选项 ConversionPattern=%m%n :指定怎样格式化指定的消息。 3.XMLLayout 选项 LocationInfo=true:默认值是false,输出java文件和行号 实际应用: log4j.appender.A1.layout=org.apache.log4j.PatternLayout B. log4j.appender.A1.layout.ConversionPattern=%-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n 这里需要说明的就是日志信息格式中几个符号所代表的含义: -X号: X信息输出时左对齐; %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL,