Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

Event ID 2216 Windows Server, AD и Роли

Event ID 2216 IIS WAS: непредвиденное завершение процесса w3wp

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы внезапного падения процесса (Event ID 2216)

В системном журнале System фиксируется ошибка от службы WAS: Event ID 2216: A worker process serving application pool '[Имя_пула]' terminated unexpectedly. The process id was '[PID]'. The process exit code was '[Код_завершения]'.

СимптомПроявление
Кратковременный сбой сайтаПользователи получают ошибку 502 Bad Gateway или сброс соединения в момент падения процесса
Потеря сессийПользовательские сессии, хранимые в оперативной памяти (In-Memory), уничтожаются
Перезапуск w3wp.exeВ диспетчере задач появляется новый процесс w3wp.exe с новым идентификатором PID

Диагностика и устранение падения w3wp.exe (Event ID 2216)

Код завершения процесса (Exit Code) указывает на причину сбоя (например, 0xc0000005 — Access Violation, 0xe0434352 — необработанное исключение CLR/.NET).

  1. Настройте автоматический сбор аварийного дампа памяти при падении:
# Создайте папку для дампов памяти:
New-Item -ItemType Directory -Path "C:\CrashDumps" -Force

# Настройка Windows Error Reporting (WER) на сбор полных дампов w3wp.exe:
$regPath = "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\w3wp.exe"
New-Item -Path $regPath -Force
Set-ItemProperty -Path $regPath -Name "DumpFolder" -Value "C:\CrashDumps"
Set-ItemProperty -Path $regPath -Name "DumpCount" -Value 5 -Type DWord
Set-ItemProperty -Path $regPath -Name "DumpType" -Value 2 -Type DWord # 2 = Полный дамп
  1. Проверьте журнал Application на наличие парных исключений .NET Runtime:
# Получение деталей необработанного исключения из журнала приложений:
Get-WinEvent -FilterHashtable @{LogName='Application'; ProviderName='.NET Runtime'} -MaxEvents 3 | Format-List Message
  1. Обновите или переустановите модули среды выполнения ASP.NET Core Hosting Bundle: если сайт работает на modern .NET, переустановите последний стабильный Hosting Bundle с официального сайта Microsoft.

Совет разработчику: Оберните критические участки вызова внешних DLL (P/Invoke) и фоновые потоки Task.Run в блоки try-catch, так как любое неперехваченное исключение в фоновом потоке мгновенно уничтожает весь процесс w3wp.exe.

💡 Практика специалистов: Если Event 2216 возникает с кодом 0xc00000fd (Stack Overflow), ищите в приложении бесконечную рекурсию или сериализацию циклических JSON-объектов — такой сбой роняет рабочий процесс мгновенно без вызова стандартных обработчиков .NET.

Частые вопросы (FAQ)

Что означает код выхода 0xc0000005 в тексте события?

Это ошибка нарушения прав доступа к памяти (Access Violation), когда неуправляемый C++ код пытается прочитать или записать данные в невыделенную область памяти.

Что означает код выхода 0xe0434352?

Это стандартный шестнадцатеричный код любого необработанного исключения среды выполнения .NET CLR (Common Language Runtime).

Как проанализировать созданный .dmp файл?

Откройте дамп в бесплатной утилите WinDbg (из Windows SDK) и выполните команду: !analyze -v.

Как предотвратить потерю корзин пользователей при падении w3wp?

Перенесите хранение сессий из оперативной памяти InProc во внешний распределенный сервис — Redis или SQL Server Session State.

Полезные материалы
Рекомендуем