---
title: 如何抓取 pstack-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于如何抓取 pstack相关的常见问题和使用技巧，帮助您快速解决如何抓取 pstack的难题。
image: https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*OSPzQ6GUQF4AAAAAQHAAAAgAeiGDAQ/original
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# 如何抓取 pstack

更新时间：2026-06-08 02:41

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.x 内容类型：How-to  

pstack 可显示每个进程的栈跟踪。

- 在程序运行过程中，如果发生阻塞或者 work 状态，可以使用该命令显示进程的栈跟踪。
 - 该命令必须由进程的属主或 root 运行。
 - 使用该命令来确定进程挂起的位置。
 - 该命令允许使用的唯一选项是要检查的进程的 PID，即运行格式为：pstack pid。

## 在什么场景下需要抓取 pstack

发现 observer 进程无响应，或者 high CPU 等等问题需要查看 observer 进程的 backtrace 时，需要抓取 pstack。 ​

## 怎么抓取 pstack？

无论是否有安装 debuginfo，都可以抓取 pstack。通常在外部客户环境上没有 debuginfo，上传安装需要时间，可能问题会消失或者急于临时规避问题，将进程重启。因此可以在没有安装 debuginfo 的情况下直接抓。

#### 说明

正常情况强烈建议安装 debuginfo。

 ​

```shell
sudo  pstack `pgrep observer` > output_file

```

#### 注意

执行此命令时，pstack 通过 ptrace attach 到 observer 进程上，然后进程会处于无反应状态。抓取过程可能耗费数秒到分钟（取决系统当前繁忙度），在抓取时如果进程没有完全 hang 住，那么将发生切主动作，该节点被其他节点认为心跳超时。

## 适用版本

OceanBase 数据库所有版本。

上一篇

[如何在线生成 OBServer 的堆栈信息](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000207636)

下一篇

[OceanBase 数据库日志解读示例](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000207691) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
