問題タブ [bcc-bpf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
debugging - BPF (BCC) で go 関数をトレースする方法
go-code (myclient) があります。これはどういうわけか次のようになります (ここでは mypackage のみが関連しています)。
実行go build -o build/myclient cmd/myclient/main.go
してバイナリを取得します。
現在、このバイナリは他の go プログラムによって使用され、ロードされます。
どういうわけかこのように:
今、トレース/デバッグに BCC ツールを使用しようとしています。これは、本番環境で奇妙なエラーが発生するためであり、上記の関数の引数と戻り値を確認することが重要です。私はこれに触発されました: http://www.brendangregg.com/blog/2017-01-31/golang-bcc-bpf-function-tracing.html
使用するfunccount
と、ここにこれが表示されます(some-progへの呼び出しによって関数を呼び出した後)
しかし、trace
(またはgotrace
)を使用しようとすると、次のようになります。
BCC ツールまたは eBPF/(bpftrace?) (コードを追加せずに) を使用して、そのような go-function (特に構造体の引数と戻り値の検査) をトレースする可能性はありますか?