TiDB Dashboard 实例性能分析 - 手动分析页面

    该功能面向数据库技术专家,建议非专家用户在 PingCAP 专业技术人员的指导下使用该功能。

    该页面允许用户按需地一键收集 TiDB、TiKV、PD、TiFlash 各个实例的当前性能数据。收集到的性能数据可显示为火焰图或有向无环图形式。

    通过这些性能数据,技术专家可以分析实例当前的 CPU、内存等资源消耗细节,帮助解决诸如当前 CPU 开销较高、内存占用较大、进程不明原因卡死等复杂问题。

    启动分析后,TiDB Dashboard 将会收集当前一小段时间(默认 30 秒)的性能数据,因而只能用于分析集群当前正在面临的问题,对于当前已经不再复现的问题没有显著效果。若你想要收集或分析过去任意时刻性能数据,不希望每次都人工介入按需分析,请使用持续性能分析功能。

    目前支持收集并分析以下性能数据:

    • CPU:TiDB、TiKV、PD、TiFlash 实例上各个内部函数的 CPU 开销情况

    • Goroutine:TiDB、PD 实例上各个 Goroutine 的运行状态及调用栈情况

    访问页面

    可以通过以下两种方法访问实例性能分析页面:

    • 登录后,左侧导航条点击高级调试 (Advanced Debugging) > 实例性能分析 (Profile Instances) > 手动分析 (Manual Profiling):

    在实例性能分析页面,选择至少一个目标实例和分析类型,确定性能分析时长(默认为 30 秒)。点击开始分析 (Start Profiling) :

    开始分析

    在已经启用了持续性能分析的集群上,手动性能分析不再可用。若要在启用了持续性能分析功能的集群上获取当前时刻的集群性能数据,请查看上最近一次的分析结果。

    查看性能分析状态

    性能分析会在后台运行,刷新或退出当前页面不会终止已经运行的性能分析任务。

    所有实例的性能分析都完成后,可点击右上角下载按钮 (Download Profiling Result) 打包下载所有性能数据:

    下载分析结果

    也可以点击列表中的单个实例查看其性能数据,或者悬浮到 按钮上下载原始数据:

    查看历史性能数据

    在性能分析页面下方,列出了你手动发起的性能分析历史。点击任意一行,即可查看其状态详情:

    历史列表