首頁  >  文章  >  後端開發  >  如何轉儲容器入口點進程的 goroutine?

如何轉儲容器入口點進程的 goroutine?

王林
王林轉載
2024-02-08 23:33:29912瀏覽

如何转储容器入口点进程的 goroutine?

php小編草莓將為您介紹如何轉儲容器入口點進程的goroutine。在使用Go語言開發容器化應用程式時,我們經常需要了解和偵錯運行中的goroutine。轉儲容器入口點進程的goroutine是一種常見的偵錯方法,它可以幫助我們分析和解決應用程式中的問題。在本文中,我們將詳細討論如何使用相關工具和技術來轉儲容器入口點進程的goroutine,並提供具體的步驟和範例程式碼。讓我們一起來探索這個有趣又實用的主題吧!

問題內容

我有一個由 docker-compose up 執行的應用程式。當透過 docker-compose stop 停止應用程式時,容器之一不會終止。容器運行了一個用Go編寫的進程,所以我想轉儲該進程的goroutine,看看該進程卡在哪裡。

我可以docker ps 查看容器,然後docker exec -it c410494d5bb1f1d9dfe0d385746cdccc bash 進入容器,但一旦我kill -QUIT b3acca40ebec102611249923a933538a 將 goroutine 轉儲到 stderr。

以下是取得容器日誌的 docker 指令(-n 指定從日誌末端開始顯示的行數):

$ docker logs -n 1000 [container-name]

以上是如何轉儲容器入口點進程的 goroutine?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:stackoverflow.com。如有侵權,請聯絡admin@php.cn刪除