You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fastify配置logger.prettyPrint为true时报pretty不是函数错误如何解决?

该报错由pino-pretty版本兼容性问题导致:v9及以上版本的pino-pretty调整了导出规则,不再默认导出格式化函数,而是导出了包含default属性的对象,而你当前使用的Fastify/pino版本依旧按照旧逻辑直接调用pretty()方法,因此触发类型错误。

你可以选择以下任意一种方案解决:


方案1:降级pino-pretty到兼容版本

直接安装v8.x版本的pino-pretty,无需修改原有配置:

npm install pino-pretty@8.x
# 若使用yarn
yarn add pino-pretty@8.x
# 若使用pnpm
pnpm add pino-pretty@8.x

安装完成后重启服务即可恢复正常。


方案2:适配新版pino-pretty,修改Fastify日志配置

prettyPrint配置项早已被pino官方废弃,你可以改用官方推荐的transport写法适配新版依赖,原有pino-pretty版本不需要降级:
将你原有logger配置替换为如下内容:

logger: {
  transport: {
    target: 'pino-pretty',
    // 可选:添加pino-pretty自定义配置
    options: {
      colorize: true, // 输出彩色日志
      translateTime: 'SYS:yyyy-mm-dd HH:MM:ss' // 格式化时间戳
    }
  }
}

修改后重启服务即可生效。


内容的提问来源于stack exchange,提问作者selim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 05:27:01