Я использую средство диагностики отладки (DebugDiag v1.2) на нескольких производственных серверах Windows Server 2008 R2 Standard, на которых запущено собственное веб-приложение, встроенное в IIS 7.5, для создания файлов аварийного дампа.
Проблема в том, что предупреждающие события Windows Process Activation Service (WAS) продолжают происходить на всех моих рабочих серверах, и их частота увеличивается, но они по-прежнему являются случайными с точки зрения того, когда они происходят, все в течение каждого 24-часового периода.
Вот один пример события системного журнала, который меня беспокоит:
Уровень: предупреждение Источник: WAS Идентификатор события: 5011 Описание: Процесс, обслуживающий пул приложений MyAppPool, потерпел фатальную ошибку связи со службой активации процессов Windows. Идентификатор процесса был «7776». Поле данных содержит номер ошибки.
Анализирую дамп и каждый раз получаю что-то подобное (ниже). Проблема в том, как я могу перейти к подробному описанию проблемы после нажатия строк «0x3d9b9c16», которые повторяются сотни раз? Какие инструменты или подход я могу использовать для дальнейшей отладки?
Поток 252 - Системный идентификатор 6380 Точка входа 0x00000000 Время создания 25.03.2015 22:52:49 Время, проведенное в пользовательском режиме 0 Дней 00: 00: 01.856 Время, проведенное в режиме ядра 0 Дней 00: 00: 00.124
Этот поток заблокирован необработанным исключением
Стек вызовов .NET
Функция System.Web.Hosting.UnsafeIISMethods.MgdIndicateCompletion (IntPtr, System.Web.RequestNotificationStatus ByRef)
Полный стек вызовов
Источник функции ntdll! ZwTerminateProcess
KERNELBASE! TerminateProcess + 2c
clr! EEPolicy :: HandleFatalStackOverflow + 1ba
clr! EEPolicy :: HandleStackOverflow + 1ac
clr! COMPlusFrameHandler + 9b
ntdll! ExecuteHandler2 + 26
ntdll! ExecuteHandler + 24
ntdll! RtlDispatchException + 127
ntdll! KiUserExceptionDispatcher + f
clr! COMNlsHashProvider :: HashiStringKnownLower80 + 10
clr! COMNlsInfo :: InternalGetCaseInsHash + fa
mscorlib_ni + 2e7a9b
mscorlib_ni + 2e7a0a
mscorlib_ni + 38aba8
mscorlib_ni + 2e1a10
mscorlib_ni + 2e19cf
mscorlib_ni + 2e18ce
System_ni + 1a41b4
System_Web_ni + 1c6785
System_Web_ni + 1f3581
System_Web_ni + 1c67f8
0x1b2bcc27
0x3d9b9c0e
0x3d9b9c16
0x3d9b9c16
0x3d9b9c16
0x3d9b9c16
... (это повторяется для сотен строк!) ... 0x3d9b9c16
0x3d9b9c16
0x3d9b9c16
0x3d9b9c16
System_Web_ni + 217774
System_Web_ni + 1ea04d
System_Web_ni + 1ea087
System_Web_ni + 1ea0e2
System_Web_ni + 1ea0e2
System_Web_ni + 1ea0e2
System_Web_ni + 1fd845
System_Web_ni + 1fd3a5
System_Web_ni + 1fd2d9
System_Web_ni + 1fd216
System_Web_ni + 1fc16b
System_Web_ni + 2021f6
System_Web_ni + 1df356
System_Web_ni + 1f1277
System_Web_ni + 1df5f0
System_Web_ni + 1dc0cb
System_Web_ni + 1e1561
System_Web_ni + 1e126f
webengine4! W3_MGD_HANDLER :: ProcessNotification + 5a
webengine4! W3_MGD_HANDLER :: DoWork + 2cb
webengine4! RequestDoWork + 2 шт.
webengine4! CMgdEngHttpModule :: OnExecuteRequestHandler + 18
iiscore! NOTIFICATION_CONTEXT :: RequestDoWork + 128
iiscore! NOTIFICATION_CONTEXT :: CallModulesInternal + 305
iiscore! NOTIFICATION_CONTEXT :: CallModules + 28
iiscore! W3_CONTEXT :: DoStateRequestExecuteHandler + 36
iiscore! W3_CONTEXT :: DoWork + d7
iiscore! W3_MAIN_CONTEXT :: ContinueNotificationLoop + 1f
iiscore! W3_MAIN_CONTEXT :: ProcessIndicateCompletion + 1f
iiscore! W3_CONTEXT :: IndicateCompletion + 75
webengine4! W3_MGD_HANDLER :: IndicateCompletion + 38
webengine4! MgdIndicateCompletion + 22
System_Web_ni + 240211
System_Web_ni + 1e16e0
System_Web_ni + 1e126f
clr! UM2MThunk_WrapperHelper + 10
clr! UM2MThunk_Wrapper + 76
clr! Thread :: DoADCallBack + b4
clr! UM2MDoADCallBack + 92
0x0098b361
webengine4! W3_MGD_HANDLER :: ProcessNotification + 5a
webengine4! ProcessNotificationCallback + 32
clr! UnManagedPerAppDomainTPCount :: DispatchWorkItem + 1ce
clr! ThreadpoolMgr :: ExecuteWorkRequest + 42
clr! ThreadpoolMgr :: WorkerThreadStart + 36c
clr! Thread :: intermediateThreadProc + 4d
kernel32! BaseThreadInitThunk + е
ntdll! __ RtlUserThreadStart + 70
ntdll! _RtlUserThreadStart + 1b
Спасибо!