linux抓取運行時進程棧信息

Linux上開發時,一般進程運行結果和預期不符會通過打log記錄日誌分析運行過程,但有時log日誌不全,再者一些大型系統長期運行不會過多的記錄日誌,一般可以設置core文件配置,以便進程在異常掛掉後自動記錄棧信息,但大部分情況下進程是在運行過程中出現問題,這時就需要抓取運行時棧信息,結合日誌進行分析了。

1. 主動kill進程生成core文件分析(前提是已經配置好生成core的配置:ulimit)

查詢到運行進程pid,然後使用kill -11 <pid>向進程發送退出信號(段異常),生成core文件後使用gdb調取棧信息分析。

下面是linux信號值,一般發送默認動作爲core的信號都可以生成core文件,其他則不生成。

 

2. 直接通過gstack命令抓取,不需要停掉目標進程。

參數:gstack <pid>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章