每次访问网站时,我都会收到事件日志条目:
Event Type: Error Event Source: VsJITDebugger Event Category: None Event ID: 4096 User: NT AUTHORITY\NETWORK SERVICE Computer: COMPUTER-02 Description: An unhandled Microsoft .NET Framework exception occurred in w3wp.exe [2908]. Just-In-Time debugging this exception failed with the following error: Debugger could not be started because no user is logged on. Check the documentation index for 'Just-in-time debugging, errors' for more information. Data: 0000: 02 00 5c 80 ..\
系统日志
Event Type: Error Event Source: W3SVC Event Category: None Event ID: 1002 Date: 28/03/2011 Time: 17:49:28 User: N/A Computer: COMPUTER-02 Description: Application pool 'DefaultAppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool.
申请日志
Event Type: Warning Event Source: W3SVC Event Category: None Event ID: 1011 Date: 28/03/2011 Time: 17:49:28 User: N/A Computer: COMPUTER-02 Description: A process serving application pool 'DefaultAppPool' suffered a fatal communication error with the World Wide Web Publishing Service. The process id was '3724'. The data field contains the error number. Data: 0000: 6d 00 07 80 m..
我也没有运气地遵循Microsoft's Support site的建议。网络服务帐户访问注册表时没有任何问题。
我需要在IIS6(而不是IIS Express 7.5)中运行该站点,因为该站点运行ASP以及ASP.NET我需要通配符映射在ASP中进行身份验证。
我完全没有想法,因为ASP.NET 3.5(CLR v2 ...)中的网站很好,但是这次升级已经完全搞砸了。
非常感谢任何帮助。
答案 0 :(得分:2)
您将需要WinDbg(适用于Windows的调试工具)和DebugDiag。
.load sos
!clrstack
0:016> .load sos 0:016> !clrstack PDB symbol for clr.dll not loaded OS Thread Id: 0xa60 (16) Child SP IP Call Site 01d2eb5c 7c81a251 [HelperMethodFrame: 01d2eb5c] System.Diagnostics.Debugger.LaunchInternal() 01d2ebac 7a0e0166 System.Diagnostics.Debugger.Launch()*** WARNING: Unable to verify checksum for mscorlib.ni.dll *** ERROR: Module load completed but symbols could not be loaded for mscorlib.ni.dll 01d2ebd8 04470176 ebiz.Global.Application_Start(System.Object, System.EventArgs) 01d2f1f8 791421bb [DebuggerU2MCatchHandlerFrame: 01d2f1f8] 01d2f1c4 791421bb [CustomGCFrame: 01d2f1c4] 01d2f198 791421bb [GCFrame: 01d2f198] 01d2f17c 791421bb [GCFrame: 01d2f17c] 01d2f3a0 791421bb [HelperMethodFrame_PROTECTOBJ: 01d2f3a0] System.RuntimeMethodHandle._InvokeMethodFast(System.IRuntimeMethodInfo, System.Object, System.Object[], System.SignatureStruct ByRef, System.Reflection.MethodAttributes, System.RuntimeType) 01d2f41c 79b3d689 System.RuntimeMethodHandle.InvokeMethodFast(System.IRuntimeMethodInfo, System.Object, System.Object[], System.Signature, System.Reflection.MethodAttributes, System.RuntimeType) 01d2f470 79b3d37c System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo, Boolean) 01d2f4ac 79b3bfed System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo) 01d2f4d0 79b43284 System.Reflection.MethodBase.Invoke(System.Object, System.Object[]) 01d2f4dc 67894f4d System.Web.HttpApplication.InvokeMethodWithAssert(System.Reflection.MethodInfo, Int32, System.Object, System.EventArgs)*** WARNING: Unable to verify checksum for System.Web.ni.dll *** ERROR: Module load completed but symbols could not be loaded for System.Web.ni.dll 01d2f500 678951cb System.Web.HttpApplication.ProcessSpecialRequest(System.Web.HttpContext, System.Reflection.MethodInfo, Int32, System.Object, System.EventArgs, System.Web.SessionState.HttpSessionState) 01d2f550 67b34175 System.Web.HttpApplicationFactory.FireApplicationOnStart(System.Web.HttpContext) 01d2f564 672bfe1c System.Web.HttpApplicationFactory.EnsureAppStartCalled(System.Web.HttpContext) 01d2f59c 672bfd3d System.Web.HttpApplicationFactory.GetApplicationInstance(System.Web.HttpContext) 01d2f5ac 672fbf28 System.Web.HttpRuntime.ProcessRequestInternal(System.Web.HttpWorkerRequest) 01d2f5e0 672fbccd System.Web.HttpRuntime.ProcessRequestNoDemand(System.Web.HttpWorkerRequest) 01d2f5f0 672fb2cd System.Web.Hosting.ISAPIRuntime.ProcessRequest(IntPtr, Int32) 01d2f5f4 6791c30c [InlinedCallFrame: 01d2f5f4] 01d2f668 6791c30c DomainNeutralILStubClass.IL_STUB_COMtoCLR(Int32, Int32, IntPtr) 01d2f7fc 791425a1 [GCFrame: 01d2f7fc] 01d2f86c 791425a1 [ContextTransitionFrame: 01d2f86c] 01d2f8a0 791425a1 [GCFrame: 01d2f8a0] 01d2f9f8 791425a1 [ComMethodFrame: 01d2f9f8]
无论如何,对我来说,你可以看到Debugger.Launch()
正好在顶部,而且很低,看到我的代码已经进入了。似乎IIS根本不喜欢它,如果它是你的第一个代码行!
答案 1 :(得分:0)
如果您不熟悉WinDbg,您仍然可以从转储中提取大量信息。您已经拥有DebugDiag创建的转储。启动VS,文件 - >打开 - >文件(Ctrl + O),选择.dmp文件。 VS2010将显示几个选项以进行调试 - 混合模式或仅限本机。选择混合模式,打开线程窗口,识别引发异常的线程,查看调用堆栈。有时你会得到线程的局部变量,但不要指望太多,因为数据可能不正确。