asp.net iis-7 windbg

asp.net - IIS se bloquea y se reinicia sin soltar un mini-volcado



iis-7 windbg (3)

Tengo un escenario difícil que intento depurar ... En una página de formularios web, cuando hago clic en enviar, el servidor web muestra algún error y reinicia el proceso w3svc.

No veo ningún rastro de pila arrojado al registro de eventos. La única entrada en el Registro de aplicaciones de Windows es:

Nombre de la aplicación que falla: w3wp.exe, versión: 7.5.7600.16385, marca de tiempo: 0x4a5bd0eb

Nombre del módulo de error: KERNELBASE.dll, versión: 6.1.7600.16385, marca de tiempo: 0x4a5bdfe0

Código de excepción: 0xe053534f

No hay un mini volcado creado para adjuntar windbg a ...

¿Alguna idea de cómo depurar mi problema?


Para crear un volcado de memoria para una aplicación bloqueada, puede usar DebugDiag o adplus. O supervisará el proceso y generará un archivo de volcado cuando ocurra el bloqueo. DebugDiag también puede analizar archivos de volcado y generar un informe de problemas (similar al comando "! Analyze -v" en WinDbg).

DebugDiag se puede descargar aquí .

Debería encontrar adplus instalado con las herramientas de depuración para Windows, que es el mismo instalador que contiene WinDbg.


Sospecho que haces una llamada de bucle como

public string sMyText { get {return sMyText;} set {sMyText = value;} }

y llamas el sMyText

o algo así como

protected override void OnLoad(EventArgs e) { base.OnInit(e); }

o algo así como

Server.Transfer("TheSamePage.aspx");

En estos casos, el bloqueo no se llama el minivolcado. ¿Puede ejecutar el explorador de procesos y ver si su grupo consume la CPU hasta que se cuelga?


Yo usaría algo como Procdump para obtener un volcado de memoria cuando el proceso termine y buscar excepciones y call-stack.

-t Escribe un volcado cuando el proceso termina.

FYI ... lo que ves en EventViewer son los Watson buckets que indican qué aplicación y qué módulo tuvieron una excepción no controlada. De su registro, parece que kernelBase fue el módulo de fallas.