跳过正文
  1. Log4a/
  2. Log4a使用指南/

实现追加器

loading · loading · ·
新手 文档
目录

所有追加器都继承自同一抽象类AbstractAppender,开发者可以自行实现其中关键方法,并通过Logger中的addAppender方法将追加器绑定至Logger

追加器的生命周期
#

追加器有以下周期

onLog(level, tag, time, count, message)

  • level Level - 日志等级
  • tag string - 日志所属类名
  • time number - 日志打印时间戳
  • count number - 该日志为此Appender处理的第count条日志
  • message string - 日志内容

当有日志被记录时,追加器的onLog方法会被Logger调用,开发者可自行实现日志功能。

onTerminate()

当追加器被终止时,onTerminate方法会被Logger调用,开发者应当在此处回收不再被使用的内存,或取消不必要的事件订阅。

实例
#

这个例子实现了一个最简单的追加器,用于将日志输出到控制台上

class SimpleAppenderClass extends AbstractAppender {
    onLog(level: Level, tag: string, time: number, count: number, message: string): void {
        console.log(message);
    }
    onTerminate(): void {
        return;
    }
}
export const SimpleAppender = new SimpleAppenderClass;
import { SimpleAppender } from './file.ets';
import { Logger, LogManager } from '@pie/log4a';

class SomeClass {
    logger: Logger = LogManager.getLogger(this).addAppender(SimpleAppender);
}

尝试一下
#