Log4j
一个开源的、轻量级的、用于日志管理的框架
Log4j是Apache的一个开放源代码项目,通过使用Log4j,可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器等;也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
主要用来进行日志记录的管理,包括对日志输出的目的地,输出的信息级别和输出的格式等。
Log4j由三个重要的组件构成:
日志信息的优先级:用来指定这条日志信息的重要程度;
日志信息的输出目的地:指定了日志将打印到控制台还是文件中;
日志信息的输出格式:控制了日志信息的显示内容;
日志级别(Logger):--->优先级
OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL
输出源 (Appender): --->目的地
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
org.apache.log4j.jdbc.JDBCAppender(把日志用JDBC记录到数据库中)
布局(Layout): ---> 输出格式
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
Appender、Layout、Logger三者之间的关系
每个Appender都要引用自己的Layout。
每个Logger都可以指定一个级别,同时引用多个Appender;而一个Appender也同时可以被多个Logger引用。
配置:
Log4j有两种配置方式,一种是xml格式,一种是properties格式。
都是放置到 classpath下面。默认名称分别是:log4j.xml和log4j.properties
配置示例-1
og4j.rootLogger=error,javass.Console,javass.File
log4j.appender.javass.Console=org.apache.log4j.ConsoleAppender
log4j.appender.javass.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.javass.Console.layout.ConversionPattern=%d{HH:mm:ss,SSS} %5p (%C{1}:%M) -%m%n
配置示例-2
log4j.appender.javass.File=org.apache.log4j.DailyRollingFileAppender
log4j.appender.javass.File.file=javass.log
log4j.appender.javass.File.DatePattern=.yyyy-MM-dd
log4j.appender.javass.File.layout=org.apache.log4j.PatternLayout
log4j.appender.javass.File.layout.ConversionPattern=%d{HH:mm:ss,SSS} %5p (%C{1}:%M) -%m%n
log4j.logger.cn.javass=debug
参考地址:http://www.cnblogs.com/zguood/p/4532682.html
原文:http://www.cnblogs.com/sunhongbing/p/7559651.html