Fastify 的日志不是锦上添花,而是物流追踪系统。
const fastify = Fastify({
logger: {
level: 'info'
}
})
fastify.get('/shipments/:id', async function (request) {
request.log.info({ shipmentId: request.params.id }, 'query shipment')
return { id: request.params.id, status: 'in-transit' }
})你会常用到两类日志对象:
fastify.log:中枢级日志request.log:当前包裹级日志
#为什么这件事对 Fastify 特别重要
因为它从一开始就把日志当成主干设施,而不是“项目后期再补个 console.log 替代品”。
包裹到站
├── 生成 request id
├── 进入各工位
├── 经过各仓区
└── 全程可追踪实战建议:
- 开发环境可以配 pretty 输出
- 生产环境保留结构化 JSON
- 关键字段始终打:
requestId、shipmentId、operatorId、statusCode、cost