Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk membuang goroutine proses titik masuk kontena?
editor php Strawberry akan memperkenalkan kepada anda cara membuang goroutine proses pintu masuk kontena. Apabila membangunkan aplikasi kontena menggunakan bahasa Go, kita selalunya perlu memahami dan menyahpepijat gorouti yang sedang berjalan. Lambakan goroutine proses titik masuk kontena ialah kaedah penyahpepijatan biasa, yang boleh membantu kami menganalisis dan menyelesaikan masalah dalam aplikasi. Dalam artikel ini, kami akan membincangkan secara terperinci cara menggunakan alatan dan teknik yang berkaitan untuk membuang goroutine proses titik masuk kontena, dan menyediakan langkah dan kod sampel khusus. Mari kita terokai topik yang menyeronokkan dan praktikal ini bersama-sama!
Saya ada masalah di mana salah satu bekas tidak ditamatkan apabila permohonan dihentikan docker-compose up
运行的应用程序。当通过 docker-compose stop
. Bekas menjalankan proses yang ditulis dalam Go, jadi saya ingin membuang goroutine proses itu untuk melihat di mana proses itu tersekat.
Saya boleh docker ps
查看容器,然后 docker exec -it c410494d5bb1f1d9dfe0d385746cdccc bash
进入容器,但是一旦我 kill -QUIT bb782c53ae52115ac2b562736c4917fd
, apabila proses tamat, bekas juga berhenti, jadi saya tidak dapat membuang goroutine.
Bagaimana untuk mendapatkan tempat pembuangan goroutine dalam kes ini?
Bekas juga dihentikan jadi saya tidak dapat membuang goroutine.
Saya rasa anda boleh mendapatkan tempat pembuangan goroutine daripada balak bekas, dengan syarat:
docker-compose stop
Berhenti menjalankan bekas tanpa memadamnya kill -quit bb782c53ae52115ac2b562736c4917fd
Buang goroutine ke stderr. Berikut ialah arahan docker untuk mendapatkan log kontena (-n
menentukan bilangan baris untuk dipaparkan dari hujung log):
$ docker logs -n 1000 [container-name]
Atas ialah kandungan terperinci Bagaimana untuk membuang goroutine proses titik masuk kontena?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!