Вопрос по c#, multithreading, debugging, asp.net, iis – http://blogs.msdn.com/b/tess/archive/2009/03/20/debugging-a-net-crash-with-rules-in-debug-diag.aspx

7

аю что-то плохое в моем приложении ASP.NET. Это может быть любое количество библиотек CTP, которые я использую, или я просто неправильно что-то утилизирую. Но при повторном развертывании моего ASP.NET в моей установке Vista IIS7 или установке IIS6 на моем сервере происходит сбой рабочего процесса IIS.

Я сузил проблему до своего сканера HTTP, который является многопоточным зверьком, который сканирует сайты на предмет полезной информации, когда их об этом просят. После того, как я запустил сканер и повторно развернул приложение поверх, а не изящно выгрузил домен приложения и перезагрузил его, рабочий процесс IIS завершится сбоем (появится сообщение о сбое) и продолжит перезагрузку домена приложения.

Когда происходит этот сбой, где я могу найти дамп сбоя для анализа?

Этидемос должен быть в состоянии помочь вам. Gulzar Nazim

Ваш Ответ

3   ответа
15

http://www.microsoft.com/whdc/DevTools/Debugging/default.mspx

Инструменты отладки для Windows имеют сценарий (ADPLUS), который позволяет создавать дампы при сбое процесса:http://support.microsoft.com/kb/286350

Команда должна выглядеть примерно так (если вы используете IIS6):

cscript adplus.vbs -crash -pn w3wp.exe

Эта команда присоединит отладчик к рабочему процессу. Когда происходит сбой, он генерирует дамп (файл * .DMP).

Вы можете открыть его в WinDBG (также входит в Инструменты отладки для Windows). Файл> Открыть Crash dump ...

По умолчанию WinDBG покажет вам (рядом с командной строкой) поток, в котором произошел сбой процесса.

Первое, что вам нужно сделать в WinDBG, это загрузить расширения .NET Framework:

.loadby sos mscorwks

Затем вы отобразите управляемый стек вызовов:

!clrstack

если поток не выполнял управляемый код, то вам нужно проверить собственный стек:

kpn 200

Это должно дать вам несколько идей. Чтобы продолжить устранение неполадок, я рекомендую вам прочитать следующую статью:

http://msdn.microsoft.com/en-us/library/ee817663.aspx

ADPlus.exe присоединяется к процессу w3p.exe? Я предполагаю, что так .. но что произойдет, если этот процессRecycles ? Pure.Krome
FYI adplus.vbs был заменен на adplus.exe в самой последней версии средств отладки для Windows. Brian Rasmussen
Могу ли я использовать adplus.vbs для IIS 7 - 7.5? Kiquenet
0

Отличное объяснение можно найти здесь:

http://blogs.msdn.com/b/tess/archive/2009/03/20/debugging-a-net-crash-with-rules-in-debug-diag.aspx

2

IISState - это зависит отИнструменты отладки Windows и должен работать, когда происходит сбой, но с учетом описанных вами обстоятельств, это не должно быть проблемой,

Похожие вопросы