[解決済み] ゴルーチンのスタックトレースをダンプするには?
2022-09-18 23:54:03
質問
私はJavaのバックグラウンドを持っており、Javaのスレッドダンプを検査するためにシグナルQUITを使用するのが好きです。
Golangに全てのゴルーチンのスタックトレースを出力させるにはどうしたらいいですか?
どのように解決するのですか?
のスタックトレースを表示するには
現在の
goroutine のスタックトレースを表示するには
PrintStack()
から
runtime/debug
.
PrintStackはStackが返したスタックトレースを標準エラーに表示します。
例えば
import(
"runtime/debug"
)
...
debug.PrintStack()
のスタックトレースを表示するには
すべて
のゴルーチンを使用します。
Lookup
と
WriteTo
から
runtime/pprof
.
func Lookup(name string) *Profile
// Lookup returns the profile with the given name,
// or nil if no such profile exists.
func (p *Profile) WriteTo(w io.Writer, debug int) error
// WriteTo writes a pprof-formatted snapshot of the profile to w.
// If a write to w returns an error, WriteTo returns that error.
// Otherwise, WriteTo returns nil.
各プロファイルは一意な名前を持ちます。いくつかのプロファイルはあらかじめ定義されています。
goroutine - 現在のすべてのgoroutineのスタックトレース。
heap - すべてのヒープ割り当てのサンプリング。
threadcreate - OSの新しいスレッドの作成につながったスタックトレース
block - 同期プリミティブでのブロックにつながったスタックトレース。
例えば
pprof.Lookup("goroutine").WriteTo(os.Stdout, 1)
関連
-
[解決済み] Goでマップにキーが含まれているかどうかを確認するには?
-
[解決済み] サーバーでSSLが有効になっていない
-
[解決済み] time.Sleepを使わずにすべてのゴルーチンが終了するのを待つには?
-
[解決済み] intをint64に変換するには?
-
[解決済み] response.Bodyを閉じないとどうなりますか?
-
[解決済み] オブジェクトのプロパティを二重引用符で囲んで使用するには?
-
[解決済み] GolangでMkdirを使ってネストされたディレクトリを作成するには?
-
[解決済み] GoのToString()関数
-
[解決済み] スライスを格納する interface{} 上の範囲
-
[解決済み] os.Exit()とpanic()はいつ使うのか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ゴルーチンの停止方法
-
[解決済み] Goを使って大きなファイルを効率よくダウンロードするにはどうしたらいいですか?
-
[解決済み] GolangでMkdirを使ってネストされたディレクトリを作成するには?
-
[解決済み] interface{}をint型に変換する
-
[解決済み] reflectを使用して、構造体フィールドの値を設定するにはどうすればよいですか?
-
[解決済み] GoのToString()関数
-
[解決済み] Goでスライスを逆に反復処理する方法はありますか?
-
[解決済み] スライスを格納する interface{} 上の範囲
-
[解決済み] os.Exit()とpanic()はいつ使うのか?
-
[解決済み] マップから構造体への変換