- 新增 type: cpu checker,基于 os.cpus() 两次快照计算 CPU 使用率 - 配置项:sampleDuration(默认 1s)、includePerCore(默认 false) - expect 字段:usagePercent、idlePercent、maxCoreUsagePercent、minCoreUsagePercent、durationMs - idlePercent 与 usagePercent 互补恒等于 100,百分比范围 0-100 - logicalCoreCount 仅输出到 observation,不作为 expect 字段 - 不暴露 userPercent / systemPercent - 语义校验禁止 sampleDuration >= timeout - 支持 AbortSignal 超时取消 - 完整测试覆盖:schema、validate、normalize、resolve、calculate、execute、expect、config-loader - 新增用户文档 docs/user/checkers/cpu.md - 更新 checker 索引、配置类型列表、示例配置和 schema
Checker 参考
Checker 是 DiAL 的拨测执行单元。每个 target 通过 type 选择一个 checker,并配置对应的专属字段和 expect 规则。
适用场景:查询 checker 类型选择、专属配置、expect 字段、示例和各 checker 文档入口。
支持的类型
| 类型 | 用途 | 文档 |
|---|---|---|
http |
HTTP/HTTPS 应用层健康检查 | HTTP |
cmd |
执行本地命令或脚本 | Cmd |
db |
PostgreSQL/MySQL/SQLite 连接和查询检查 | DB |
tcp |
TCP 端口可达性和 banner 探测 | TCP |
udp |
UDP payload 请求-响应检查 | UDP |
icmp |
基于系统 ping 的存活、延迟、丢包检查 |
ICMP |
dns |
本机解析或指定 DNS server 协议级检查 | DNS |
llm |
大模型服务应用层健康检查 | LLM |
ws |
WebSocket 可达性和消息交互检查 | WS |
cpu |
本机 CPU 使用率健康检查 | CPU |
选择建议
| 目标 | 推荐 checker |
|---|---|
| Web API、网页、HTTP 状态码或响应体 | http |
| 本机脚本、外部命令、CLI 工具 | cmd |
| 数据库连接或查询结果 | db |
| 端口是否可连接、服务 banner | tcp |
| UDP 服务响应或简单心跳 | udp |
| 主机可达性、延迟、丢包率 | icmp |
| 域名解析值、DNS RCODE、TTL、flags | dns |
| LLM API 是否可用、输出是否符合预期 | llm |
| WebSocket 可达性或消息交互验证 | ws |
| 本机 CPU 使用率健康检查 | cpu |
通用字段
所有 checker 都共享 target 通用字段,见 配置文件。
通用断言模型
各 checker 的 expect 字段复用 ValueMatcher、ContentExpectations 和 KeyedExpectations。详情见 校验规则。
更新触发条件
新增、移除或修改 checker 类型、用途、选择建议、通用字段或通用断言模型时,必须更新本文档。checker 专属字段变化还必须同步更新对应 checkers/<type>.md。