Windbg程序調試系列1-Mex擴展使用總結

最近一直在頻繁使用Windbg作線上Dump調試,與微軟作Case交流的時候,發現微軟CSS團隊,用了一個很是效率的Windbg 插件,Mex:ui

使用介紹:spa

https://blogs.msdn.microsoft.com/luisdem/2016/07/19/mex-debugging-extension-for-windbg-2/插件

下載地址:線程

https://www.microsoft.com/en-us/download/details.aspx?id=53304debug

下載以後,解壓縮,有兩個目錄,X64和X86,你們根據本身的須要進行加載,目前咱們主要用X64。固然也能夠直接把這個擴展拷貝到Windbg運行目錄中。3d

這裏,咱們先show一下Windbg加載mex擴展:調試

0:000> .load D:\Mex\x64\mex.dll
Mex External 3.0.0.7172 Loaded!

固然,咱們能夠同時繼續加載soscode

0:000> .loadby sos clr

查看已經加載的擴展:對象

若是本機調試Dump,建議設置調試符號的路徑:blog

srv*c:\symcache*http://msdl.microsoft.com/download/symbols;c:\symcache

查看Mex的各類命令:

0:000> !mex.help
Mex currently has 255 extensions available.  Please specify a keyword to search.
Or browse by category:

你們能夠逐一點進去看一下。

這裏我給你們show幾個經常使用的命令:

1. !dae  查看全部的Exception

2. 查看全部的線程狀態

!mex.mthreads

3. !clrstack2 查詢線程堆棧

4. do2 查看對象

5. 查看全部的Asp.Net請求

!mex.aspxpagesext

6. 查看當前線程的異常

!mex.pe2

 7. Foreach

 !foreachobject  -x "!do2 @#Obj"  System.Net.Socket

  

等等,分享給你們。

 

周國慶

2018/7/26

相關文章
相關標籤/搜索