修復消失的效能計數器(performance counter)

修復消失的效能計數器(performance counter)

某一批新 VM 主機在安裝了 Microsoft Monitoring Agent(MMA)之後,出現奇怪的現像,在 Log Analytics 裡,除了 Perf (效能計數器) 項目,其他查詢都很正常。本來方向一直在 MMA 打轉,查了許久,終於找出原因:

Get-Counter -ListSet * | Sort-Object -Property CounterSetName | Format-Table -AutoSize
Get-Counter -ListSet * | Where-Object -FilterScript {$_.CounterSetName -eq "Process" -or $_.CounterSetName -eq "Memory" -or $_.CounterSetName -eq "LogicalDisk"}
powershell get-counter result

透過 PowerShell Get-Counter 可以清楚看到,常用的 ProcessMemoryLogicalDisk 等效能計數器都找不到了(直接執行 Get-Counter 會得到一堆紅色錯誤訊息)。找了許久,終於在一篇 KB2554336 如何手動重建效能計數器的 Windows Server 2008 64 位元或 Windows Server 2008 R2 系統 找到一個可能指令:

死馬當活馬醫,嘗試執行重建計數器指令:

cd c:\windows\system32
lodctr /R
cd c:\windows\sysWOW64
lodctr /R

64 位元執行上面 system32 裡的指令,32 位元執行 sysWOW64 裡的指令。

重新同步計數器與 Windows 管理檢測 (WMI):

winmgmt /resyncperf

重新執行 Get-Counter 應該就能看到計數器資訊。

主機發生過執行指令後並無效果。需要重開機讓設定生效的。

此批主機前後共建立了 16 台,都是同一個 ISO 建立的 Windows Server Core 1909,裡面有 6 台出現效能計數器消失的問題。為何裡主機裡的效能計數器會消失不見,目前是沒找到原因。但還好最後有重建成功,不然還要重新安裝與設定就有點想哭了。

沒有留言:

張貼留言

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。