# 设计 — 服务器列表展开刷新 + 单机 CPU/内存历史

**日期**: 2026-06-09  
**状态**: 已实施

## 背景与目标

用户否决名称列常驻副标题/chip；需在 **点击名称展开** 后刷新实时指标，并展示单机 **24h CPU/内存** 趋势与 **离线时段**。

## 数据原则（已确认）

| 原则 | 决定 |
|------|------|
| 存储 | `server_metric_samples` + `heartbeat_flush` 每 10min |
| 采样 | flush 时刻 Redis 快照（非 10min 均值） |
| 指标 | CPU、内存 |
| 保留 | 7 天 purge |
| 写入对象 | `agent_version` 非空的子机 |
| 离线 | 每点 `is_online`；无 Redis / 离线写 null 指标；API 返回 `offline_segments` |

## API

`GET /api/servers/{id}/metrics?hours=24`（上限 168）

## 前端

- 名称列：箭头 + 名称
- `ServerInlineDetail`：`active` 时并行 `GET /servers/{id}`、`/logs`、`/metrics`
- `ServerMetricSparklines`：`v-sparkline` × 2 + 离线 chip

## 验收

- 展开刷新三接口；离线时段 chip；无名称列副标题；单测 + type-check
