Log日志:主要用于记录程序运行的情况,以便于程序在部署之后的排错调试等等!也有利于将这些信息进行持久化(如果不将日志信息保存到文件或数据库,则信息便会丢失)
Java Logging API
需JDK1.4版本以上才能支持。
java.util.logging.* 包是JDK的日志记录API。
基本概念
2.log level – 日志等级:从FINEST到SEVERE级别
请参考JDK文档
3.handler – 日志输出处理器,即用来将格式化后的日志信息输出,J2SE提供了下面的处理器
StreamHandler – 将信息输出到一个OutputStream对象
ConsoleHandler – 将信息输出到控制台
FileHandler – 将信息输出到文件
还有Socket处理器和内存处理器等
4.Formater – 用来对日志信息进行格式化
SimpleFormater – 简单的格式化输出
XmlFormater – Xml格式化输出
5.logManager – 日志管理器,它包含有那些被命名的logger,以及从配置文件中读取来的一些控制信息
Log4j
基本概念
Log4j比JDK Logging更加成熟。Log4j是事实上 日志记录标准。
三大概念:logger/appender/layout
logger – 使用这个对象来进行输出
appender – 使用这个对象来定义输出到哪里去
layout – 使用这个对象来定义输出的格式
例如定义两种类型的输出:一种是控制台,一种是文件:
//log4j.properties部分文件:
- ### direct log messages to console ###
- log4j.appender.stdout=org.apache.log4j.ConsoleAppender
- log4j.appender.stdout.Target=System.out
- log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
- log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
- ### direct messages to file oa.log ###
- log4j.appender.file=org.apache.log4j.FileAppender
- log4j.appender.file.File=d:/oa.log
- log4j.appender.file.layout=org.apache.log4j.PatternLayout
- log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j的级别(level)
DEBUG < INFO < WARN < ERROR <FATAL
级别由小到大,当级别为DEBUG时,log4j会输出DEBUG , INFO ,WARN ,ERROR ,FATAL 五种信息
当级别为INFO时,log4j会输出 INFO ,WARN ,ERROR ,FATAL 四种信息,依次类推;log4j总是输出比它级别大的信息