首批通过分布式安全可靠测评,为关键业务系统打造
堆栈信息收集
更新时间:2026-04-15 12:36:08
本文适用于独立部署 obdiag 的场景,使用 obdiag gather stack 命令可以一键收集所属 OceanBase 集群的堆栈信息,该采集项暂不支持 ARM 版本的 OceanBase 集群 stack 信息采集。
如果是 obd 部署的集群,可直接通过 obd 侧诊断命令组对所选集群进行信息收集,详细命令可参考 诊断工具命令组。
需要确保已经在 obdiag 配置文件 config.yml 中配置好需要收集节点的登录信息。相关的详细配置介绍,参见obdiag 配置
obdiag gather stack [options]
选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| --store_dir | 否 | string | 默认为命令执行的当前路径 | 存储结果的本地路径。 |
| -c | 否 | string | ~/.obdiag/config.yml |
配置文件路径 |
使用示例
obdiag gather stack
结果:
Summary:
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
| Node | Status | Size | Time | PackPath |
+===================+===========+=========+========+=================================================================================+
| xxx.xxx.xxx.xxx | Completed | 19.926K | 10 s | obdiag_gather_pack_20220729163951/obstack2_xxx.xxx.xxx.xxx_20220729163951.zip |
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
| xxx.xxx.xxx.xxx | Completed | 22.803K | 12 s | obdiag_gather_pack_20220729163951/obstack2_xxx.xxx.xxx.xxx_20220729163951.zip |
+-------------------+-----------+---------+--------+---------------------------------------------------------------------------------+
结果解读
命令执行后在指定目录下会生成一个文件夹,文件夹形如: obdiag_gather_pack_20240808105846
特点
- 阻塞窗口小, 线程平均阻塞时间<1ms
- 效率高,通常可以在几秒内输出带完整行号的结果
- 支持解析动态库函数名
- 支持堆栈聚合
- 支持指定二进制与debuginfo路径
- 支持抓独立线程