Softie 用了 4 个观测平台 + 一组 Lark 机器人。这一页讲清楚谁负责什么、出问题第一时间该看哪里。原则:能用一个工具搞定就别引入第二个,加监控前先做重叠检查。
每个平台职责单一,重叠尽量少。这是 2026-04-07 决策的分工:
所有未捕获异常 + 主动 captureException;浏览器端、Node 端、Worker 端三套 DSN 区分。
用户行为漏斗、转化、留存、Feature Flag。Softie 主力分析平台,关键事件必须服务端追踪兜底。
所有 OpenRouter / Google / Groq 调用都包 trace;记录 prompt、completion、tokens、成本、用户。
免费录全部用户 session;观察用户实际操作路径、卡点、误触。
仅用于 Google Ads 投放归因(广告组 → 转化)。日常分析走 PostHog。
仅用于 Facebook/Instagram 广告投放归因。
所有自动化告警走 Lark 群。Webhook URL 在 ~/.claude/projects/-Users-gloom-softieweb/memory/reference_lark_webhooks.md,推送前必须查记忆库确认归属,不要猜。
payment-health-cron.yml + payment-reconcile-cron.yml
~/scripts/ 全局脚本,crontab 每天 10:00
oc_d200...4ef6)
向 Lark 群推送必须用 interactive 卡片,禁止纯文本/post:
header.template 用颜色区分类型:indigo(技术)/ red(告警)/ green(成功)/ orange(注意)/ blue(信息){tag: 'hr'},底部用 note 标来源 + 日期column_set 多列布局--dry-run 验证)2026-04-07 参考 Vivi DailyLoop 重构。架构:
{event:String} 参数化语法报错。已改用白名单校验 + inline。改 HogQL 前先在该 deployment 试。
| 告警 | 阈值 | 动作 |
|---|---|---|
| 支付转化率 | 15 分钟窗口跌破基线 | Pay-Bot 卡片 + Sentry alert |
| BullMQ waiting | >200(warn)/ >1000(critical) | 每日 08:00 BJT 检查 + Lark |
| BullMQ failed | >50(warn)/ >200(critical) | 每日 08:00 BJT 检查 + Lark |
| OpenRouter 余额 | < $50 | Cost-Bot 提醒充值 |
| Fly 机器健康 | any not passing | Sentry uptime alert |
| 关键 endpoint 200 | 非 2xx | status-monitor.yml 推 Lark |
CLAUDE.md 全局要求:上线后 5 分钟内自动 curl 关键 endpoint,验证 200 + 关键 payload 字段在位。status-monitor.yml 负责跑这个;新关键路径上线时记得加进去。
| 用户报错 / 现象 | 第一站 |
|---|---|
| "页面白屏"、"按钮没反应" | Sentry → 浏览器端 issues |
| "扣费但没解锁"、"支付失败" | PostHog 事件链 + 看 orders 表 + Pay-Bot 群历史 |
| "AI 回复很慢 / 没回复" | Langfuse trace + Sentry 服务端 issues |
| "我点不通某个 flow" | Clarity 录屏看用户实际操作 |
| "昨天的推送没收到" | worker logs (fly logs -a softieweb -i worker) + 队列深度 |
| "成本突涨" | Cost-Bot 历史 + Langfuse 按 model 分组 |
| "DAU 突降" | 每日数据监控管道当天报告 + Bitable |
continue-on-error,不动生产代码路径