Open-status ticket filtering and shorter list TTL, FreeScout API via jump host with write-path cache clear, OpenBoard finance-hold flags on board create, and expanded shenzhou web tab UX.
27 KiB
joy web · 神州(生产资产世界)
设计决议 · 2026-07-10 · 命名:神州(不用「线上」「生产」作导航主名)
状态:已定方向,未落地导航与采集(本文为完整想法整理,供实现与命名体系对齐)
修订 · 2026-07-10:范围从「prod-watch 监测态势」校正为「生产资产台账」七类骨架;§4 清单据 devops 权威源(inventory.ini+production-servers.md)落实。
0. 一句话
神兽守内场;神州是它们可以遨游的大地与天下。
joy web 必须把「麟悦飞轮 / 神兽集群」与「生产资产世界」分成两个世界——外面跑着的云主机、网站、业务系统、CDN、定时任务,和内场的 VM/飞轮是两回事,否则注意力、权限与误操作代价会缠在一起。
| 世界 | 正式名 | 是什么 | 不是什么 |
|---|---|---|---|
| 内场 | 飞轮 / 神兽 | Parallels VM、pi 分身、work、Board、NATS、记忆 | 公网站 SLA、云主机 |
| 工程 | 代码 | feicode / 本地 Git / CI runner 态势 | 迷你 GitHub;生产资产台账 |
| 外场 | 神州 | 云主机、网站、在线服务、业务系统、CDN/Cloudflare、定时任务、外部依赖 | 飞轮派活;在 joy 里改生产 |
英文 id(实现用):shenzhou(导航 / tab / dashboard.shenzhou)。
对外口语可说「生产环境 / 外部服务」,导航与产品文案主名固定为「神州大地」(2026-07-11 页眉:神兽工坊 / 神州大地 / 混沌蛮荒)。
UI 实现原则(以神兽硬件 tab 为标准、复用全局样式):见 joy-web-design.md。
资产 · 云主机:总览 section + 每台独立 section + #pane-sz-assets 4 列网格(对齐 #pane-hardware)。
1. 命名:为何叫「神州」
1.1 神话与产品同构
| 名 | 在飞轮里 | 隐喻 |
|---|---|---|
| 神兽 | 16 分身,各守一 VM | 守土之灵,内场秩序 |
| 神州 | 生产资产世界:云主机、网站、业务系统、CDN、定时任务 | 神兽可遨游的大地;业务与天下 |
「神州」在中文里本就有「中华大地 / 辽阔疆域」之意,比「线上」「生产」更贴麟悦–龙奇–神兽的祥瑞命名血脉,也避免:
- 「线上」过泛(什么都在线)
- 「生产」过冷、易与「生产环境变更」操作话术混淆(红线用语仍用「生产变更」)
1.2 与红线用语的分工
| 用语 | 场景 |
|---|---|
| 神州 | joy web 导航、态势产品、文档、agent 读 dashboard |
| 生产 / 生产服务器 | 红线、devops 变更、Ansible、事故通报(保持严肃操作语义) |
| 外部服务 | 神州的子集:第三方 API、DNS、CDN 边缘等 |
红线不变:生产服务器变更 / 不可逆 / 集群策略 / 跨 VM 批量 → 上报菲比斯。
神州 tab 默认只读,不因改名降低管控(运营档见 §7)。
1.3 不用的名字
| 弃用主名 | 原因 |
|---|---|
| 线上 | 语义空;与飞轮「在线会话」混淆 |
| 生产(作导航) | 像运维后台,不像产品区;易诱发「在面板上点变更」 |
| ops-prod / 运维·生产 | 继续把外场塞进内场运维,边界失败 |
2. 问题陈述:为何必须拆开
2.1 现状(2026-07-10)
| 已有 | 缺口 |
|---|---|
| 顶栏默认偏 神兽;任务/消息/记忆/流水线 = 飞轮 | 无「神州」一等导航 |
| 代码 tab:feicode 态势 + CI 节点 + 本地 Git | 生产资产未一等公民 |
| 运维 tab:集群中间件、探针、LLM | 与公网生产资产混谈时角色不清 |
| 硬件 tab:Mac / NAS / 家用物理机 | 不是云主机/生产资产 |
devops production-servers.md + inventory.ini + prod-watch.sh |
数据已在 devops,面板没有成世界 |
2.2 混在一起的代价
- 注意力:神兽 degraded 与 站点 5xx / 业务下单失败抢同一 badge,业务红被淹没。
- 采集模型:
collect_vm面向 10.211.55.*;神州是公网生产机 + 公网 HTTP + DNS/CDN API + 各机 cron/timers。 - 权限心智:飞轮可 inject / Board;神州变更默认 change/control → devops。
- 命名污染:在「神兽」里塞 production 列 = 让守护神去背公网 SLA,叙事错乱。
2.3 设计目标
- 人一打开 joy web,能回答:内场还好吗?工程堵吗?神州太平吗?
- Agent 读 JSON 时
dashboard.shenzhou与dashboard.vms并列,不互相污染。 - 神兽「遨游神州」= 可观测、可汇报、可提议;不是在 joy 里直接动刀。
3. 三区信息架构(完整)
joy web 顶栏心智(逻辑三区,实现可先扁平 tab)
┌──────────────── 飞轮(内场)─────────────────┐ ┌ 工程 ┐ ┌──── 神州(外场)────┐
│ 神兽 会话 任务 协作 消息 记忆 数据 流水线 │ │ 代码 │ │ 神州(新导航) │
└──────────────────────────────────────────────┘ └──────┘ └───────────────────┘
运维 → 建议逐步正名为「集群」(infra / 探针 / LLM)
硬件 → Mac·NAS·家用物理机(不进神州)
3.1 飞轮区(神兽家园)
| Tab(现状) | 职责 |
|---|---|
| 神兽 | VM + 分身 + work 健康 |
| 会话 | tmux / 三员 / SOP 派工承载 |
| 任务 / 协作 / 消息 | Board、dispatch、NATS、邮箱外勤 |
| 记忆 / 数据 / 流水线 | 沉淀、资产、业务管线(内场产出) |
不放:云主机、网站、业务系统、CDN、定时任务、SSL。
3.2 工程区(代码)
关注点归属,不是机器归属。 同一台机按「它在回答哪个关注点的问题」切片,不按物理切两半。
feicode-prod不是两面特例——它就是神州「云主机」类里的一台:runner/zombie 那一项归代码 tab(工程态势),系统/站点/SSL 面归神州(生产资产)。规则跟任何生产机一样。
| 属于代码 | 不属于代码(属神州) |
|---|---|
| feicode API、PR、镜像供应链 | weixiaoduo.com 等站点 HTTP |
| devops / feicode-prod 上的 Actions runner / zombie | 同机 nginx / 站点进程 / 业务容器(除 runner 外) |
| 本地 Git dirty/ahead | 生产机部署是否与 tag 一致(可后续神州「发布面」) |
3.3 神州区(本设计主体)
生产资产世界的纵向台账,七类:云主机、网站、在线服务、业务系统、CDN/Cloudflare、定时任务、外部依赖。
监测(健康/SSL/到期/红点/load)是每类资产的属性列,不是独立骨架——顶部留一个脉搏摘要即可。
4. 神州资产清单(七类)
这是神州的骨架。监测维度(HTTP 探活 / SSL / 磁盘 / load)是每类里的属性列,不是独立章节。
权威清单源:devops~/ansible/inventory.ini(Ansible 控制节点,标准化管理的生产资产)+~/docs/devops/production-servers.md(规格/SSL/cron 详情,最后更新 2026-04-11,部分需现采刷新)。Mac~/.ssh/config的 ProxyJump 别名是 Mac 侧连接路径,不是资产真相源。文档不写裸 IP,前端配置化。
4.1 云主机
生产主站([production] · 4 台标准化):
| 别名 | 角色 | 规模 / 管理 |
|---|---|---|
weixiaoduo-prod |
WordPress 业务主站(多站点 80+ 子域名,含 mall 商城 / matomo 统计 / modiqi / mudelms) | 16核30G,宝塔,Docker |
feicode-prod |
feiCode 平台(Forgejo + act_runner + registry×3 + license-server + wenpai-bridge + aimirror) | 80核62G,宝塔,Docker |
cravatar-prod |
Cravatar 头像 + 多站点托管(cravatar / wenpai / litepress / windfonts / admincdn / skypanel / motucloud / site.feibisi) | 72核62G,OpenResty(非宝塔),Podman |
wenpai-org |
文派(Mac SSH config 旧别名 wenpai-prod-b,同 IP 47.243.29.80) |
— |
边缘/中继([edge] · 5 台): bj-1p / hz-1p / sz-1p / gz-1p / hk-edge(北京/杭州/深圳/广州/香港)。
DNS 节点: cn-heyuan(河源,跑 dns.feibisi.com 的 ThinkPHP 服务;不在 [edge] 组,单独用途)。
退役: wptea-prod(47.120.22.94,2026-04-18 decommissioned,站点已迁至 weixiaoduo-prod;prod-watch 仍监控 wptea.com,待清理)。Mac SSH config 旧别名 server1 / myserver / aliyun-22 与 weixiaoduo-prod / feicode-prod / wptea-prod 同 IP 重复,属历史别名。
客户托管机(inventory 之外): 经 debian 跳,8 台(aetled / dental-part / cqxstx / yayaka / tigerflow / oa52 / jeukh-server / yayaka-new)。不在 Ansible 标准化管理内,多为一次性客户服务;持久台账只收「常用维护」的几个,实现时按活跃度筛选纳入,其余按需(feibisi:到时再筛)。
属性:SSH 可达、load、磁盘、内存、运行时间、到期、跑着什么(→ 关联到 4.3/4.4)。
采集架构(关键):devops 是 Ansible 控制节点,用
~/.ssh/ansible_ed25519直连所有生产机([all:vars]已配 ConnectTimeout/StrictHostKeyChecking),比 Mac ProxyJump 干净得多。神州采集建议委托 devops 跑(结果写 NAS 或回传 Mac dashboard),避免 Mac 开 N 条 SSH 隧道。
4.2 网站
对人访问的公网站点(页面类)。prod-watch.sh 当前监控 9 个主域名(这只是子集):
- weixiaoduo.com / mall.weixiaoduo.com
- modiqi.com / windfonts.com
- admincdn.com / cravatar.com / motucloud.com
- wptea.com(已迁,待移除)/ wpcy.com
实际托管站点几十个(见 production-servers.md 各机站点表):feibisi.com/feibisi.net、wenpai.cn/wenpai.net、litepress.cn、skypanel.com、cravatar.cn、site.feibisi.com、feicode.com(双视角)、wpfanyi.com(→ wpcy.com 301)等。
属性:HTTP code、延迟、SSL 天数、证书、DNS 解析。
数据源:~/.cache/prod-watch/latest.json + alerts;站点全集从生产机 nginx vhost / 宝塔配置采。
实测 2026-07-10 20:42:prod-watch 9 站全绿(0 alert)——
production-servers.md(04-11 快照)记的「SSL 大面积过期」主域名已修,属历史非现状。但 prod-watch 覆盖面太窄:cravatar.cn / litepress.cn / wptea.com / feibisi.cn / weixiaoduo.net 等曾过期站点不在 9 站清单内,现状未知;wptea.com已退役仍在清单。扩 prod-watch 到完整站点表 = Phase 0 第一改进项,也是神州最直接的价值兑现。
4.3 在线服务
对外 API / 服务端点(机器读的,区别于人读的网站)。
- Cravatar 头像 API(cravatar.com / cn.cravatar.com / hk.cravatar.com / en.cravatar.com,公开端点)
- wenpai-bridge 翻译桥接(feicode-prod)
- license-server 许可证服务(feicode-prod)
- dns.feibisi.com DNS 服务(ThinkPHP,cn-heyuan)
- Matomo 统计 API(tongji.feibisi.com,weixiaoduo-prod)
属性:可用性、延迟、错误率、依赖的云主机。
4.4 业务系统
带业务流程的应用(跑在云主机上)。
- WordPress 多站点:weixiaoduo-prod(80+ 子站,含 mall 商城 / modiqi / mudelms / weizhan 微站)
- Matomo 网站分析:tongji.feibisi.com(weixiaoduo-prod,Docker:matomo-app + matomo-mysql)
- Forgejo / feiCode 平台:feicode-prod(forgejo_FeiCode-1 + forgejo-postgres,11.0.3)
- Cravatar 头像服务:cravatar-prod(含 fonts-vault 容器)
- WindFonts 字体 CDN:cravatar-prod(windfonts-app 管理面)
- SkyPanel / MotuCloud:cravatar-prod 托管
- wenpai-bridge / aimirror / registry×3(dockerhub/ghcr/codeberg 镜像代理):feicode-prod
- Mautic 营销自动化:feicode-prod 容器
mautic-Modiqi-1已停 4 个月,待确认是否重启或清理 - Weblate:feicode-prod 容器 已停 4 个月
属性:版本、依赖(PHP/DB/Redis)、健康、最近错误、关联云主机、容器状态。
高价值信号:业务系统的「业务红」(下单失败、同步卡住、登录异常、容器频繁重启)比「主机 ping 通」更接近真实业务 SLA——神州最该亮的就是这类。
4.5 CDN & Cloudflare
接入层。CF 运维中心在 modiqi(~/.config/cloudflare/ + ~/secrets/cloudflare.enc.yaml sops+age 加密 + ~/docs/cloudflare-optimization.md)。
实测 NS(2026-07-10 dig):
| 用法 | 域名 / 项 |
|---|---|
| CF DNS(NS=cloudflare) | admincdn.com、wenpai.net |
| CF Workers(modiqi 部署) | go.wpcy.net(短链 url-shortener)、domain-check、domains |
| CF 证书 | 部分站点(wpcommunity/wenfeng 等,范围待确认) |
| 阿里云 DNS(不走 CF) | weixiaoduo.com / cravatar.com / feicode.com / modiqi.com / windfonts.com / motucloud.com / wptea.com / wpcy.com / wenpai.cn / feibisi.com / feibisi.net / skypanel.com / feimail.com(hichina/alidns) |
| 自建 CDN 资源 | admincdn.com(公共资源,cravatar-prod 托管)、windfonts.com(字体 CDN) |
CF API token:modiqi:~/secrets/cloudflare.enc.yaml(sops+age 加密,需解密读)。
属性:zone 健康、Workers 调用、SSL 状态、缓存态、流量/带宽。
特殊:CF purge cache / Workers 部署是最可能需要「低风险运营」操作的一类——见 §7。
4.6 调度(定时任务)
feicode-prod 已知 cron(来自 production-servers.md):
| 周期 | 任务 |
|---|---|
0 2 * * * |
Forgejo PostgreSQL 备份 |
0 3 * * * |
wenpai-bridge DB 备份 |
0 */6 * * * |
Renovate Bot |
0 5 * * * |
actions-mirror-sync |
*/5 * * * |
webhook 监控 |
* * * * * |
forgejo-pages auto-install-hooks |
Mac 侧:prod-watch.sh 本身(cron */5)。
其余机待登机探测:systemctl list-timers + crontab -l + wp-cron + 业务级任务(备份/同步/报表/清理)。NAS 备份拉取每天 03:00(devops backup-prod-to-nas.sh)。
属性:上次跑、下次跑、耗时、成败、卡住/漏跑。
痛点:定时任务最容易「静默死」——跑挂了没人知道、卡住不报、漏跑累积。神州「烽火」很大一块来自这。
4.7 外部依赖
第三方 API / 服务。主力云厂商 = 阿里云(三套账号:aliyun-feibisi / aliyun-wenpai / modiqi-aliyun-creds,sops+age 加密存各机 ~/secrets/)。
| 类 | 厂商 | 入口 / 凭据 |
|---|---|---|
| DNS | 阿里云(万网 hichina/alidns) | 阿里云控制台 |
| 邮件 | 阿里云企业邮箱 | imap.qiye.aliyun.com:993 / smtp.qiye.aliyun.com:465;14 VM 已部署 IMAP/SMTP 凭据(email-client.py) |
| 对象存储 / 云服务 | 阿里云(OSS 待精确) | aliyun-*.enc.yaml |
| 支付 | WooCommerce 商城(mall.weixiaoduo.com) | 支付宝/微信(WP 配置内,Phase 2 精确) |
| 代码镜像 | DockerHub / GHCR / Codeberg | feicode-prod 三套 registry 代理 |
| CDN | Cloudflare | 见 §4.5,token 在 modiqi |
凭据统一管理:sops+age 加密 ~/secrets/(cluster-recall [2701])。
属性:可用性、延迟、配额/余额、状态页。Phase 0 只占位,Phase 2 精确化各厂商状态页。
4.8 明确不进神州
| 对象 | 归属 |
|---|---|
| 16 台 Parallels VM | 神兽 |
| joy-konqi / tux / wapuu / clones | 会话 / 神兽 |
| Board / dispatch | 任务 |
| NATS 总线本身 | 消息 / 集群运维 |
| Mac Studio / NAS / KK-PC / huawei-pc | 硬件 |
| feicode PR / Actions 工作流红 | 代码 |
5. 导航与页面结构(产品)
5.1 顶栏
- 新增一级导航:神州
- icon 建议:
globe/map(实现时定) - badge:仅神州注意力(站点 down、SSL crit、主机 unreachable、任务卡住、业务红),不与神兽 badge 合并公式
5.2 神州内结构
顶部脉搏摘要(全局注意力:红点几处、SSL crit、主机 unreachable、任务卡住、业务红)+ 纵向资产分类(每类一张表/折叠区,监测维度是该类的属性列)。
| # | section id | 标题 | 内容 |
|---|---|---|---|
| 0 | shenzhou-pulse |
脉搏 | 顶部跨类摘要:此刻神州安否?红点几处?不展开细节 |
| 1 | shenzhou-hosts |
云主机 | §4.1 台账 + 健康/盘/load 属性 |
| 2 | shenzhou-sites |
网站 | §4.2 + HTTP/SSL 属性(prod-watch 主源) |
| 3 | shenzhou-services |
在线服务 | §4.3 API 端点 |
| 4 | shenzhou-business |
业务系统 | §4.4 + 业务红/版本/容器态 |
| 5 | shenzhou-cdn |
CDN & Cloudflare | §4.5 zone/DNS/缓存 |
| 6 | shenzhou-jobs |
调度 | §4.6 定时任务上次/下次/成败 |
| 7 | shenzhou-edge |
边缘 | bj/hz/sz/gz/hk-edge(5 台,经 devops)等公网中继(可选,或并入云主机) |
| 8 | shenzhou-alerts |
烽火 | 跨类告警时间线(prod-watch + vmalert + 任务失败 + 业务红 + SSL 到期) |
| 9 | shenzhou-external |
外部依赖 | §4.7 第三方状态(Phase 2) |
Phase 0 可只做 0+2+8(脉搏 + 网站表 + 烽火,纯 prod-watch);Phase 1 加 1(云主机);Phase 2 补 3/4/5/6/9。
5.3 文案语气
- 用「疆域 / 脉搏 / 烽火」可点到为止,主体仍用 云主机/网站/业务系统/CDN/定时任务,避免过度玩梗影响扫读。
- 页脚固定:
神州 · 生产资产世界 · 变更走 devops / 红线上报菲比斯 · 神兽可观测、不擅自动刀
6. 数据模型
6.1 dashboard.shenzhou
view: shenzhou
ok: bool # 采集总成是否可用
ts: "..."
summary: {
hosts_total, hosts_up, hosts_down,
sites_total, sites_down, sites_slow,
services_total, services_down,
business_total, business_alert,
ssl_warn, ssl_crit,
jobs_total, jobs_failed, jobs_stuck,
attention_score
}
cloud_hosts: [ { id, role, reachable, load, disk_pct, mem_pct, uptime, expires, runs[], services{}, hint } ]
sites: [ { id, url, http_code, latency_ms, ssl_days, status, checked_at } ]
services: [ { id, endpoint, available, latency_ms, error_rate, host_id } ]
business: [ { id, kind, version, deps{}, healthy, container_status, last_error, host_id } ]
cdn: [ { id, provider, zone, ssl_mode, cache_hit_ratio, rules } ]
jobs: [ { id, name, host_id, last_run, next_run, duration, status } ]
edge: [ ... ]
external: [ { id, kind, available, latency_ms, quota, status_page } ]
alerts: [ { level, source, msg, at } ]
attention: [ { level, kind: host|site|service|business|ssl|cdn|job|edge|external, id, msg } ]
与 dashboard.forgejo / dashboard.vms 并列;禁止把生产资产塞进 vms。
6.2 采集原则
| 原则 | 说明 |
|---|---|
| 只读为主 | Phase 0 无任何写操作;运营档白名单另见 §7 |
| 委托 devops | 生产机采集优先在 devops 跑(ansible key 直连),Mac 走 ProxyJump 作降级 |
| 优先文件 | Phase 0:读 prod-watch 已有 JSON / 告警 + devops production-servers.md,少开新 SSH |
| 配置化 | 七类资产列表来自 inventory.ini / yaml,非前端写死 |
| 超时降级 | 单机/单端点失败不影响整页;reachable:false + error |
| 代理 | 公网探测与 feicode 一样注意 Mac 代理干扰 |
| SSH 去重 | 同一台云主机被代码 tab(runner)与神州(系统)各采时,共享会话、badges 不叠加 |
| 权限 | 变更文档写明:神州观察 ≠ 授权 change |
6.3 与现有采集的关系
| 现有 | 神州用法 |
|---|---|
devops inventory.ini + production-servers.md |
清单真相源(标准化生产资产 + 规格/SSL/cron 详情,需定期现采刷新) |
prod-watch.sh |
「网站」格主源(9 主域名,全集待扩) |
collect_ci_nodes(feicode-prod runner) |
留在代码;云主机格另采系统指标 |
collect_physical_hosts |
家用物理机 → 硬件;不改名塞神州 |
collect_infra / monitoring |
集群侧 → 运维/集群 |
| vmalert 生产规则 | Phase 2 只读摘要进烽火 |
| Cloudflare API | 新采:zone/DNS/缓存/SSL(Phase 1,待 token) |
| 定时任务 | 新采:各生产机 systemctl list-timers + crontab -l + wp-cron(Phase 1,feicode-prod 已知 6 条) |
| 业务系统 | 新采:容器态(docker/podman ps)+ health endpoint + 版本探测(Phase 2) |
7. 权限与红线(铁律)
操作面分三档:
| 档 | 范围 | Phase | 授权 |
|---|---|---|---|
| 只读观察 | 看所有资产态势、深链外部状态页 | Phase 0 默认 | 无需授权 |
| 低风险运营 | Cloudflare purge cache、查日志、重跑 cron(逐项白名单) | Phase 1+ | devops 预批 + 独立 audit |
| 变更 | 重启服务、改配置、部署、批量生产变更 | 永不进 joy | devops + 菲比斯红线 |
| 动作 | 档 |
|---|---|
| 看云主机 / 网站 / 业务系统 / CDN / 任务 / SSL | 只读 ✅ |
| 深链 feicode / Cloudflare dashboard / 外部状态页 | 只读 ✅ |
| 神兽根据神州红点发 Board observe 任务 | ✅ 鼓励(遨游 = 感知后协调,非直连生产 shell) |
| Cloudflare purge cache、查日志、重跑 cron | 低风险运营(白名单) |
| 在 joy 点「重启 php-fpm / reload nginx / 部署」 | ❌ 变更,走红线 |
| 批量生产变更 | ❌ 非 joy 职责;devops + 菲比斯红线 |
上报链不变:神兽 → 龙奇 → 红线 → 菲比斯。
8. 分阶段落地
Phase 0 — 立国(低风险)
- 顶栏 神州 tab + 七类骨架(2026-07-10 UI;2026-07-11 Phase1 探针)
collect_shenzhou()读 prod-watchlatest.json+ alerts → 填「网站」格 + 顶部脉搏 + 烽火(2026-07-10 落地,src/joy/dashboard/shenzhou.py,66/66 测试过)读 production-servers.md 做 SSL 快照→ 实测 04-11 快照的过期已修复(§4.2),改用 prod-watch 实时 SSL;扩清单才是真盲区- badge 独立(含 hosts/services);文档本文
- 不 新 SSH 风暴(Phase 0 纯读 prod-watch 缓存 + 配置台账)
Phase 1 — 开疆
- 「云主机」格:标准化生产资产 SSH 探针,委托 devops 并发(缓存 120s;2026-07-11 tux)
- 客户机按活跃度筛选纳入(常用维护的几个)
- Cloudflare API 接入 →「CDN & Cloudflare」格
- 「定时任务」格:systemctl list-timers + crontab + wp-cron(feicode-prod 6 条打底)
- 低风险运营白名单(purge cache / 查日志 / 重跑 cron)逐项 audit
- 站点 × 主机弱关联(域名 → 云主机映射,从 nginx vhost / 宝塔采)
- 清理 prod-watch 里已退役的
wptea.com
Phase 2 — 入世
- 「业务系统」格:容器态(docker/podman ps)+ health endpoint + 版本(业务红 > 主机 ping;揪出 Mautic/Weblate 长期停止这类)
- 「在线服务」格:公网 HTTPS 轻探(内部端点 skip;2026-07-11)
- 「在线服务」格:更细延迟/错误率
- 「外部依赖」格:第三方状态页
- vmalert 生产告警只读摘要进烽火
- 跨类关联(zombie 漏磁盘:代码 tab 的 zombie × 神州的盘满 → 同一病根联动)
- (可选)顶栏视觉「飞轮 | 工程 | 神州」分组,仍单 SPA
非目标(长期)
- 第二套独立
prod.joy站点(除非单 SPA 证明不够) - 神州内嵌第二 Forgejo
- 在面板上完成生产发布流水线
9. 与其它 tab 的改名建议(非强制同步做)
| 现状 | 建议 | 说明 |
|---|---|---|
| 运维 | 集群 | 强调内场基建,减少与神州撞车 |
| 硬件 | 保持 | 家用/宿主物理层 |
| 代码 | 保持 | 工程区 |
| 神兽 | 保持 | 内场主角 |
改名可随 Phase 0 或随后 PR,不阻塞神州 tab 先上。
10. 实现触点(供编码时索引)
| 层 | 路径 / 约定 |
|---|---|
| 导航 | src/joy/web/app.js → TABS 增 { id: 'shenzhou', label: '神州', ... } |
| UI | src/joy/web/js/tabs/shenzhou.js(新,七类折叠区) |
| 采集 | src/joy/dashboard/shenzhou.py 或 collect_shenzhou in package;生产侧采集委托 devops |
| schema | dashboard/schema.py chunk 名 shenzhou(七子段) |
| 配置 | configs/shenzhou.example.yml(cloud_hosts / sites / services / business / cdn / jobs / external 七段,cloud_hosts 从 inventory.ini 生成) |
| Cloudflare | ~/.config/joy/cloudflare.yml(CF API token + zone 白名单) |
| 缓存 | /tmp/joy-dashboard.json → shenzhou 键 |
| 真相源 | devops ~/ansible/inventory.ini + ~/docs/devops/production-servers.md |
| 交叉文档 | 本文;joy-forgejo-observe.md(代码≠神州);linuxjoy prod-watch.sh |
11. 验收标准(Phase 0)
- 顶栏可见 神州,默认不必进神兽才能看到生产红点。
GET /api/dashboardJSON 含shenzhou.summary+sites(或明确_error)。- 人为制造或回放 prod-watch 告警时,神州 badge ≥ 1,神兽 badge 公式不变。
- 文档与 UI 文案主名均为「神州」,无「线上」作导航名。
- 七类骨架在 UI 占位可见(哪怕只有「网站」格有数据,其余折叠区标 "Phase 1+")。
- 无任何「一键重启生产」类控件;低风险运营档 Phase 0 不开。
12. 决议记录
| 项 | 决议 |
|---|---|
| 是否单独导航 | 是 — 一级 tab「神州」 |
| 是否塞进神兽 | 否 |
| 是否长期挂在运维子页 | 否(最多过渡,不作为终态) |
| 主名 | 神州(不用「线上」) |
| 骨架 | 资产台账(纵切七类),监测维度降为属性——不是 prod-watch 监测仪表盘(横切) |
| 清单真相源 | devops inventory.ini + production-servers.md(标准化资产);客户机 inventory 外、按需筛 |
| 采集架构 | 委托 devops(ansible key 直连)优先,Mac ProxyJump 降级 |
| 操作面 | 只读(默认)/ 低风险运营(白名单)/ 变更(走红线)三档 |
| 与代码 tab | 关注点归属,不是机器归属;feicode-prod 是云主机层一台,非特例 |
| 隐喻 | 神兽守内场,可观神州、遨游天下,不在此擅自动刀 |
13. 相关文档
- 飞轮与命名:
linuxjoy/docs/architecture/company-flywheel.md - 代码态势:
joy-forgejo-observe.md - 生产资产真相源:
devops:~/ansible/inventory.ini+devops:~/docs/devops/production-servers.md - 生产站点脚本:
linuxjoy/scripts/cluster/prod-watch.sh - 生产 SSH:
linuxjoy/docs/ai-context/project-structure.md - joy 面板架构:
../joy-panel-cli-architecture-plan.md
本文整理自 2026-07-10 会话:推送 joy-cli 后,讨论生产未接入 joy web、不宜与神兽混用;菲比斯定名「神州」。同日范围校正为「生产资产台账」七类骨架,§4 清单据 devops 权威源(inventory.ini + production-servers.md)落实——纠正 wptea-prod 退役、wenpai-org 规范名、gz-1p 实存、admincdn 非独立机、客户机非标准化等;发现 SSL 大面积过期为首批烽火素材。标注「待补」处(Cloudflare / 客户机角色 / 关键定时任务 / 外部依赖厂商)需进一步确认。