`

log4j 主要的配置项

阅读更多
log4j 主要的配置项





1、log4j.rootCategory

定义全局性的根日志,即所有的类,所有的方法都会输出到该日志。

log4j.rootCategory=INFO,stdout,fileout

INFO 是日志记录的级别,可以为OFF、FATAL、ERROR、WARN、INFO、DEBUG、log、ALL。

优先级 FATAL>ERROR>WARN>INFO>DEBUG

如类别为INFO,DEBUG将被屏蔽,其他的将被输出。

stdout,fileout 就是指定日志信息输出到哪个地方。您可以同时指定多个输出端。







2、log4j.appender.stdout

对上面stdout输出端的类型定义,如:

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

输出类型可以是:

org.apache.log4j.ConsoleAppender(控制台)

org.apache.log4j.FileAppender(文件)

org.apache.log4j.net.SMTPAppender(指定输出到邮件)

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)

org.apache.log4j.jdbc.JDBCAppender(指定输出到数据库)

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)







3、log4j.appender.fileout.File

如果上面指定输出端file的类型为:

log4j.appender.fileout=org.apache.log4j.FileAppender

那么这里就需要指定输出的文件路径:

log4j.appender.fileout.File=D://Tomcat 5.5//logs//qc.log







4、log4j.appender.stdout.layout

对上面stdout输出的布局定义,如:

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

输出布局可以是:

org.apache.log4j.HTMLLayout(HTML表格形式布局), 

org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

org.apache.log4j.PatternLayout(自定义布局模式),







5、log4j.appender.stdout.layout.ConversionPattern

如果上面使用的是pattern布局,这里就要指定具体的输出格式,如:

log4j.appender.stdout.layout.ConversionPattern=%p [%t] %C.%M(%L) | %m%n

%百分号为转义符,其后面更一个指定的字符表示特殊含义,其他字符都原样输出。

%c    产生日志的类名,即某个类里的某个方法里产生了日志。

%t    产生日志的线程名称。如:主线程main

%M    产生日志的方法名,注意:该日志会影响程序速度,应避免使用。

%C    产生日志的全类名,注意:该日志会影响程序速度,应避免使用。

%F    产生日志的文件名,注意:该日志会影响程序速度,应避免使用。

%L    产生日志的行数字,注意:该日志会影响程序速度,应避免使用。

%d{}  产生日志的时间,如:%d{yyyy-MM-dd HH:mm:ss}

%m    日志信息,即代码里给日志指定的信息。

%n    表示换行符,依赖于平台的行分隔符。

%p    日志的优先级,即DEBUG,INFO,WARN,ERROR等

%r    日志构建的毫秒数,

%x    输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。

%%    表示一个百分号

最小宽度、最大宽度、文本的对齐方式:

%20c    最小的宽度是20,默认右对齐

%-20c   最小的宽度是20,指定左对齐。

%.30c   最大的宽度是30,左边多出的字符截掉。







6、log4j.logger

定义子日志,可以给指定的包下面定义独立的日志,如:

log4j.logger.com.lwt=INFO,testout

指定com.lwt包下的所有类的等级为INFO。输出端为testout

还可以给struts2、ehcache等定义日志,如:

log4j.logger.com.opensymphony.oscache=ERROR

log4j.logger.net.sf.navigator=ERROR

log4j.logger.org.apache.commons=ERROR

log4j.logger.org.apache.struts=WARN







7、log4j.additivity

如有:

log4j.rootCategory=INFO,stdout,fileout

log4j.logger.com.lwt=INFO,testout

默认com.lwt包下的输出不仅是testout,还会输出到rootLogger里的stdout,fileout

若想让取消所有子日志对父日志(rootLogger)的继承关系,则添加下行即可:

log4j.additivity.com.lwt=false
分享到:
评论

相关推荐

    log4j的配置文件介绍

    本文主要解释log4j的配置文件各个配置项的含义。

    配置Log4J的一般步骤

    首先下载log4j.jar,放在WEB-INF/lib下,然后新建一个log4j.properties文件。在文件中配置已下配置项。 1. 配置Logger组件 2. 配置Appender组件 3. 配置Layout组件 Logger log = Logger.getLogger(this.getClass()); ...

    Log4j日志根据模块不同输出到不同的日志文件开发配置,便于监控项目各功能模块的运行情况

    文件中内容包括模块中某个类单独输出到一个日志文件中、模块中某个package单独输出到一个日志文件中、同一模块不同package输出到一个日志文件中三种情况下log4j.properties配置项配置事例、Java类中代码如何一致编写...

    log4j的配置文件详细解析

    以下小编主要为大家介绍一下log4j的配置文件各个配置项的含义。需要的朋友可以过来参考下

    stackify-log-log4j12:适用于Log4j 1.2的Stackify Log Appender

    安装将其添加为Maven依赖项: < dependency> < groupId>com.stackify</ groupId> < artifactId>stackify-log-log4j12</ artifactId> < version>4.0.1</ version> < scope>runtime</ scope></ dependency>...

    stackify-log-log4j2:适用于Log4j 2.x的Stackify Log Appender

    Stackify Log4j2记录器 Log4j 2.x附加程序,用于将日志消息和异常发送到Stackify。 错误和日志概述: : 注册试用版: : 安装 将其添加为Maven依赖项: < groupId>com.stackify</ groupId> < artifactId>...

    log4j-2-elastic:Appender for Elasticsearch,具有所有Log4j 2功能的支持

    log4j-2-弹性 我创建了这个项目,以共享和增强附加程序,该附加程序将消息直接记录到集群中。 在某些特定情况下,这种将日志聚合到Elasticsearch中的方法可以很好地替代Elastic Beats。特征该产品包括一些标准和某些...

    基于Java日志平台的访问链路追踪实战(1.01G)

    ---15-log4j配置文件与配置项.mp4 ---16-log4j的appender及pattern格式.mp4 ---17-logback配置及官方文档使用.mp4 ---18-logback配置自动刷新.mp4 ---19-jcl配置及实现类优先级.mp4 ---20-commons-logging配置

    基于Java日志平台的访问链路追踪实战(1.34G)

    ---15-log4j配置文件与配置项.mp4 ---16-log4j的appender及pattern格式.mp4 ---17-logback配置及官方文档使用.mp4 ---18-logback配置自动刷新.mp4 ---19-jcl配置及实现类优先级.mp4 ---20-commons-logging配置

    微信开发框架wechat4j

    wechat4j.properties配置文件的详细配置项意义参见[wechat4j配置文件解读](https://github.com/sword-org/wechat4j/wiki/wechat4j%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E8%A7%A3%E8%AF%BB) 通过以上步骤,你的微信...

    logevents:SLF4J易于扩展的实现,包括电池和合理的默认值

    Logevents-一个简单的SLF4J实现 无论是使用配置文件还是使用代码,设置和配置日志记录都应该很容易。 日志事件是在SLF4J之上构建的小型(265kb,无依赖项)日志记录框架-用于Java的日志记录语言。 特征: 使用...

    huaweicloud-sdk-java-obs:用于Java的OBS SDK,用于访问对象存储服务

    删除默认的log4j配置。 版本3.20.1第三方依赖性: 用okhttp 3.14.2替换okhttp 3.11.0。 版本3.19.11的新功能: 请求身份验证支持通过顺序搜索来获取访问密钥。 支持下载请求。 如果返回状态代码302 Found,则...

    pl4j:适用于Java的Pretty Logger

    适用于Java的Pretty Logger(PL4J) (现在有主题支持!) 描述 Pretty Logger for Java是装饰器,它可以通过使用在控制台上进行漂亮的打印。 PL4J围绕的概念构建。 这意味着您只能将用作实现,它是唯一支持Markers...

    Apache安装及JBOSS部署说明文档.rar

    2.2.8日志配置,配置log4j.xml 18 2.2.9配置contentType及charset,TOMCAT5.0下JSP统一配置 19 2.3 JVM最小、最大内存的设定 21 2.4 OS字符集问题 21 2.5 JBOSS服务的启动、停止 21 3.附apache https 服务器的...

    R2高性能数据库连接池v1.6源码

    本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。...

    sofa-common-tools:Sofa-common-tools是一个向其他SOFA库提供一些实用程序功能的库

    背景在日常开发中,Java日志记录通常包括选择日志外观(例如JCL和SLF4j)和日志实现(例如Log4j2和logback)。 假设您正在开发使用JAR的应用程序,该JAR利用log4j2进行日志记录。 在这种情况下,您不能选择log4j2...

    R2高性能数据库连接池v1.7源码

    本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。 ...

    R2高性能数据库连接池v1.8改进版源码

    本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。 ...

    R2高性能数据库连接池v1.8源码

    本包需要用到log4j,请在调用时确保存在log4j的jar包。 单池调用方式为Connection conn = R2PoolUtil.getStaticPool().getConnection(); conn用完后必须关闭,不然池中连接会被用完(原理:关闭conn时放回池中)。 ...

    stackify-api-java:适用于Java的Stackify API

    Log4j 1.2: : Log4j 2.x: : 登录: : 安装 将其添加为Maven依赖项: < groupId>com.stackify</ groupId> < artifactId>stackify-api-java < version>4.0.2 Direct Logger的配置和使用 您需要在类路径上...

Global site tag (gtag.js) - Google Analytics