架构:包括核心对象和支持对象
核心对象:
|----Logger:用于获取日志信息
|---- Appender:确定日志存放目的地,比如数据库、文件、控 制台、Unix Syslog 等
• AppenderSkeleton
• AsyncAppender
•
ConsoleAppender
•
DailyRollingFileAppender
• ExternallyRolledFileAppender
•
FileAppender
•
JDBCAppender
• JMSAppender
• LF5Appender
• NTEventLogAppender
• NullAppender
•
RollingFileAppender
• SMTPAppender
• SocketAppender
• SocketHubAppender
• SyslogAppender
• TelnetAppender
• WriterAppender
|---- Layout:确定日志格式
• DateLayout
•
HTMLLayout
•
PatternLayout
• SimpleLayout
• XMLLayout
支持对象:
|---- Level:Level 对象定义了日志信息的粒度和优先级。API 定义了七种级别:OFF、DEBUG、INFO、ERROR、WAR N、FATAL、ALL。
|---- Filter:Filter 对象用来分析日志信息,进而决定该条日志是否被记录
|---- ObjectRenderer:ObjectRenderer 对象负责为传入日志框架的不同对象提供字符串形式的表示,Layout 对象使用该对象来准备 最终的日志信息
|---- LogManager:LogManager 对象管理日志框架,它负责从系统级的配置文件或类中读取初始配置参数
个人认为最重要的是Appender,首先选定Appender类型,再确定Layout类型以及其他参数