Logger
Mastra 通过 src/mastra/ 目录下的 logger.ts 文件设置项目的 logger。该文件默认导出一个 logger,用它替代 Agent、Workflow 和其他组件所使用的内置 ConsoleLogger。
本页介绍基于文件的约定。有关日志级别、transport 和 Provider 的详细信息,请参阅日志记录。
快速开始快速开始的直接链接
创建 src/mastra/logger.ts 并默认导出一个 logger,例如 PinoLogger:
src/mastra/logger.ts
import { PinoLogger } from '@mastra/loggers'
export default new PinoLogger({
name: 'Mastra',
level: 'info',
})
Mastra 会先注册 logger,再注册 storage、observability 和 File-based Agent,因此这些组件在完成连接时都会通过此 logger 记录日志。
与代码配置的优先级与代码配置的优先级的直接链接
代码中注册的日志配置优先于 logger.ts。如果你在 src/mastra/index.ts 中向 new Mastra({ logger }) 传入 logger(或设置 logger: false 来禁用日志记录),Mastra 会忽略 logger.ts 并发出警告。当一个项目级 logger 足以满足需求时,请使用 logger.ts;当设置依赖运行时连接时,请使用代码注册。