{
  "title": "龙虾供应链配送系统监控告警演练报告",
  "updatedAt": "2026-04-26 06:04:00",
  "status": "PASS",
  "summary": {
    "total": 8,
    "passed": 8,
    "failed": 0,
    "slow": 0,
    "relayMiss": 0
  },
  "thresholds": {
    "httpStatus": 200,
    "publicRelay": "X-NEXUS-Relay: pc1",
    "slowResponseMs": 3000
  },
  "checks": [
    {
      "name": "API 健康",
      "url": "https://xia.shenliu.cc/xia-api/health",
      "statusCode": 200,
      "durationMs": 222,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "项目进度看板",
      "url": "https://xia.shenliu.cc/xia-board/",
      "expect": "龙虾",
      "statusCode": 200,
      "durationMs": 464,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "管理后台",
      "url": "https://xia.shenliu.cc/xia-admin/",
      "expect": "root",
      "statusCode": 200,
      "durationMs": 136,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "供应商端",
      "url": "https://xia.shenliu.cc/xia-supplier/",
      "expect": "root",
      "statusCode": 200,
      "durationMs": 208,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "发布中心",
      "url": "https://xia.shenliu.cc/xia-release/",
      "expect": "v0.1",
      "statusCode": 200,
      "durationMs": 499,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "数据库演练页",
      "url": "https://xia.shenliu.cc/xia-db-drill/",
      "expect": "生产数据库演练报告",
      "statusCode": 200,
      "durationMs": 1068,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "数据库演练 JSON",
      "url": "https://xia.shenliu.cc/xia-db-drill/report.json",
      "statusCode": 200,
      "durationMs": 1796,
      "relay": "pc1",
      "result": "PASS"
    },
    {
      "name": "行动清单",
      "url": "https://xia.shenliu.cc/xia-action-list/",
      "expect": "生产化上线行动清单",
      "statusCode": 200,
      "durationMs": 304,
      "relay": "pc1",
      "result": "PASS"
    }
  ],
  "alertPolicy": [
    "任一公网入口非 200 或关键文案缺失时，标记为 P0 告警。",
    "API health 非 success 或服务名不匹配时，标记为 P0 告警。",
    "公网响应未经过 pc1 relay 或超过 3 秒时，标记为 P1 运维检查。",
    "数据库演练 JSON 非 PASS 时，暂停真实试运行发布。"
  ],
  "recoveryRunbook": [
    "确认 WSL2 API 进程：ps -ef | grep \"node src/main.js\"。",
    "重启 API：cd /wwwroot/xia/apps/api && setsid env PORT=3300 node src/main.js >/tmp/xia-api.log 2>&1 < /dev/null &。",
    "校验 Nginx：nginx -t && nginx -s reload。",
    "重新执行 smoke：pnpm -C /wwwroot/xia smoke:v0.1。",
    "若 WSL2 IP 变化，按 AGENTS.md 规则重新发布 NEXUS relay。"
  ]
}