`
tju_ZhangJ
  • 浏览: 38557 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

java log4j基本配置详解

阅读更多
这两天学习了一下Log4j的基本配置,确实感觉很好很强大。一下是本人配置的一个小例子

log4j属性配置文件为 log4j.properties
其中的配置内容为:
log4j.rootLogger=info,A,B,C

log4j.appender.A=org.apache.log4j.FileAppender
log4j.appender.A.File=abc.log
log4j.appender.A.layout=org.apache.log4j.PatternLayout
log4j.appender.A = org.apache.log4j.RollingFileAppender
log4j.appender.A.MaxFileSize= 3KB
log4j.appender.A.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

log4j.appender.B = org.apache.log4j.RollingFileAppender
log4j.appender.B.Threshold = ERROR 
log4j.appender.B.MaxFileSize= 3KB
log4j.appender.B.File = log.html
#log4j.appender.B =org.apache.log4j.DailyRollingFileAppender
log4j.appender.B.layout=org.apache.log4j.HTMLLayout 

log4j.appender.C=org.apache.log4j.ConsoleAppender
log4j.appender.C.Threshold = WARN
log4j.appender.C.Target=System.out
log4j.appender.C.layout=org.apache.log4j.PatternLayout
log4j.appender.C.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n


一下是基本分析:

首行 log4j.rootLogger=info,A,B,C定义了一个根级别info,凡是定义了Info级别或以上的日志都被输出到以下A B C中
log4j定义了6中级别,分别为debug , info, warn, error , fatal , log (按照升序排列),
日志级别是可以继承的,也就是说当我们定义info级别的时候,当调用warn级别的日志输出时也是可以被执行的。
但通过 log4j.appender.B.Threshold = ERROR 语句可以设置输出级别为ERROR,
所以一般情况下定义的根级别比较低,在后续的设置中可以再调整。

log4j.appender.A=org.apache.log4j.FileAppender
log4j.appender.A.File=abc.log
将日志输出到指定文件abc.log中,

log4j.appender.A.layout=org.apache.log4j.PatternLayout
用于设置日志输出格式,此处为标准输出 HTMLLayout为网页格式输出

log4j.appender.A.MaxFileSize= 3KB
设置文件大小最大为3KB,当文件超过3KB以后,就会自动备份,然后生成另外一个文件abc.log.1

log4j.appender.A.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
定义日志输出信息的内容
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名 {1}表示只有一个类名,{2}表示向上追溯一个包名
%t 输出产生该日志事件的线程名
%m 输入日志的信息内容
%n 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921 {ABSOLUTE}表示只显示十分秒 毫秒
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数

log4j可输出的数据源包括 控制台  文件  应用于文件回滚 数据库 socket  每天新建日志  自定义Appender等
各种数据源的配置如下:

log4j.rootLogger=DEBUG,CONSOLE,A1,im
log4j.addivity.org.apache=true
# 应用于控制台
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=DEBUG
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.Encoding=GBK
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
#log4j.appender.CONSOLE.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD] n%c[CATEGORY]%n%m[MESSAGE]%n%n
#应用于文件
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=file.log
log4j.appender.FILE.Append=false
log4j.appender.FILE.Encoding=GBK
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
# Use this layout for LogFactor 5 analysis
# 应用于文件回滚
log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender
log4j.appender.ROLLING_FILE.Threshold=ERROR
log4j.appender.ROLLING_FILE.File=rolling.log
log4j.appender.ROLLING_FILE.Append=true
log4j.appender.CONSOLE_FILE.Encoding=GBK
log4j.appender.ROLLING_FILE.MaxFileSize=10KB
log4j.appender.ROLLING_FILE.MaxBackupIndex=1
log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

# Set up for Log Facter 5
log4j.appender.SOCKET.layout=org.apache.log4j.PatternLayout
log4j.appender.SOCET.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]%n%c[CATEGORY]%n%m[MESSAGE]%n%n
# Log Factor 5 Appender
log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender
log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000

# 用于数据库
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
log4j.appender.DATABASE.user=root
log4j.appender.DATABASE.password=
log4j.appender.DATABASE.sql=INSERT INTO LOG4J (Message) VALUES ('[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n')
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
log4j.appender.DATABASE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
# 每天新建日志
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=log
log4j.appender.A1.Encoding=GBK
log4j.appender.A1.DatePattern='.'yyyy-MM-dd
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L : %m%n


分享到:
评论

相关推荐

    log4j常用配置详解

    log4j常用配置,properties 和.xml两种配置示例

    log4j.properties配置详解

    log4j.properties配置详解

    log4j2-所需jar包+配置详解(详细)

     log4j 2.x版本不再支持像1.x中的.properties后缀的文件配置方式,2.x版本配置文件后缀名只能为".xml",".json"或者".jsn".  系统选择配置文件的优先级(从先到后)如下:  (1).classpath下的名为log4j2-test.json...

    log4j最全面配置及详解

    log4j最全面配置及详解

    log4j配置详解 新手入门教程

    介绍log4j属性配置 可以让你快速上手 介绍log4j属性配置 可以让你快速上手

    Java Log4j使用详解

    详细介绍了在Java中使用Log4j对日志进行管理,并介绍了其相关配置及参数,还提供了对其他日志方法的使用方式进行了介绍,提供详细的参考实例。

    log4j.properties配置详解.doc

    作为Apache的开源项目,Log4j可以使我们很好的控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、 UNIX Syslog守护进程等;也可以方便的使我们控制每一条日志的输出格式;通过...

    Java中 log4j日志级别配置详解

    主要介绍了Java中 log4j日志级别配置详解,需要的朋友可以参考下

    java log4j 示例

    此项目是log4j的一个简单示例源代码。如果想看此示例的详解请登录http://blog.csdn.net/xiangsuixinsheng/article/details/6687079查看。

    详解Java中log4j.properties配置与加载应用

    主要介绍了 log4j.properties配置与加载应用的相关资料,需要的朋友可以参考下

    log4j.properties详解与例子

    在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行...Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java特性文件(键=值)】。(这里只说明properties文件)

    log4j 详解异步日志的配置和测试

    主要介绍了 log4j 详解异步日志的配置和测试的相关资料,需要的朋友可以参考下

    LOG4J详解与配置

    详细log4j配置信息,对新手来说很方便

    log4j 本人亲自测试 总结

    log4j配置详解,本人亲自测试总结,新人必备啊

    jjava日志文件log4j

     此外,通过Log4j其他语言接口,您可以在C、C++、.Net、PL/SQL程序中使用Log4j,其语法和用法与在Java程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第三方扩展,您可以很...

    Node.js log4js日志管理详解

    如果用过JAVA中log4j的同学,肯定对日志并不陌生,学习log4js会更得心应手的。 项目要用log4js记录日志,网上找的教程都是很久以前的,新版本log4js跟旧版本有一些不同,看文档结合旧版本配置了能用的log4js,记录...

    Java进阶课程日志框架视频教程

    --12-Log4j的组件和配置文件介绍.mp4 --13-Log4j的内置日志记录.mp4 --14-Log4j的layout配置.mp4 --15-Log4j的FileAppender配置.mp4 --16-Log4j的JDBCAppender配置.mp4 --17-Log4j的自定义logger.mp4 --18-JCL入门...

    java吐血精华大奉送,你要的都能找到(最新版本)

    技术人员也过个年吧,java_吐血奉献_超值大礼包(最新版本)_含struts,hibernate,spring,log4j,web.xml配置详解,java分页大全,cvs教程,tomcat,swing教程,jboss,及各种框架的配置文件范例

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    3.5.1 下载并配置dom4j 88 3.5.2 dom4j api介绍 88 3.5.3 第一个实例 92 3.5.4 第二个实例 94 3.6 解析名称空间 96 3.6.1 dom和名称空间 96 3.6.2 sax和名称空间 97 3.6.3 jdom和名称空间 98 3.6.4 dom4j和...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    3.5.1 下载并配置dom4j 88 3.5.2 dom4j api介绍 88 3.5.3 第一个实例 92 3.5.4 第二个实例 94 3.6 解析名称空间 96 3.6.1 dom和名称空间 96 3.6.2 sax和名称空间 97 3.6.3 jdom和名称空间 98 3.6.4 dom4j和...

Global site tag (gtag.js) - Google Analytics