详细分析 ▾
运行时依赖
安装命令
点击复制技能文档
数据库监控 技能 智能数据源选择
系统会根据 --database 参数自动选择最优数据源:
数据库类型 识别规则 数据源优先级 Oracle Z 系列资产组(Z18, Z5等)或 KF 系列 Zabbix MySQL 其他名称 直连数据库 > Prometheus
示例:示例:
# Oracle 数据库(自动使用 Zabbix) dbskiter --输出-mode=AI --database=Z18 监控 健康 dbskiter --输出-mode=AI --database=Z5 监控 capacity --resource=disk
# MySQL 数据库(优先直连,其次 Prometheus) dbskiter --输出-mode=AI --database=jump 监控 健康 dbskiter --输出-mode=AI --database=prod 监控 anomalies
何时使用
当用户提到以下关键词时,使用此技能:
用户说法 执行命令 说明 "检查健康" dbskiter --输出-mode=AI --database= 监控 健康 整体健康评分 "有异常吗" dbskiter --输出-mode=AI --database= 监控 anomalies 检测异常指标 "容量够吗" dbskiter --输出-mode=AI --database= 监控 capacity 容量预测 "采集数据" dbskiter --输出-mode=AI --database= 监控 collect 采集当前指标 "看历史" dbskiter --输出-mode=AI --database= 监控 历史 <指标> 查看指标历史 "高级容量预测" dbskiter --输出-mode=AI --database= 监控 capacity-advanced 多算法容量预测 "趋势分析" dbskiter --输出-mode=AI --database= 监控 trend 指标趋势分析 "基线对比" dbskiter --输出-mode=AI --database= 监控 compare 与历史基线对比 核心命令(8个) 高级功能(新增)
- 高级容量预测
特点:
自动选择最佳预测算法(线性回归、移动平均、指数平滑、多项式拟合) 提供置信度评估 更精确的预测结果
输出:
{ "algorithm": "linear_regression", "confidence": 0.85, "predictions": { "7d": 68.5, "30d": 75.2, "90d": 88.5 }, "days_to_threshold": 45, "recommendation": "建议在45天内扩容" }
- 趋势分析
适用场景:
分析指标变化趋势 对比当前值与历史平均值 判断性能是改善还是恶化
输出:
{ "trend_direction": "degrading", "current_value": 75.5, "historical_avg": 65.2, "change_percent": 15.8, "recommendation": "CPU使用率呈恶化趋势,建议关注" }
- 基线对比
适用场景:
对比当前性能与历史基线 评估优化效果 检测性能退化
输出:
{ "current_value": 1250, "baseline_value": 1000, "change_percent": 25.0, "severity": "normal", "message": "QPS较基线上升25.0%,在正常范围内" }
- 性能退化检测
适用场景:
自动检测所有性能退化指标 与db-诊断性能快照集成
输出:
{ "degradation_count": 2, "degradations": [ { "metric_type": "cpu_usage", "change_percent": 30.5, "severity": "警告" } ] }
- 健康检查
输出:总体评分、各组件状态、关键指标
评分标准:
90-100:优秀 [OK] 70-89:良好 [WARN] <70:需要关注 [CRITICAL]
- 异常检测
默认行为:检测所有指标的异常
输出:异常列表、严重程度、建议
- 容量预测
可选资源:
disk:磁盘空间 memory:内存使用 connections:连接数
输出:当前使用率、预测值、剩余天数、风险等级
- 采集指标
默认行为:采集所有核心指标
可选参数:
--指标=qps,connections:只采集指定指标
- 查看历史
输出:历史指标数据、趋势图表
AI决策流程 场景1:用户说"检查数据库健康" 步骤1:执行 dbskiter --database= 监控 健康 步骤2:解读健康评分和状态 步骤3:如果有问题,执行 dbskiter --database= 监控 anomalies 步骤4:总结给用户
场景2:用户说"磁盘还够用吗" 步骤1:执行 dbskiter --database= 监控 capacity --resource=disk 步骤2:解读当前使用率和预测 步骤3:如果接近阈值,给出扩容建议
场景3:用户说"看看有没有异常" 步骤1:执行 dbskiter --database= 监控 anomalies 步骤2:列出发现的异常 步骤3:对严重异常,建议进一步诊断