Event ID 5005 IIS WAS: рабочий процесс завершился непредвиденно
Симптомы падения процесса (Event ID 5005)
В системном журнале регистрируется ошибка от источника Microsoft-Windows-WAS: Event ID 5005: A worker process serving application pool '[Имя_пула]' terminated unexpectedly. The process id was '[PID]'.
| Симптом | Описание |
|---|---|
| Внезапный обрыв веб-сессий | Пользователи получают ошибку 502 или сброс активных соединений |
| Появление новых PID в Task Manager | Процесс w3wp.exe непрерывно перезапускается с новыми номерами PID |
| Ошибки в Application Event Log | Появление событий от .NET Runtime или Application Error |
Пошаговое устранение сбоя по Event ID 5005
- Проверьте журнал Application на наличие сбоев среды выполнения:
# Вывод 5 последних критических ошибок .NET Runtime:
Get-WinEvent -FilterHashtable @{
LogName = 'Application'
ProviderName = '.NET Runtime'
} -MaxEvents 5 | Format-List TimeCreated, Message- Настройте утилиту ProcDump для перехвата аварийного завершения процесса:
# Перехват первого же падения процесса с сохранением полного дампа памяти:
# Скачайте procdump.exe от Sysinternals и выполните:
procdump.exe -ma -e 1 -w w3wp.exe C:\CrashDumps\- Проверьте параметры лимитов памяти пула: если процесс убивается из-за исчерпания памяти:
# Установка неограниченного размера Private Memory Limit (0 = без ограничений):
& "$env:SystemRoot\System32\inetsrv\appcmd.exe" set apppool /apppool.name:"ИмяПула" /recycling.periodicRestart.privateMemory:0Совет: Если в журнале регистрируется ошибка OutOfMemoryException, проверьте разрядность пула. 32-битный пул ограничен 2–3 ГБ виртуальной памяти; переведите пул в 64-битный режим (Enable 32-Bit Applications = False).
Частые вопросы (FAQ)
Почему процесс w3wp.exe падает без вывода ошибки пользователю?
При возникновении фатальных сбоев ядра (например, повреждение кучи Heap Corruption или переполнение стека) процесс завершается операционной системой немедленно.
Как ограничить потребление оперативной памяти пулом без его падения?
Настройте параметр 'Регулярный перезапуск по достижению лимита памяти' (Private Memory Limit) для мягкой рециркуляции процесса.
В чем разница между Event ID 5005 и 2216?
Они представляют собой аналогичные ошибки падения процесса w3wp, регистрируемые разными внутренними подсистемами мониторинга службы WAS.
Где найти файл дампа памяти после сбоя?
По умолчанию в папке %LOCALAPPDATA%\CrashDumps или в директории, заданной через ключ реестра Windows Error Reporting.