跳到主要内容

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;当设置依赖运行时连接时,请使用代码注册。