Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录
切换导航
U
ubains-module-test
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
郑晓兵
ubains-module-test
Commits
6d5f8905
提交
6d5f8905
authored
5月 15, 2026
作者:
陈泽健
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fit(edit):ai服务器监测需求文档补充生成JSON报告格式文件,新增JSON格式模板文件。
上级
2db56ec5
显示空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
1026 行增加
和
6 行删除
+1026
-6
JSON格式说明.md
Docs/PRD/AI服务器监测/JSON格式说明.md
+1020
-0
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/新统一平台/展厅环境/_PRD_AI服务器监测需求.md
+1
-1
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/新统一平台/负载一/_PRD_AI服务器监测需求.md
+1
-1
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/新统一平台/负载三/_PRD_AI服务器监测需求.md
+1
-1
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/新统一平台/负载二/_PRD_AI服务器监测需求.md
+1
-1
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/预定项目/兰州中石化/_PRD_AI服务器监测需求.md
+1
-1
_PRD_AI服务器监测需求.md
Docs/PRD/AI服务器监测/预定项目/大亚湾中广核项目/_PRD_AI服务器监测需求.md
+1
-1
没有找到文件。
Docs/PRD/AI服务器监测/JSON格式说明.md
0 → 100644
浏览文件 @
6d5f8905
# 服务器巡检报告 JSON 格式说明
## 版本历史
| 版本 | 日期 | 说明 | 作者 |
|:---|:---|:---|:---|
| 1.0 | 2026-05-15 | 初始版本 | AI巡检系统 |
---
## 1. 文件规范
### 1.1 文件命名
```
health_summary_<服务器名>_<时间戳>.json
```
**示例:**
```
health_summary_兰州中石化_20260515062304.json
health_summary_展厅环境_20260515093523.json
```
### 1.2 文件编码
-
**编码格式**
: UTF-8
-
**BOM**
: 不建议添加
-
**缩进**
: 2个空格
-
**换行符**
:
`\n`
(Unix风格)
### 1.3 字符集
-
**字符串**
: 必须使用UTF-8编码
-
**特殊字符**
: JSON中需要转义的字符必须转义
-
**中文**
: 支持中文键名和值
---
## 2. JSON 结构
```
json
{
"version"
:
"1.0"
,
"report_type"
:
"server_health_check"
,
"timestamp"
:
"2026-05-15T06:23:04"
,
"server"
:
{
"name"
:
"兰州中石化"
,
"host"
:
"139.159.163.86"
,
"hostname"
:
"kunpeng"
,
"uptime_days"
:
183
,
"os"
:
"Ubuntu 18.04.3 LTS"
,
"kernel"
:
"Linux 4.15.0-70-generic"
},
"status"
:
{
"overall"
:
"warning"
,
"critical_issues"
:
0
,
"warnings"
:
3
,
"score"
:
75
},
"metrics"
:
{
"cpu"
:
{
"percent"
:
1.1
,
"cores"
:
8
,
"load_1min"
:
0.0
,
"load_5min"
:
0.0
,
"load_15min"
:
0.0
},
"memory"
:
{
"percent"
:
78.7
,
"used_gb"
:
11.8
,
"total_gb"
:
15.0
,
"swap_used_gb"
:
0.1
,
"swap_total_gb"
:
7.8
},
"disk"
:
{
"root_percent"
:
66.0
,
"root_used_gb"
:
46.2
,
"root_total_gb"
:
70.0
,
"data_percent"
:
23.0
,
"data_used_gb"
:
92.0
,
"data_total_gb"
:
400.0
},
"network"
:
{
"established"
:
77
,
"time_wait"
:
2
,
"close_wait"
:
10
},
"process"
:
{
"total_threads"
:
1443
,
"zombie_processes"
:
0
,
"running_processes"
:
145
}
},
"services"
:
{
"mysql"
:
{
"version"
:
"8.0.28"
,
"uptime_seconds"
:
15276380
,
"connections"
:
{
"current"
:
15
,
"max"
:
151
,
"usage_percent"
:
9.9
},
"queries"
:
{
"slow_count"
:
0
,
"qps"
:
146783128
},
"databases"
:
[
{
"name"
:
"ubains"
,
"size_mb"
:
1433.16
},
{
"name"
:
"ubains_lz_0"
,
"size_mb"
:
45.66
}
]
},
"redis"
:
{
"version"
:
"6.2.6"
,
"uptime_days"
:
3
,
"memory_mb"
:
1.16
,
"hit_rate_percent"
:
58.0
,
"key_count"
:
69
,
"clients"
:
14
},
"emqx"
:
{
"version"
:
"5.8.7"
,
"uptime_days"
:
37
,
"sessions"
:
166
,
"subscriptions"
:
23
,
"clients"
:
14
,
"messages"
:
{
"delivered"
:
0
,
"dropped"
:
535
}
},
"java"
:
{
"version"
:
"1.8.0_321"
,
"process"
:
{
"memory_mb"
:
88
,
"threads"
:
1
,
"file_descriptors"
:
7
}
}
},
"containers"
:
[
{
"name"
:
"umysql"
,
"status"
:
"running"
,
"cpu_percent"
:
0.23
,
"memory_mb"
:
2134
,
"memory_percent"
:
26.46
,
"restart_count"
:
0
},
{
"name"
:
"ujava2"
,
"status"
:
"running"
,
"cpu_percent"
:
0.86
,
"memory_mb"
:
2432
,
"memory_percent"
:
29.08
,
"restart_count"
:
0
}
],
"security"
:
{
"auth_failures_24h"
:
267
,
"ssh_brute_force"
:
{
"enabled"
:
true
,
"top_ips"
:
[
{
"ip"
:
"1.71.254.57"
,
"attempts"
:
25
},
{
"ip"
:
"115.151.72.100"
,
"attempts"
:
22
}
]
},
"ssh_config"
:
{
"root_login"
:
"yes"
,
"password_auth"
:
"yes"
},
"selinux"
:
"disabled"
,
"firewall"
:
"configured"
},
"issues"
:
{
"critical"
:
[],
"warning"
:
[
{
"category"
:
"内存"
,
"message"
:
"内存使用率偏高"
,
"current"
:
"78.7%"
,
"threshold"
:
"85%"
,
"impact"
:
"medium"
},
{
"category"
:
"进程"
,
"message"
:
"线程总数偏高"
,
"current"
:
"1443"
,
"threshold"
:
"1000"
,
"impact"
:
"medium"
},
{
"category"
:
"缓存"
,
"message"
:
"Redis缓存命中率偏低"
,
"current"
:
"58.0%"
,
"threshold"
:
"90%"
,
"impact"
:
"low"
}
]
},
"trends"
:
{
"cpu"
:
{
"current"
:
"1.1%"
,
"previous"
:
"1.1%"
,
"change"
:
"0.0%"
,
"trend"
:
"stable"
},
"memory"
:
{
"current"
:
"78.7%"
,
"previous"
:
"78.7%"
,
"change"
:
"0.0%"
,
"trend"
:
"stable"
}
},
"ai_analysis"
:
{
"overall_status"
:
"需要关注"
,
"risk_level"
:
"medium"
,
"suggestions"
:
[
{
"priority"
:
"high"
,
"category"
:
"性能优化"
,
"title"
:
"线程数偏高排查"
,
"description"
:
"当前线程数1443超过建议阈值1000,建议排查是否存在线程泄漏或未正确关闭的连接。"
,
"actions"
:
[
"使用jstack检查线程状态"
,
"检查连接池配置"
]
},
{
"priority"
:
"medium"
,
"category"
:
"缓存优化"
,
"title"
:
"Redis缓存命中率提升"
,
"description"
:
"当前缓存命中率58%低于建议值90%,建议检查缓存策略和键的过期时间设置。"
,
"actions"
:
[
"分析热点数据"
,
"调整过期策略"
]
}
]
},
"report"
:
{
"full_path"
:
"/root/reports/health_20260515_062304.md"
,
"relative_path"
:
"health_20260515_062304.md"
,
"size_bytes"
:
25068
,
"generated_by"
:
"ai_health_check_v3"
,
"check_duration_seconds"
:
45
}
}
```
---
## 3. 字段详细说明
### 3.1 根级别字段
#### version
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: JSON格式版本号
-
**格式**
:
`主版本.次版本`
(如: "1.0")
-
**枚举值**
: "1.0"
#### report_type
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: 报告类型标识
-
**固定值**
: "server_health_check"
-
**用途**
: 区分不同类型的巡检报告
#### timestamp
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: 报告生成时间
-
**格式**
: ISO 8601格式
`YYYY-MM-DDTHH:mm:ss`
-
**示例**
: "2026-05-15T06:23:04"
-
**时区**
: 使用服务器本地时区
---
### 3.2 server(服务器信息)
#### server.name
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: 服务器/项目名称
-
**最大长度**
: 50字符
-
**示例**
: "兰州中石化", "展厅环境", "生产环境A"
#### server.host
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: 服务器IP地址
-
**格式**
: IPv4地址
-
**示例**
: "192.168.1.100", "139.159.163.86"
#### server.hostname
-
**类型**
:
`string`
-
**必填**
: 否
-
**说明**
: 主机名
-
**最大长度**
: 50字符
-
**示例**
: "kunpeng", "localhost"
#### server.uptime_days
-
**类型**
:
`integer`
-
**必填**
: 否
-
**说明**
: 系统持续运行时间(天)
-
**范围**
: >= 0
-
**示例**
: 183, 30
#### server.os
-
**类型**
:
`string`
-
**必填**
: 否
-
**说明**
: 操作系统名称和版本
-
**示例**
: "Ubuntu 18.04.3 LTS", "openEuler 24.03 (LTS-SP3)"
#### server.kernel
-
**类型**
:
`string`
-
**必填**
: 否
-
**说明**
: 内核版本信息
-
**示例**
: "Linux 4.15.0-70-generic"
---
### 3.3 status(整体状态)
#### status.overall
-
**类型**
:
`string`
-
**必填**
: 是
-
**说明**
: 整体健康状态
-
**枚举值**
:
-
`"normal"`
: 正常,无严重问题
-
`"warning"`
: 警告,存在需要注意的问题
-
`"critical"`
: 严重,存在紧急问题
-
**判断规则**
:
-
`critical`
: critical_issues > 0 OR 任何指标严重超阈值
-
`warning`
: warnings >= 3 OR 任何指标警告超阈值
-
`normal`
: 其他情况
#### status.critical_issues
-
**类型**
:
`integer`
-
**必填**
: 是
-
**说明**
: 严重问题数量
-
**范围**
: >= 0
#### status.warnings
-
**类型**
:
`integer`
-
**必填**
: 是
-
**说明**
: 警告问题数量
-
**范围**
: >= 0
#### status.score
-
**类型**
:
`integer`
-
**必填**
: 否
-
**说明**
: 健康评分(0-100)
-
**范围**
: 0-100
-
**计算建议**
:
```
100 - (critical_issues * 20) - (warnings * 5)
```
---
### 3.4 metrics(核心指标)
#### metrics.cpu
- **类型**: `object`
- **说明**: CPU相关指标
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| percent | number | 是 | CPU使用率(0-100) |
| cores | integer | 否 | CPU核心数 |
| load_1min | number | 否 | 1分钟平均负载 |
| load_5min | number | 否 | 5分钟平均负载 |
| load_15min | number | 否 | 15分钟平均负载 |
**告警阈值**:
- percent > 85: 警告
- percent > 95: 严重
- load_1min > cores * 2: 警告
#### metrics.memory
- **类型**: `object`
- **说明**: 内存相关指标
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| percent | number | 是 | 内存使用率(0-100) |
| used_gb | number | 否 | 已使用内存(GB) |
| total_gb | number | 否 | 总内存(GB) |
| swap_used_gb | number | 否 | Swap已使用(GB) |
| swap_total_gb | number | 否 | Swap总量(GB) |
**告警阈值**:
- percent > 85: 警告
- percent > 95: 严重
- swap_used_gb > 0: 警告
#### metrics.disk
- **类型**: `object`
- **说明**: 磁盘相关指标
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| root_percent | number | 是 | 根分区使用率(0-100) |
| root_used_gb | number | 否 | 根分区已使用(GB) |
| root_total_gb | number | 否 | 根分区总量(GB) |
| data_percent | number | 否 | 数据分区使用率(0-100) |
| data_used_gb | number | 否 | 数据分区已使用(GB) |
| data_total_gb | number | 否 | 数据分区总量(GB) |
**告警阈值**:
- root_percent > 90: 警告
- data_percent > 90: 警告
#### metrics.network
- **类型**: `object`
- **说明**: 网络连接状态
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| established | integer | 否 | ESTABLISHED连接数 |
| time_wait | integer | 否 | TIME_WAIT连接数 |
| close_wait | integer | 否 | CLOSE_WAIT连接数 |
**告警阈值**:
- time_wait > 500: 警告
- close_wait > 100: 警告
#### metrics.process
- **类型**: `object`
- **说明**: 进程相关指标
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| total_threads | integer | 否 | 总线程数 |
| zombie_processes | integer | 否 | 僵尸进程数 |
| running_processes | integer | 否 | 运行中进程数 |
**告警阈值**:
- zombie_processes > 0: 严重
- total_threads > 1000: 警告
---
### 3.5 services(服务状态)
#### services.mysql
- **类型**: `object`
- **说明**: MySQL数据库状态
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| version | string | 否 | MySQL版本号 |
| uptime_seconds | integer | 否 | 运行时长(秒) |
| connections | object | 否 | 连接信息 |
| queries | object | 否 | 查询统计 |
| databases | array | 否 | 数据库列表 |
#### services.redis
- **类型**: `object`
- **说明**: Redis缓存状态
| 字段 | 类型 | 必填 | 说明 |
|:---|---|:---|:---|
| version | string | 否 | Redis版本号 |
| uptime_days | integer | 否 | 运行天数 |
| memory_mb | number | 否 | 内存使用量(MB) |
| hit_rate_percent | number | 否 | 缓存命中率(0-100) |
| key_count | integer | 否 | 键总数 |
| clients | integer | 否 | 客户端连接数 |
**告警阈值**:
- hit_rate_percent < 90: 警告
#### services.emqx
- **类型**: `object`
- **说明**: EMQX消息队列状态
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| version | string | 否 | EMQX版本号 |
| uptime_days | integer | 否 | 运行天数 |
| sessions | integer | 否 | 会话数 |
| subscriptions | integer | 否 | 订阅数 |
| clients | integer | 否 | 客户端连接数 |
| messages | object | 否 | 消息统计 |
#### services.java
- **类型**: `object`
- **说明**: Java应用状态
| 字段 | 类型 | 必填 | 说明 |
|:---|---|:---|:---|
| version | string | 否 | Java版本号 |
| process | object | 否 | 进程信息 |
---
### 3.6 containers(容器状态)
**类型**: `array`
**说明**: Docker容器列表
**数组元素结构**:
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| name | string | 是 | 容器名称 |
| status | string | 是 | 容器状态 |
| cpu_percent | number | 否 | CPU使用率 |
| memory_mb | number | 否 | 内存使用量(MB) |
| memory_percent | number | 否 | 内存使用率 |
| restart_count | integer | 否 | 重启次数 |
**状态枚举值**:
- `"running"`: 运行中
- `"exited"`: 已停止
- `"restarting"`: 重启中
**告警阈值**:
- restart_count > 0: 警告
- status = "exited": 检查是否应该运行
---
### 3.7 security(安全信息)
#### security.auth_failures_24h
- **类型**: `integer`
- **必填**: 否
- **说明**: 过去24小时认证失败次数
- **范围**: >= 0
#### security.ssh_brute_force
- **类型**: `object`
- **说明**: SSH暴力破解信息
| 字段 | 类型 | 必填 | 说明 |
|:---|:---|:---|:---|
| enabled | boolean | 否 | 是否检测到暴力破解 |
| top_ips | array | 否 | 攻击源IP列表 |
**top_ips数组元素**:
```
json
{
"ip": "1.71.254.57",
"attempts": 25
}
```
#### security.ssh_config
- **类型**: `object`
- **说明**: SSH配置状态
| 字段 | 类型 | 必填 | 说明 |
|:---|---|:---|:---|
| root_login | string | 否 | root登录状态 ("yes"/"no") |
| password_auth | string | 否 | 密码认证状态 ("yes"/"no") |
---
### 3.8 issues(问题列表)
#### issues.critical
- **类型**: `array`
- **说明**: 严重问题列表
- **可以为空**: `[]`
**数组元素结构**:
```
json
{
"category": "分类",
"message": "问题描述",
"current": "当前值",
"threshold": "阈值",
"impact": "影响程度"
}
```
#### issues.warning
- **类型**: `array`
- **说明**: 警告问题列表
- **可以为空**: `[]`
**数组元素结构**: 同critical
**impact枚举值**:
- `"low"`: 低影响
- `"medium"`: 中等影响
- `"high"`: 高影响
- `"critical"`: 严重影响
---
### 3.9 trends(趋势分析)
- **类型**: `object`
- **说明**: 与上次巡检的对比分析
**结构**:
```
json
{
"cpu": {
"current": "1.1%",
"previous": "1.1%",
"change": "0.0%",
"trend": "stable"
}
}
```
**trend枚举值**:
- `"up"`: 上升/恶化
- `"down"`: 下降/改善
- `"stable"`: 持平
---
### 3.10 ai_analysis(AI分析)
#### ai_analysis.overall_status
- **类型**: `string`
- **必填**: 否
- **说明**: AI分析的整体结论
- **示例**: "正常", "需要关注", "紧急"
#### ai_analysis.risk_level
- **类型**: `string`
- **必填**: 否
- **说明**: 风险等级
- **枚举值**: `"low"`, `"medium"`, `"high"`, `"critical"`
#### ai_analysis.suggestions
- **类型**: `array`
- **说明**: AI生成的建议列表
**数组元素结构**:
```
json
{
"priority": "优先级",
"category": "分类",
"title": "建议标题",
"description": "详细说明",
"actions":
[
"操作1", "操作2"
]
}
```
**priority枚举值**:
- `"critical"`: 紧急
- `"high"`: 高
- `"medium"`: 中
- `"low"`: 低
---
### 3.11 report(报告信息)
#### report.full_path
- **类型**: `string`
- **必填**: 否
- **说明**: 完整MD报告的绝对路径
- **示例**: "/root/reports/health_20260515_062304.md"
#### report.relative_path
- **类型**: `string`
- **必填**: 否
- **说明**: 完整MD报告的相对文件名
- **示例**: "health_20260515_062304.md"
#### report.size_bytes
- **类型**: `integer`
- **必填**: 否
- **说明**: 报告文件大小(字节)
#### report.generated_by
- **类型**: `string`
- **必填**: 否
- **说明**: 生成工具/脚本名称
- **示例**: "ai_health_check_v3"
#### report.check_duration_seconds
- **类型**: `integer`
- **必填**: 否
- **说明**: 巡检耗时(秒)
---
## 4. 最小化格式(快速实现)
如果只需要基本的钉钉通知,可以使用最小化格式:
```
json
{
"timestamp": "2026-05-15T06:23:04",
"server": {
"name": "服务器名",
"host": "IP地址"
},
"status": {
"overall": "warning",
"critical_issues": 0,
"warnings": 3
},
"metrics": {
"cpu_percent": 1.1,
"memory_percent": 78.7,
"swap_percent": 1.4,
"threads": 1443
},
"services": {
"mysql": {
"connections": "15/151",
"usage_percent": 9.9
}
},
"issues": {
"critical":
[]
,
"warning":
[
"Swap已使用: 1.4%",
"总线程数: 1443"
]
}
}
```
---
## 5. 数据类型汇总
| 类型 | JSON类型 | 示例 | 说明 |
|:---|:---|:---|:---|
| 字符串 | `string` | `"兰州中石化"` | UTF-8编码 |
| 整数 | `integer` | `1443` | 无小数 |
| 浮点数 | `number` | `78.7` | 可含小数 |
| 布尔值 | `boolean` | `true` | 小写 |
| 数组 | `array` | `[]` | 有序列表 |
| 对象 | `object` | `{}` | 键值对 |
| null | `null` | `null` | 空值 |
---
## 6. 枚举值汇总
| 字段 | 枚举值 | 说明 |
|:---|:---|:---|
| status.overall | normal, warning, critical | 整体状态 |
| status.trend | up, down, stable | 趋势方向 |
| container.status | running, exited, restarting | 容器状态 |
| issue.impact | low, medium, high, critical | 影响程度 |
| suggestion.priority | critical, high, medium, low | 建议优先级 |
| security.risk_level | low, medium, high, critical | 风险等级 |
---
## 7. 命名规范
### 7.1 键名命名
- **格式**: 小写字母 + 下划线
- **示例**: `cpu_percent`, `auth_failures_24h`
- **避免**: 驼峰命名(camelCase)
### 7.2 特殊字符
- **中文字段名**: 支持但建议添加英文别名
- **数组索引**: 从0开始
- **时间戳**: ISO 8601格式
---
## 8. 错误处理
### 8.1 缺失必填字段
如果必填字段缺失,钉钉通知模块应:
- 使用默认值(如timestamp使用当前时间)
- 在日志中记录警告
- 生成包含提示信息的钉钉消息
### 8.2 数据类型错误
如果字段类型不匹配(如percent超出0-100范围),钉钉通知模块应:
- 记录错误日志
- 将该字段标记为"未知"
- 继续处理其他字段
### 8.3 编码错误
如果JSON文件编码不是UTF-8,钉钉通知模块应:
- 尝试其他编码读取
- 如果失败,返回明确错误信息
---
## 9. 扩展性
### 9.1 版本兼容
- **向后兼容**: 新增字段为可选
- **向前兼容**: 版本号升级时保持结构稳定
- **废弃字段**: 标记为deprecated,至少保留2个版本
### 9.2 自定义字段
允许添加自定义字段,但应遵循:
- 使用 `x_` 前缀
- 在文档中说明用途
- 不影响核心功能
### 9.3 示例
```
json
{
"x_custom_field": "custom_value",
"x_project_code": "PXX-2024-001"
}
```
---
## 10. 示例文件
完整示例文件: `health_summary_example.json`
```
json
{
"version": "1.0",
"report_type": "server_health_check",
"timestamp": "2026-05-15T06:23:04",
"server": {
"name": "兰州中石化",
"host": "139.159.163.86",
"hostname": "kunpeng",
"uptime_days": 183,
"os": "Ubuntu 18.04.3 LTS",
"kernel": "Linux 4.15.0-70-generic"
},
"status": {
"overall": "warning",
"critical_issues": 0,
"warnings": 3,
"score": 85
},
"metrics": {
"cpu": {
"percent": 1.1,
"cores": 8,
"load_1min": 0.0,
"load_5min": 0.0,
"load_15min": 0.0
},
"memory": {
"percent": 78.7,
"used_gb": 11.8,
"total_gb": 15.0,
"swap_used_gb": 0.1,
"swap_total_gb": 7.8
},
"disk": {
"root_percent": 66.0,
"root_used_gb": 46.2,
"root_total_gb": 70.0
},
"network": {
"established": 77,
"time_wait": 2,
"close_wait": 10
},
"process": {
"total_threads": 1443,
"zombie_processes": 0,
"running_processes": 145
}
},
"services": {
"mysql": {
"version": "8.0.28",
"uptime_seconds": 15276380,
"connections": {
"current": 15,
"max": 151,
"usage_percent": 9.9
},
"queries": {
"slow_count": 0,
"qps": 146783128
}
},
"redis": {
"version": "6.2.6",
"uptime_days": 3,
"hit_rate_percent": 58.0,
"memory_mb": 1.16
},
"emqx": {
"version": "5.8.7",
"uptime_days": 37,
"sessions": 166,
"clients": 14
}
},
"security": {
"auth_failures_24h": 267,
"ssh_brute_force": {
"enabled": true,
"top_ips":
[
{"ip": "1.71.254.57", "attempts": 25}
]
}
},
"issues": {
"critical":
[]
,
"warning":
[
{
"category": "进程",
"message": "线程总数偏高",
"current": "1443",
"threshold": "1000",
"impact": "medium"
},
{
"category": "缓存",
"message": "Redis缓存命中率偏低",
"current": "58.0%",
"threshold": "90%",
"impact": "low"
}
]
},
"ai_analysis": {
"overall_status": "需要关注",
"risk_level": "medium",
"suggestions":
[
{
"priority": "medium",
"category": "性能优化",
"title": "Redis缓存优化",
"description": "建议检查缓存策略和键的过期时间设置。",
"actions":
[
"分析热点数据", "调整过期策略"
]
}
]
},
"report": {
"full_path": "/root/reports/health_20260515_062304.md",
"relative_path": "health_20260515_062304.md",
"size_bytes": 25068,
"generated_by": "ai_health_check_v3",
"check_duration_seconds": 45
}
}
```
---
## 11. 更新日志
### v1.0 (2026-05-15)
- 初始版本
- 定义基本字段结构
- 支持服务器健康检查数据
- 包含指标、服务、安全、问题等核心数据
---
## 12. 附录
### A. 错误码参考
| 错误码 | 说明 | 处理建议 |
|:---|:---|:---|
| JSON001 | 文件编码不是UTF-8 | 尝试其他编码或提示用户 |
| JSON002 | 必填字段缺失 | 使用默认值并记录警告 |
| JSON003 | 字段类型错误 | 记录错误,跳过该字段 |
| JSON004 | 枚举值无效 | 使用默认值,记录警告 |
| JSON005 | JSON格式错误 | 提示用户提供有效的JSON |
### B. 常用场景示例
#### 场景1: 正常服务器
```
json
{
"status": {"overall": "normal", "critical_issues": 0, "warnings": 0},
"metrics": {"cpu_percent": 10.5, "memory_percent": 45.0},
"issues": {"critical":
[]
, "warning":
[]
}
}
```
#### 场景2: 内存告警
```
json
{
"status": {"overall": "warning", "critical_issues": 0, "warnings": 1},
"metrics": {"memory_percent": 88.5},
"issues": {
"warning":
[
{"category": "内存", "message": "内存使用率偏高", "current": "88.5%"}
]
}
}
```
#### 场景3: 严重故障
```
json
{
"status": {"overall": "critical", "critical_issues": 2, "warnings": 5},
"issues": {
"critical":
[
{"message": "MySQL服务已停止", "impact": "critical"}
]
}
}
```
---
## 13. 联系方式
如有疑问或需要扩展格式,请联系:
-
**文档维护**
: AI巡检系统团队
-
**技术支持**
: 参考项目README.md
---
**文档版本**
: 1.0
**最后更新**
: 2026-05-15
**下次审查**
: 2026-06-15
Docs/PRD/AI服务器监测/新统一平台/展厅环境/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/展厅环境
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/展厅环境
...
...
Docs/PRD/AI服务器监测/新统一平台/负载一/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载一
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载一
...
...
Docs/PRD/AI服务器监测/新统一平台/负载三/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载三
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载三
...
...
Docs/PRD/AI服务器监测/新统一平台/负载二/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载二
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/新统一平台/负载二
...
...
Docs/PRD/AI服务器监测/预定项目/兰州中石化/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -27,7 +27,7 @@
...
@@ -27,7 +27,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/预定项目/兰州中石化
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/预定项目/兰州中石化
...
...
Docs/PRD/AI服务器监测/预定项目/大亚湾中广核项目/_PRD_AI服务器监测需求.md
浏览文件 @
6d5f8905
...
@@ -35,7 +35,7 @@
...
@@ -35,7 +35,7 @@
-
**Redis密码**
: dNrprU&2S
-
**Redis密码**
: dNrprU&2S
# 你的任务
# 你的任务
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
请按照下方【工作流程】执行完整的服务器健康巡检,生成结构化的Markdown健康报告,并与上次巡检结果进行对比分析。
还需要生成JSON格式报告文件,格式参考
[
Docs/PRD/AI服务器监测/JSON格式说明.md
]
。
# 报告存放
# 报告存放
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/预定项目/兰州中石化
请将报告存放至:Docs/PRD/AI服务器监测/分析报告/预定项目/兰州中石化
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论