基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
如何抓取 pstack
更新时间:2026-06-08 02:41
pstack 可显示每个进程的栈跟踪。
在程序运行过程中,如果发生阻塞或者 work 状态,可以使用该命令显示进程的栈跟踪。
该命令必须由进程的属主或 root 运行。
使用该命令来确定进程挂起的位置。
该命令允许使用的唯一选项是要检查的进程的 PID,即运行格式为:pstack pid。
在什么场景下需要抓取 pstack
发现 observer 进程无响应,或者 high CPU 等等问题需要查看 observer 进程的 backtrace 时,需要抓取 pstack。
怎么抓取 pstack?
无论是否有安装 debuginfo,都可以抓取 pstack。通常在外部客户环境上没有 debuginfo,上传安装需要时间,可能问题会消失或者急于临时规避问题,将进程重启。因此可以在没有安装 debuginfo 的情况下直接抓。
说明
正常情况强烈建议安装 debuginfo。
sudo pstack `pgrep observer` > output_file
注意
执行此命令时,pstack 通过 ptrace attach 到 observer 进程上,然后进程会处于无反应状态。抓取过程可能耗费数秒到分钟(取决系统当前繁忙度),在抓取时如果进程没有完全 hang 住,那么将发生切主动作,该节点被其他节点认为心跳超时。
适用版本
OceanBase 数据库所有版本。