HertzBeat AI 智能助手用户指南
HertzBeat AI 智能助手是一个智能监控 AI 助手,通过自然语言对话帮助您管理监控器、配置告警并优化基础设施监控。
概述
HertzBeat AI 智能助手功能提供了一个交互式聊天界面,您可以:
监控器管理:
- 🔍 按状态、类型、主机和标签查询和过滤现有监控器
- ➕ 为网站、API、数据库和服务添加新的监控器
- 📊 获取可用监控器类型及其参数的详细信息
- ⚡ 检查监控器状态并排除监控问题
告警管理:
- 🚨 通过综合过滤(类型、状态、搜索)查询活跃告警
- 📈 获取告警摘要统计和分布
- 🔔 查看单个和分组告警
- 📋 分析告警模式和趋势
指标分析:
- 📊 检索任何监控器的实时指标数据
- 📈 访问可自定义时间范围的历史指标
- 💾 检查仓库存储系统状态
- 🔍 查询特定指标字段和标签
告警规则管理:
- ⚙️ 配置告警规则和阈值
- 📝 管理不同监控器类型的告警定义
- 🎯 设置自定义告警条件
先决条件
在使用 AI 智能助手之前,请确保:
- OpenAI 配置:必须配置有效的 OpenAI API 密钥。可选地,您可以在 application.yml中的spring.ai.openai.chat.options.model下更改模型(默认为gpt-4.1-nano)。
- 数据库连接:HertzBeat 数据库必须可访问以进行监控器操作
配置
OpenAI API 密钥设置
AI 智能助手使用 OpenAI 的 GPT 模型。您需要通过以下方式配置 OpenAI API 密钥:
通过 UI 进行数据库配置
- 导航到 AI 智能助手界面
- 如果未配置 API 密钥,您将看到配置对话框
- 输入您的 OpenAI API 密钥
- 点击 保存配置
配置优先级
- 数据库配置 优先于 YAML 配置
- 配置更改立即生效,无需重启
- 保存前会自动验证无效的 API 密钥
使用 AI 智能助手
访问聊天界面
- 在 HertzBeat Web 界面中导航到 AI 智能助手 部分
- 您将看到 HertzBeat 监控 AI 助手欢迎屏幕
- 在聊天输入框中开始输入您的问题
示例对话
添加新监控器
您:为我的网站 https://example.com 添加一个新的 HTTP 监控器
AI 助手:我将帮助您为 https://example.com 添加一个 HTTP 监控器。
让我使用以下配置创建该监控器:
- 名称:example.com 网站监控器
- 类型:HTTP
- 主机:example.com
- 端口:443 (HTTPS)
- 路径:/
- 间隔:60 秒
监控器创建成功,ID:12345
列出现有监控器
您:显示我所有当前的监控器
AI 助手:以下是您当前的监控器:
1. **Linux 服务器** (ID: 1001)
   - 状态:✅ 在线
   - 主机:192.168.1.100
   - 最后检查:2 分钟前
2. **MySQL 数据库** (ID: 1002) 
   - 状态:⚠️ 警告
   - 主机:db.example.com
   - 最后检查:30 秒前
3. **网站监控器** (ID: 1003)
   - 状态:✅ 在线
   - 主机:https://example.com
   - 最后检查:1 分钟前
您想了解任何特定监控器的详细信息吗?
获取监控器类型信息
您:监控 PostgreSQL 数据库需要哪些参数?
AI 助手:要监控 PostgreSQL 数据库,您需要这些参数:
**必需参数:**
- **主机**:数据库服务器 IP/主机名
- **端口**:PostgreSQL 端口(默认:5432)
- **数据库**:要连接的数据库名称
- **用户名**:数据库用户名
- **密码**:数据库密码
**可选参数:**
- **超时**:连接超时(默认:6000ms)
- **查询超时**:SQL 查询超时(默认:3000ms)
- **SSL**:启用 SSL 连接(默认:false)
您想让我帮助您添加一个 PostgreSQL 监控器吗?
告警管理
您:显示过去 24 小时内的所有严重告警
AI 助手:以下是过去 24 小时内的严重告警:
🚨 **活跃告警(3 个触发中)**
1. **高 CPU 使用率** - Linux 服务器 (ID: 1001)
   - 状态:🔥 触发中
   - 触发时间:2 小时前
   - 严重程度:严重
   - 消息:CPU 使用率 95% > 阈值 90%
2. **数据库连接失败** - MySQL 数据库 (ID: 1002)
   - 状态:🔥 触发中
   - 触发时间:45 分钟前
   - 严重程度:严重
   - 消息:10 秒后连接超时
3. **网站响应时间** - 网站监控器 (ID: 1003)
   - 状态:⚠️ 警告
   - 触发时间:15 分钟前
   - 严重程度:警告
   - 消息:响应时间 5.2s > 阈值 3s
**告警摘要:**
- 总告警数:12
- 触发中:3(2 个严重,1 个警告)
- 已解决:9
您想让我帮助调查任何特定的告警吗?
指标分析
您:显示我的 Linux 服务器过去 6 小时的 CPU 使用率
AI 助手:以下是您的 Linux 服务器(监控器 ID:1001)过去 6 小时的 CPU 使用率数据:
📊 **CPU 使用率指标 - 过去 6 小时**
时间          | 使用率 (%) | 负载平均 | 进程数
14:00-15:00   | 45.2%     | 1.2      | 156
15:00-16:00   | 67.8%     | 2.1      | 178
16:00-17:00   | 89.4%     | 3.8      | 195
17:00-18:00   | 92.1%     | 4.2      | 203
18:00-19:00   | 94.7%     | 4.8      | 210
19:00-20:00   | 88.3%     | 3.5      | 188
**分析:**
- 峰值使用率:19:00 时 94.7%
- 平均使用率:79.6%
- 趋势:高使用率持续 3+ 小时
- 当前状态:下降中(88.3%)
**实时指标:**
- 当前 CPU:76.2%
- 内存使用率:82.1%
- 磁盘 I/O:正常
您想让我检查历史数据进行比较或调查高使用率的原因吗?
告警规则配置
您:当我的网站响应时间超过 5 秒时设置告警规则
AI 助手:我将帮助您创建网站响应时间监控的告警规则。
**告警规则配置:**
- **监控器类型**:HTTP/网站
- **指标**:响应时间
- **条件**:大于 5 秒
- **严重程度**:警告
- **评估**:每 60 秒检查一次
- **通知**:邮件 + 仪表板
**建议规则:**
```yaml
name: "网站响应时间告警"
condition: "response_time > 5000ms"
severity: "warning"
description: "当网站响应时间超过 5 秒时告警"
evaluation_interval: 60s
for: 2m  # 条件持续 2 分钟后告警
此规则将:
- 每分钟监控响应时间
- 如果响应时间 > 5s 持续 2+ 分钟则触发告警
- 通过配置的渠道发送通知
- 在仪表板中显示警告状态
您想让我应用此配置还是修改任何设置?
### 聊天功能
#### 消息历史
- 所有对话都会自动保存
- 从侧边栏访问以前的对话
- 搜索对话历史
- 导出对话日志
#### 实时响应
- 流式响应提供即时反馈
- 输入指示器显示助手正在处理时
- 如需要可取消正在进行的请求
#### 对话管理
- 为不同主题创建新对话
- 重命名对话以便更好地组织
- 删除旧对话以保持整洁
注意:对话不会保存在数据库中
## 故障排除
### 常见问题
#### 聊天界面无法加载
**症状**:聊天界面无限显示加载旋转器
**解决方案**:
1. 检查浏览器控制台中的 JavaScript 错误
2. 确保与 HertzBeat 服务器的网络连接
#### "服务不可用"消息
**症状**:聊天显示"HertzBeat AI 监控服务不可用"
**解决方案**:
1. 验证 OpenAI API 密钥配置
2. 检查应用程序日志中的错误
3. 确保数据库连接
#### 无效 API 密钥错误
**症状**:配置对话框显示"无效 API 密钥"错误
**解决方案**:
1. 验证您的 OpenAI API 密钥以 `sk-` 开头
2. 检查 API 密钥是否有足够的积分/配额
3. 直接使用 OpenAI API 测试 API 密钥
4. 确保 API 密钥中没有多余的空格
#### 监控器创建失败
**症状**:AI 建议监控器配置但创建失败
**解决方案**:
1. 验证您有创建监控器的权限
2. 检查是否已存在同名监控器
3. 确保目标主机/服务可访问
4. 查看监控器参数验证错误
### 调试模式
通过设置日志级别为 DEBUG 来启用调试日志:
```yaml
logging:
  level:
    org.apache.hertzbeat.ai.agent: DEBUG
最佳实践
有效的聊天使用
- 具体明确:"为 api.example.com 端口 8080 添加 HTTP 监控器" vs "添加一个监控器"
- 提供上下文:说明您想要生产环境还是测试环境监控器
- 询问后续问题:如需要请求配置详细信息
- 使用自然语言:AI 理解对话式请求
监控器管理
- 命名约定:使用描述性的监控器名称
- 文档记录:要求 AI 记录复杂配置
安全考虑
- API 密钥安全:安全存储 OpenAI API 密钥
- 访问控制:限制 AI 聊天访问给授权用户
- 数据隐私:注意聊天日志中的敏感信息
- 网络安全:确保与 OpenAI API 的安全连接
高级功能
批量操作
您:为我的预发布环境中的所有服务添加 HTTP 监控器:
- api-staging.example.com:8080
- web-staging.example.com:80  
- admin-staging.example.com:3000
限制
- 需要活跃的互联网连接访问 OpenAI API
- OpenAI API 使用会根据令牌消耗产生费用
- 复杂的多步骤操作可能需要多次交互
- 某些高级配置可能需要手动设置
- 可能会根据 OpenAI 计划应用速率限制
支持
对于 AI 智能助手的问题:
- 首先查看此文档
- 查看应用程序日志中的错误
- 独立测试 OpenAI API 连接
- 联系 HertzBeat 支持并提供具体错误消息