問題タブ [sosex]
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.
windbg - 暴走コマンドのエラー
CPU使用率が高い本番環境から収集されたダンプファイルを探しています。次のように!threadpoolと!runawayコマンドを実行しました
CPU 時間を最も消費しているスレッドを知りたいのですが、!runaway コマンドを実行できません。この場合に役立つ可能性のある sos、sosex、またはその他の拡張機能に他のコマンドはありますか?
windbg - sosex.bhi コマンドで作成されたヒープ インデックス ファイルを検査する API はありますか?
最終的には、ヒープ データを簡単に分析できるようにするために、ヒープ データを SQL Server データベースにダンプしたいと考えています。
現在、私のアプローチはsosex.dumpgen
、ファイルにリダイレクトしながらコマンドを実行し、小さな C# プログラムを使用してデータベースにダンプすることです。しかし、どのオブジェクトが何を参照したかを知りたい場合は役に立ちません。そのためのsosex.refs
コマンドがありますが、一括分析にはあまり適していません。
Steve Johnson のブログ ( http://www.stevestechspot.com/default.aspx ) は、そのような API があることを示唆していないようです。
何か案は?
debugging - !clrstack は何も報告しません
管理されたスレッドを扱っていることは知っていますが、うまく機能したことはありません!clrstack
。私はいつも得る:
確かに使用でき!dumpstack
ましたが、引数を表示する方法がわかりません。ChildEBP、Return Address、および関数名のみが表示されます。また、管理された呼び出しと管理されていない呼び出しが混在しているため、管理された部分のみに焦点を当てたいと思います。
アップデート
Thomas の要求に応じて、以下を!clrstack -i
返します。
その進行状況:-)
windbg - しきい値より大きいサイズのオブジェクトを検索
クラスの 1 つは、次の sos コマンドで検出されたように、.NET ヒープに多数のオブジェクトが存在します。
ObjSizeが 5 MB を超えるオブジェクトのインスタンスを見つける必要があります。以下を使用して、MyClass の 1700 個のインスタンスすべてのobjsizeを一覧表示できることはわかっています。
上記のスクリプトでは、5MB を超えるオブジェクト インスタンスがありますが、結果が得られません。objsize の出力が次のようになることが問題かもしれないと思います
しきい値との比較を困難にする文字列です。このスクリプトで objsize が 5MB を超えるオブジェクトのみを一覧表示するにはどうすればよいですか?
.net - Windbg を使用して System.Action が実行するコードを特定する
私の WPF アプリケーションで恐ろしい問題が発生し、ディスパッチャで 2,400 万のアクションが実行待ちになっているようです。
sosexのwindbgが私を示しています
アクションが実行する実際のコードを確認する方法はありますか? 上記のオブジェクト参照に基づいて何が起こっているのか大まかな考えはありますが、アクションが実行する実際のコードを見ると役に立ちます。
windbg - .NET sosex 拡張にレジスタを使用する
!mdt
(SOSEX拡張)を使用してオブジェクトの内容を表示する方法はありますが、レジスタを使用していますか?
!mdt 299281
あなたがそうするかどうか(もしあればそのアドレスにオブジェクトを表示する)は知っていますが、やりたい場合はどうしますか!mdt edx
(16進数の代わりに登録します)?
windbg - 文字列の !dumpheap -min が期待どおりに機能しない
!DumpHeap
size パラメータを指定すると、文字列型が正しく処理されないようです。
観察してください:
SOS!DumpHeap -min 100000
は結果を出さなかったが、結果は出!strings /n:100000
た。
!DumpHeap -min
文字列を正しく処理していないだけでしょうか? それとも私は何かが欠けていますか?