参考手册Workspace 包参考
Logs 日志工具
统一日志记录工具,基于 consola 封装
本页是 01MVP 模板的 Workspace 包参考。若你正在按功能启用或改造模板,先看 上线与维护。
@01mvp/logs
这是什么
@01mvp/logs 是一个日志工具,帮你在代码里输出运行信息,方便调试和排查问题。底层基于 consola 封装,自动区分开发环境和生产环境。
能做什么
- 开发调试 -- 控制台彩色输出,方便看日志
- 生产记录 -- 输出结构化日志,方便采集和分析
- 模块打标 -- 给不同模块(认证、支付、存储)创建独立 logger,日志带标签便于区分来源
- 分级输出 -- 支持 debug(调试)、info(普通)、warn(警告)、error(错误)、fatal(致命)等多级
怎么用
直接 import,无需配置,自动根据 NODE_ENV 切换行为:
import { logger } from "@01mvp/logs";
logger.info("操作成功");
logger.error("出错了");推荐给每个模块创建自己的 logger,带标签更好定位:
import { createModuleLogger } from "@01mvp/logs";
const authLogger = createModuleLogger("auth");
authLogger.info("用户登录成功"); // 输出会带 [auth] 标签大概原理
项目里就两件事在自动处理:
- 开发环境 -- 彩色输出,不显示时间戳,debug 及以上级别都会显示
- 生产环境 -- 无颜色,显示时间戳,只显示 info 及以上级别
日志输出到标准输出(stdout),部署平台(Vercel、Docker、K8s)会自动采集,你可以在外部日志平台做检索和告警。
最佳实践
- 给每个功能模块创建独立 logger
- 记录数据时带结构化上下文(比如
{ userId, orderId }),不要只写一句话 - 不要记录敏感信息(密码、token、身份证号、完整手机号/邮箱)
- 错误日志一定要附带上下文,方便定位问题
- 用合适的级别:debug 调试用,info 正常事件,warn 可恢复问题,error 系统还能跑但有问题