WHEA Logger 47 w Windows Server 2019: jak wykryć błędy pamięci ECC i naprawić zawieszanie serwera
Krótki opis: praktyczny poradnik dotyczący błędu WHEA Logger ID 47 w Windows Server 2019, zawieszania serwera, problemów z RDP, błędów pamięci ECC oraz diagnozowania uszkodzonych modułów RAM za pomocą PowerShell i dzienników systemowych Windows.
Wielu administratorów spotyka się z sytuacją, gdy serwer działa „prawie normalnie”, ale kilka razy dziennie pojawiają się krótkie zawieszenia, zrywanie połączeń RDP, utrata sieci lub chwilowe lagi całego systemu. Co ważne — często nie ma BSOD ani krytycznych błędów dysku.
Bardzo często przyczyną okazuje się WHEA Logger Event ID 47, szczególnie na serwerach i stacjach roboczych opartych na Xeon, pamięci ECC Registered, platformach X99/C600, Dell Precision oraz kontrolerach RAID Intel RSTe.
W tym artykule pokażemy, jak wykrywać corrected ECC errors, analizować zdarzenia WHEA, znajdować podejrzane moduły pamięci i diagnozować zawieszanie Windows Server 2019.
Co oznacza WHEA Logger Event ID 47
WHEA oznacza Windows Hardware Error Architecture.
Zdarzenie:
WHEA Logger Event ID 47
oznacza:
Skorygowany błąd sprzętowy
Oznacza to, że kontroler pamięci ECC lub procesor wykrył błąd sprzętowy i automatycznie go poprawił przed awarią systemu.
Typowy komunikat:
Component: Memory
Error Source: Corrected Machine Check
Nawet jeśli serwer nadal działa, jest to już oznaka niestabilności sprzętu.
Typowe objawy błędów WHEA pamięci
Corrected ECC errors najczęściej objawiają się jako:
- krótkie zawieszanie serwera;
- chwilowe rozłączanie RDP;
- utrata połączenia sieciowego;
- lagi systemu;
- zawieszanie 1C lub SQL;
- przycinanie kursora myszy;
- chwilowe skoki latency RAID SSD;
- mikrofreezy bez BSOD.
Ponieważ pamięć ECC automatycznie poprawia błędy, administratorzy często szukają problemu w Windows lub sterownikach zamiast w sprzęcie.
Najszybszy sposób sprawdzenia błędów WHEA
Uruchom PowerShell jako administrator i wykonaj:
PowerShell:
Get-WinEvent -FilterHashtable @{LogName=’System’; ProviderName=’Microsoft-Windows-WHEA-Logger’; Id=47}
Jeśli pojawia się wiele zdarzeń, serwer rejestruje corrected hardware memory errors.
Jak znaleźć wszystkie błędy pamięci z ostatnich 30 dni
Poniższe polecenie zbiera wszystkie błędy WHEA związane z pamięcią:
PowerShell:
$Start=(Get-Date).AddDays(-30); Get-WinEvent -FilterHashtable @{LogName=’System’; ProviderName=’Microsoft-Windows-WHEA-Logger’; StartTime=$Start} | Where-Object {$_.Message -match „memory|pamięć|память”} | Select-Object TimeCreated, Id, LevelDisplayName, Message | Format-Table -Auto
Dzięki temu można:
- ustalić, kiedy problem się rozpoczął;
- sprawdzić, czy liczba błędów rośnie;
- porównać freezy z wydarzeniami WHEA;
- wykryć niestabilną pamięć ECC.
Jak policzyć corrected ECC errors
PowerShell:
Get-WinEvent -FilterHashtable @{LogName=’System’; ProviderName=’Microsoft-Windows-WHEA-Logger’; Id=47} | Measure-Object
Jeśli liczba stale rośnie — problem sprzętowy nadal występuje.
Jak wyświetlić zainstalowane moduły pamięci
Bardzo częstą przyczyną WHEA jest mixed ECC memory.
Przykładowo:
- 7 identycznych modułów;
- 1 moduł z inną rewizją;
- różne SPD;
- różne ranki pamięci;
- inne timingi.
Polecenie wyświetlające wszystkie moduły RAM:
PowerShell:
Get-WmiObject Win32_PhysicalMemory | Select BankLabel, DeviceLocator, Capacity, Speed, Manufacturer, PartNumber
To jeden z najlepszych sposobów wykrywania niepasujących modułów ECC.
Przykład rzeczywistego problemu
Na serwerze Dell Precision 5810 z Windows Server 2019 występowały:
- krótkie freezy RDP;
- utrata sieci;
- zawieszanie całego systemu;
- skoki latency RAID SSD;
- brak krytycznych błędów dysku.
Po analizie PowerShell wykryto:
- WHEA Logger ID 47;
- corrected ECC errors;
- jeden moduł RAM z innym numerem Part Number.
Konfiguracja pamięci:
- 7x Samsung M393A2K40BB1-CRC
- 1x Samsung M393A2K40CB1-CRC
Mieszana pamięć ECC bardzo często powoduje niestabilność na platformach Xeon i X99.
Dlaczego serwer zawiesza się bez BSOD
Pamięć ECC automatycznie poprawia błędy sprzętowe.
W momencie corrected ECC error:
- procesor ponawia operacje pamięci;
- memory controller wykonuje retraining;
- pojawiają się opóźnienia całego systemu;
- wzrasta latency.
Użytkownik widzi to jako:
- freeze;
- utratę sieci;
- rozłączenie RDP;
- lagi aplikacji;
- zawieszanie serwera.
Jak poprawnie testować moduły DIMM
Najpraktyczniejszą metodą jest testowanie pamięci parami.
- Zidentyfikuj moduł różniący się od pozostałych.
- Wyjmij podejrzany DIMM wraz z jego parą.
- Uruchom serwer.
- Monitoruj zdarzenia WHEA przez kilka dni.
Jeśli WHEA 47 przestanie się pojawiać — problem został prawdopodobnie znaleziony.
Dlaczego pamięć najlepiej wyjmować parami
Procesory Xeon używają wielokanałowych kontrolerów pamięci.
Dlatego podczas testów warto:
- zachować symetrię kanałów;
- nie zaburzać memory interleaving;
- unikać asymmetric memory topology;
- zmniejszyć obciążenie memory controller.
Przydatne komendy PowerShell do diagnozy freeze serwera
Sprawdzenie latency dysku:
Get-Counter '\PhysicalDisk(_Total)\Avg. Disk sec/Transfer’
Sprawdzenie kolejki dysku:
Get-Counter '\PhysicalDisk(_Total)\Current Disk Queue Length’
Wyszukiwanie błędów RAID:
Get-WinEvent -LogName System -MaxEvents 1000 | Where-Object { $_.ProviderName -match „storport|iaStor|RST|RAID” }
Wyszukiwanie błędów dysków:
Get-WinEvent -LogName System -MaxEvents 1000 | Where-Object { $_.ProviderName -match „disk|ntfs|volsnap|stornvme|storahci” }
Najczęstsze błędy administratorów
- Ignorowanie WHEA warnings, ponieważ nie ma BSOD.
- Mieszanie różnych modułów ECC.
- Brak aktualizacji BIOS.
- Używanie starych sterowników Intel RSTe.
- Szukania problemu wyłącznie w Windows.
- Ignorowanie corrected ECC errors przez wiele miesięcy.
Co jeszcze może powodować WHEA Logger 47
Nie zawsze problem dotyczy samego modułu RAM.
Przyczyną mogą być również:
- memory controller procesora;
- płyta główna;
- zły kontakt DIMM;
- przegrzewanie VRM;
- PCIe instability;
- kontroler RAID Intel;
- stary firmware.
Najczęściej zadawane pytania
Czy WHEA Logger 47 jest niebezpieczny?
Tak. To oznaka rzeczywistej niestabilności sprzętu.
Czy corrected ECC errors mogą powodować freezy?
Tak. To jeden z najczęstszych objawów.
Czy należy od razu wymieniać pamięć?
Lepiej najpierw przetestować moduły DIMM.
Czy procesor może powodować WHEA memory errors?
Tak. Kontroler pamięci Xeon również może być przyczyną.
Czy aktualizacja BIOS pomaga?
Bardzo często, szczególnie na Dell Precision i X99.
Czy RAID może powodować podobne objawy?
Tak. Problemy Intel RSTe czasami wyglądają podobnie.
Czy można ignorować corrected ECC errors?
Nie. Z czasem corrected errors mogą stać się uncorrectable.
Przeczytaj również
Zakładki
Jeśli artykuł był pomocny, dodaj nasz dział o pamięci RAM i błędach serwerowych do zakładek.
Naciśnij Ctrl + D

