查看健康报告

最近更新时间:2025-08-07 15:28:32

我的收藏
本文为您介绍如何查看健康报告。健康报告包括介绍、基本信息、健康、实例状态、异常诊断、慢 SQL 分析、数据库账号建议、TOP 表空间以及性能曲线等章节。

前提条件

查看健康报告前,请先阅读 概述

操作步骤

1. 登录 DBbrain 控制台
2. 在左侧导航栏,选择诊断优化
3. 在页面上方选择数据库类型,并选择实例 ID 或分片 ID。
4. 选择健康报告页签,在健康得分折线图上单击查看健康得分及得分详情。
说明:
若已选时间段健康得分较低,需要查看实例的健康详情,请在页面上方单击创建健康报告创建单次健康报告,具体操作请参见 创建健康报告

健康得分折线图:展示已选时间段的健康得分,单击可查看具体时间点的健康得分及得分详情。
得分详情:展示可用性、可维护性、性能及可靠性四个维度的状态,并对异常内容进行描述。
5. 查看健康报告。健康报告列表参数说明如下表所示。
参数
说明及操作
类型
包括数据库巡检、手动触发和计划任务。创建不同类型健康报告的说明及操作指引请参见 概述
健康等级
根据健康得分划分4个等级:
健康:分数范围 ≥ 95
亚健康:80 ≤ 分数范围 < 95
危险:60 ≤ 分数范围 < 80
高危:分数范围 < 60
创建时间
创建健康报告的时间。
起止时间
该健康报告涉及的时间范围。
进度
该健康报告当前的进度,当进度显示已完成时,表示已生成健康报告。
操作
查看健康报告详情:单击查看,在弹出的页面查看健康报告,在弹出的页面右上方单击生成/下载 PDF 报告,在弹出的对话框中单击点击查看和下载,在新打开的浏览器查看和下载健康报告。
健康报告邮件推送:单击邮件或在健康报告列表选择健康报告并在右上方单击批量发送,具体操作请参见 历史健康报告邮件推送
查看扣分详情:单击更多 > 扣分详情,在弹出的对话框中查看单项扣分和合计扣分详情。
删除健康报告:单击更多 > 删除,在弹出的对话框中单击确定
健康报告类型为数据库巡检时,不支持删除操作。

健康报告解读

健康报告展示了 DBbrain 对用户所选数据库实例在指定时间范围内整体运行情况的评价,主要包括数据库存在问题汇总和分析,并给出相关建议。报告用于让用户全面了解所选数据库实例的整体运行情况,及协调相关人员对问题状态达成统一的认识。
健康报告包括的章节及说明如下表所示。
章节名称
说明
文档介绍
包括文档目的、异常等级定义、健康等级定义等。健康等级定义与健康报告列表中的健康等级字段定义一致。
基本信息
包括实例 ID / 名称、可用区、数据库版本、实例角色、配置、内网地址等字段信息。
不同的数据库类型展示的字段信息不同,请以实际为准。
健康
包括概述、健康等级及得分趋势、扣分详情。
扣分详情从可用性、可维护性、性能、可靠性四个扣分类型展示单项扣分和合计扣分。
实例状态
通过雷达图和表格展示总关键性能指标的状态、最大值、平均值和参考值。
异常诊断
根据扣分详情中涉及的扣分类型(可用性、可维护性、性能、可靠性),分别展示不同类型的 TOP10 异常事件。
异常事件包括发生时间、持续时长、风险等级、概要、智能分析、优化建议、现场描述等信息。
慢 SQL 分析(TOP 10)
展示 TOP 10的慢 SQL 语句和 SQL 优化建议。
数据库账号建议
数据库账号建议包括发生时间、风险等级、概要、智能分析、优化建议、现场描述等信息。
TOP 表空间
展示总使用空间 TOP 20的表信息。
数据库表分析
展示总使用空间 TOP 20的表和无主键表扫描。
性能曲线
展示关键性能指标的趋势图。
说明:
不同的数据库类型展示的章节及具体内容会有不同,请以实际为准。
MySQL 健康报告各章节示例:






















健康得分计算逻辑

健康得分通过分析数据库异常事件,综合评估四大分类(可用性、性能、可靠性、可维护性)的健康状态,最终以百分制呈现。
计算分为四个核心步骤:​单个异常扣分计算→单个分类总扣分计算(含上限控制)→分类扣分汇总→健康得分推导。

详细计算规则

一、单个异常扣分计算

​公式​:
单个异常扣分 = 基准扣分 × 严重程度系数 × [1 + 频率影响项 + 时间影响项]
​各分量说明​:
1. 基准扣分​:预定义的异常类型基础扣分值,根据数据库类型、异常名称及分类确定。
示例配置(以 MongoDB 节点内存超限诊断项异常为例):
dbType(数据库类型):MongoDB
issueName(诊断项名称):NodeOutOfMemory(节点内存超限)
type(诊断项分类):Availability(可用性)
score(基准扣分):10分
frequencyWeight(频率权重):0.2(控制出现次数对扣分的影响强度)
frequencyReference(基准出现次数):6次(频率影响的参考基准值)
timeWeight(时间权重):0.2(控制持续时间对扣分的影响强度)
2. ​严重程度系数​:根据异常事件的严重等级映射为固定系数,反映事件影响程度。
严重等级
系数
致命(Critical)
1.0
严重(Serious)
0.8
告警(Alarm)
0.6
提示(Note)
0.4
健康(Healthy)
0.0
3. ​频率影响项​:衡量同一异常的重复出现频率对扣分的额外影响。
计算逻辑:frequencyWeight × (出现次数 - 1) / 基准出现次数
参数说明
出现次数:该异常在评分周期内实际发生的次数(≥1,若小于1则按1处理)。
基准出现次数(frequencyReference):预设的正常出现阈值(如6次),用于标准化频率影响。
4. ​时间影响项​:衡量异常持续时长对扣分的额外影响。
计算逻辑:timeWeight × (持续时间 / 打分时间跨度)
参数说明
持续时间:该异常从发生到结束的实际时长(单位:秒;若未结束则取当前统计时刻的持续值)。
打分时间跨度:健康评分计算覆盖的总时间范围(如24小时=86400秒)。
时间权重(timeWeight):预设的时长影响强度(如0.2)。
​示例​:若某异常出现3次(基准出现次数为6)、持续7200秒(2小时)、打分时间跨度为86400秒(24小时),且权重为默认值。则频率影响项=0.2×(3-1)/6≈0.0667,时间影响项=0.2×7200/86400≈0.0167,总附加影响=1+0.0667+0.0167≈1.0834。

二、四大分类最大扣分值

根据异常分类设定扣分上限,避免单一分类因大量异常导致扣分过度放大,确保评分维度均衡。
分类名称
分类标识(type)
最大扣分值
可用性
Availability
40分
性能
Performance
30分
可靠性
Reliability
20分
可维护性
Maintainability
10分

三、单个分类的总扣分计算

规则​
汇总该分类下所有异常事件的扣分后,取实际总和与分类最大扣分的较小值(即封顶机制)。
​​公式
分类总扣分 = min(该分类下所有异常扣分之和, 该分类最大扣分值)
​说明​
若某分类(如可用性)下多个异常扣分总和为50分,但该分类最大扣分为40分,则实际计入总分的扣分为40分。
若总和未超上限(如总和为30分),则直接取30分。
其他分类(性能、可靠性、可维护性)同理独立计算。

四、健康得分计算

​公式​:
健康得分 = 100 - (可用性总扣分 + 性能总扣分 + 可靠性总扣分 + 可维护性总扣分)
​说明​:
四大分类的扣分均为经上限控制后的值。
理论得分范围为0~100分(若所有分类均扣满上限,则最低分为100-40-30-20-10=0分)。
实际应用中,健康数据库通常得分≥60分,低分提示需优先处理对应分类的异常。

健康得分计算示例

​场景:​​
打分时间跨度:24小时(86400秒)
异常事件:NodeOutOfMemory(Availability)
出现次数:3次
持续时间:7200秒
严重程度:Serious
​计算过程:​​
1. 单个异常扣分:10 × 0.8 × (1 + 0.2×(3-1)/6 + 0.2×7200/86400)= 8 × (1 + 0.0667 + 0.0167)= 8 × 1.0834= 8.667
2. 分类扣分:
Availability 总扣分 = min(8.667, 40) = 8.667
其他分类无异常 = 0
3. 健康度得分:100 - (8.667 + 0 + 0 + 0)= 91.333