Skip to content

base-log-factory

npm package

NPM versionNPM DownloadsTypeScript

🚀 一个灵活简单的 JS 日志库,通过配置不同的 Appender 可以在不同的环境记录或收集日志内容。适用于浏览器和NodeJS环境。


🌟 核心特性

  • 多级别日志
    支持 TRACE/DEBUG/INFO/WARN/ERROR/FATAL/OFF 七级日志分级,精准控制日志输出粒度。

  • 灵活的Appender配置
    内置 ConsoleAppender(控制台输出)、FileAppender(按大小滚动)和 DateFileAppender(按日期滚动),支持自定义Appender扩展。

  • 丰富的日志格式化
    提供 BasicLayout(基础格式)和 PatternLayout(类似Log4j的灵活格式),支持自定义占位符。

  • 上下文管理
    支持MDC(Mapped Diagnostic Context),方便在日志中携带请求ID、用户信息等上下文数据。


🛠 核心概念详解

1. 日志级别(支持彩色标识)

级别说明建议使用场景
TRACE6跟踪级详细日志调试代码逻辑时的详细流程记录
DEBUG5调试信息开发阶段的调试输出
INFO4常规运行信息业务流程关键节点的正常状态记录
WARN3警告事件非致命但需关注的问题(如资源不足)
ERROR2错误事件异常或失败操作的记录
FATAL1严重错误事件导致系统崩溃的致命错误
OFF0关闭所有日志禁用日志输出

2. Appender类型对比

类型特点典型场景
ConsoleAppender实时输出到控制台开发调试阶段
FileAppender按文件大小滚动(如app.log.1)生产环境日志持久化
DateFileAppender按日期滚动(如app.2023-08-01.log)需要按天归档日志时