独立评估文档 · 不跟处于任何迁移决策· 面向 architecture review 与 PoC 选型
为什么独立成文:fly.io 迁移是否可行的核心门槛之一是「能不能监控起来」。这份调研不预设迁移结论,只回答:fly 平台能给我们哪些监控手段、能擑住我们关心的 8 类风险吗、实施代价有多大。
信息源:fly.io 官方 docs/monitoring + community.fly.io 自建方案贴 + Datadog/Better Stack/Grafana Cloud 接入文档 + GitHub 开源工具仓。生成日期:2026-05-14。
一句话结论
fly 不是监控裸机 — Prometheus + Grafana + 30+ sink 的 log shipper 是开箱的,比预想强很多。但官方 GraphQL API 不暴露 billing/cost breakdown 数据,这是我们最关心的「按量风险监控」上的核心死角,意味着 cost monitor 必须 cron 抓资源清单 × 自己维护单价表自己算。
原生能力(开箱即用)
Prometheus 自动暴露 🟢 超预期
- Endpoint:
https://api.fly.io/prometheus/<org-slug>/,flyctl auth token 作为 Bearer
- 自动采集:proxy / instance / Postgres / volume 全套指标
- Proxy 层:HTTP 响应计数 / 延迟 / TCP 连接 / TLS 握手 / 数据传输
- Instance 层:CPU / 内存 / 磁盘 I/O / 网络 / fs / load average / exit codes / OOM 标记
- Managed Postgres:40+ 指标(复制延迟 / buffer 统计 / 事务计数)
- Volumes:大小 / 使用率百分比
- 采样 15s,保留期 ~15 天(社区实测,未官方声明)
- 粒度:per-machine / per-app / per-org,标签
app/region/instance/host
官方 Grafana 实例 🟢
- fly-metrics.net per-org 自动鉴权
- 开箱 dashboard 覆盖 CPU / 内存 / 网络 / HTTP status breakdown
- 不涉 billing / egress region 分桶 / orphaned 资源
Fly Log Shipper 🟢 生态丰富
- 仓库:github.com/superfly/fly-log-shipper
- 传输路径:fly app logs → 内部 NATS(
nats://[fdaa::3]:4223)→ Vector 路由 → sink
- 30+ sink:Datadog / Better Stack / Loki / Honeycomb / SigNoz / S3 / New Relic / Slack / HTTP webhook …
- 部署:独立 fly app + env var,30min 起步