Appender of Log4j [6]

其他Appender主要有:

  • LF5Appender
  • NTEventLogAppender
  • RewriteAppender
  • AsyncAppender

15.LF5Appender

LF5Appender是log4j提供的一个图形界面的日志消息查看、检索GUI工具,开发基于swing编程。LF5Appender同样是AppenderSkeleton的子类,requiresLayout返回false,不需要关联Layout。看代码是Contributed by ThoughtWorks Inc.下面截图包下面都是lf5相关的代码,如果有用java做界面的话,可以参考下怎么写swing。

Continue Reading...

Appender of Log4j [4]

和网络有关的Appender有:

  • JDBCAppender
  • TelnetAppender
  • JMSAppender
  • SMTPAppender
  • SocketAppender
  • SocketHubAppender
  • SyslogAppender

org.apache.log4j.net包下主要是一些网络相关的类:

Continue Reading...

Appender of Log4j [3]

4.FileAppender

WriterAppender另一个子类为FileAppender,顾名思义,FileAppender用于将LoggingEvent输出到文件中(ConsoleAppender仅为标准输出、标准错误),扩展了用户可以输出日志的范围。FileAppender在WriterAppender基础上,增加的可配置属性有:

  • File: 日志输出所在的文件名
  • Append: 文件写出模式,默认值为true表示在原有文件后追加内容,为false表示流建立时先清空truncate文件原有内容
  • BufferedIO: 文件流写出是否使用缓冲,true表示使用,默认值为false即不使用缓冲
  • BufferSize: 如果文件流写出使用缓冲,缓冲区内存大小,默认8k

Continue Reading...

Appender of Log4j [2]

下面介绍AppenderSkeleton的具体实现类们~
注意,AppenderSkeleton的实现类们会继承AppenderSkeleton可配置的一些属性,介绍具体子类时就不一一体现描述这些AppenderSkeleton父类的属性了。

1.NullAppender

NullAppender重载了doAppend、append方法,函数体都为空,NullAppender并不会将任何LoggingEvent输出,功效类似于linux中的/dev/null,应用于需要使用日志框架但又对到达NullAppender的日志内容不关心的情景。

/**
* Does not do anything.
* */
public void doAppend(LoggingEvent event) {
}

/**
* Does not do anything.
* */
protected void append(LoggingEvent event) {
}

Continue Reading...