2011-11-03 25 views
1
  1. 我需要使用Windows服務器的WMI類來收集有關GarbageCollector中百分比時間的指標。我正在使用類:「Win32_PerfRawData_NETFramework_NETCLRMemory」。 這是正確的嗎?使用WMI獲取垃圾收集器指標

  2. 然後我拿兩個樣品爲類和我做了如下計算:

     
        # PSEUDO CODE 
        PercentTime in GC = 
        (
         (sample2->'PercentTimeinGC' - sample1->'PercentTimeinGC')/
         (sample2->'TimeStamp_Sys100NS' - sample1->'TimeStamp_Sys100NS') 
        ) 
    

這種計算是明確錯了,該怎麼辦呢正確的方式?

韓國社交協會提前。

基爾德

回答

1

在窗口的未知世界一些挖後,我已經找到了解決辦法:

我已經開始與這個鏈接,說明了每種度量的計算方法:

http://msdn.microsoft.com/en-us/library/ms974615.aspx

但是,我們需要知道計數類型,在這種情況下,「PercentTimeinGC」的計數類型。要知道,我需要運行WEBMTest.exe程序:

http://technet.microsoft.com/en-us/library/cc180684.aspx

  1. 連接到 「根\ CIMV2」
  2. 公開課...... 「Win32_PerfRawData_NETFramework_NETCLRMemory」
  3. 選擇屬性「PercentTimeinGC 「
  4. 點擊 」查看MOF「
  5. 查找行:

    「[DisplayName的(」 在GC%時間「):ToInstance,countertype(537003008):ToInstance,perfindex(2606):ToInstance,helpindex(2607):ToInstance,defaultscale(0):ToInstance,perfdetail( 100):ToInstance] uint32 PercentTimeinGC;「

現在我們知道countertype(),你需要把它映射到人類可讀的形式。此鏈接將幫助:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa389383(v=vs.85).aspx

的映射coutertype 537003008是PERF_RAW_FRACTION。

我們再回到第一個鏈接,並找到PERF_RAW_FRACTION的計算方法是:

(100 * CounterValue)/BaseValue 

我愛的窗戶。

gulden