用途:为 Cloudflare Workers 及边缘应用补齐可观测性能力。边缘环境没有常驻进程、文件系统和可注入的 APM 代理,因此需要在应用层实现结构化日志、请求级追踪上下文和显式错误捕获。
主要能力:覆盖三大支柱——日志(带关联 ID 的结构化 JSON 事件)、追踪(请求级 span,记录耗时与元数据)、监控(错误率、延迟分位数与告警阈值)。每个请求生成 trace ID,贯穿所有子请求与日志;span 度量单个操作耗时;日志与 span 批量通过 waitUntil() 异步发送到外部采集器(如 Datadog、Grafana、Sentry),避免增加响应延迟。
使用方式:在 Worker 的 fetch 处理器中创建 RequestTracer,用 tracer.span(name, fn) 包裹子操作,出错时记录错误名称、消息与堆栈,最后在 finally 中调用 ctx.waitUntil(tracer.flush(env)) 上报。日志条目包含 timestamp、level、traceId、spanId、message、data、error、duration_ms 等字段。
适用场景:为 Workers 添加日志、用分布式追踪调试生产问题、设置错误监控与告警、实现健康检查端点、测量延迟分位数、构建运维看板。
最佳实践与限制:异步上报日志;错误响应中返回 trace ID 便于用户反馈;生产环境避免非结构化 console.log;对错误率(>1%)和 p99 延迟(>500ms)设阈值;debug 日志按 1-10% 采样控制成本;通过 x-trace-id 头跨服务传播。平台支持方面,Cursor、VS Code、Windsurf、Claude Code、Cline 为完整支持,aider 为部分支持。具体收费与价格暂未提供。