为什么 IntelliTrace 不显示代码?
我正在使用 IntelliTrace 调试 Azure 服务器中的应用程序。有时我可以看到引发异常的代码,但有时却看不到。我看不到的相应代码的异常总是相同的。
当我双击异常开始调试时,是否有任何原因导致我在新选项卡中不断收到相同的消息(无可用源)?
我已经知道我需要做什么来解决它,但我还需要知道在哪里可以找到代码!帮助。
示例
@SLaks
我得到的异常的一个例子是这样的:
"The condition specified using HTTP conditional header(s) is not met."
调用堆栈:
[External Code]
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
[External Code]
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.HttpWebRequest.ProcessResponse()
System.dll!System.Net.HttpWebRequest.SetResponse(System.Net.CoreResponseData coreResponseData = {unknown})
System.dll!System.Net.ConnectionReturnResult.SetResponses(System.Net.ConnectionReturnResult returnResult = {unknown})
System.dll!System.Net.Connection.ReadComplete(int bytesRead = {unknown}, System.Net.WebExceptionStatus errorStatus = {unknown})
System.dll!System.Net.Connection.ReadCallback(System.IAsyncResult asyncResult = {unknown})
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.Security._SslStream.ProcessFrameBody(int readBytes = {unknown}, byte[] buffer = {unknown}, int offset = {unknown}, int count = {unknown}, System.Net.AsyncProtocolRequest asyncRequest = {unknown})
System.dll!System.Net.Security._SslStream.ReadFrameCallback(System.Net.AsyncProtocolRequest asyncRequest = {unknown})
System.dll!System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(int bytes = {unknown})
System.dll!System.Net.FixedSizeReader.ReadCallback(System.IAsyncResult transportResult = {unknown})
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
[External Code]
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(uint errorCode = {unknown}, uint numBytes = {unknown}, System.Threading.NativeOverlapped* nativeOverlapped = {unknown})
[External Code]
编辑:
异常实际上是由我引起的。下面是一个示例:
AzureBrightWebRole.dll!AzureBright.Common.EasyPay.EasyPay.CheckFinishedPayments()
AzureBrightWorkerRole.dll!AzureBrightWorkerRole.WorkerRole.Run()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRoleInternal()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRole()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.AnonymousMethod()
[External Code]
我正在访问的 Web 服务似乎已停止工作。最后我发现,这一切都与它无关!我在本地重现了该错误,并且它就发生在我的代码中。为什么我看不到发生错误的代码以及发生错误的条件?虽然我不能确定,但我不记得代码已经改过,而且是今天完成的。
I am debugging an application in an Azure sever using IntelliTrace. Sometimes I can see the code that originated an exception but sometimes I can't. And the exceptions which respective code I can't see are always the same.
Is there any reason why I keep getting the same message (No source available) in the new tab when I double click the exception to start debugging it?
I already know what exception is what I need to do to solve it, but I also need to know where to find the code! Help.
Example
@SLaks
An example of the exceptions I get is this:
"The condition specified using HTTP conditional header(s) is not met."
Call stack:
[External Code]
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
[External Code]
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.HttpWebRequest.ProcessResponse()
System.dll!System.Net.HttpWebRequest.SetResponse(System.Net.CoreResponseData coreResponseData = {unknown})
System.dll!System.Net.ConnectionReturnResult.SetResponses(System.Net.ConnectionReturnResult returnResult = {unknown})
System.dll!System.Net.Connection.ReadComplete(int bytesRead = {unknown}, System.Net.WebExceptionStatus errorStatus = {unknown})
System.dll!System.Net.Connection.ReadCallback(System.IAsyncResult asyncResult = {unknown})
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.Security._SslStream.ProcessFrameBody(int readBytes = {unknown}, byte[] buffer = {unknown}, int offset = {unknown}, int count = {unknown}, System.Net.AsyncProtocolRequest asyncRequest = {unknown})
System.dll!System.Net.Security._SslStream.ReadFrameCallback(System.Net.AsyncProtocolRequest asyncRequest = {unknown})
System.dll!System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(int bytes = {unknown})
System.dll!System.Net.FixedSizeReader.ReadCallback(System.IAsyncResult transportResult = {unknown})
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown})
[External Code]
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})
System.dll!System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(uint errorCode = {unknown}, uint numBytes = {unknown}, System.Threading.NativeOverlapped* nativeOverlapped = {unknown})
[External Code]
EDIT:
The exceptions are actually caused by me. Here is an example:
AzureBrightWebRole.dll!AzureBright.Common.EasyPay.EasyPay.CheckFinishedPayments()
AzureBrightWorkerRole.dll!AzureBrightWorkerRole.WorkerRole.Run()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRoleInternal()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRole()
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.AnonymousMethod()
[External Code]
A web service I was accessing to seemed to have stopped working. In the end, I found out, it had nothing to do with it! I reproduced the error locally and it was happening right in my code. Why can't I see the code where the error happened and in which conditions? Although I can't be sure, I don't remember that the code has been changed and it was done today.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
仅当有一些代码要显示时,IntelliTrace 才会显示源代码。
您发布的堆栈跟踪中的所有代码都位于 .Net 框架内,因此没有源代码可以向您展示。
您可以从 .Net Framework 参考源 获取源代码。
此异常以及许多类似的异常是 ASP.Net 的内部异常,应忽略。
IntelliTrace will only show source code when there is some code to show.
All of the code in the stack trace you posted is inside the .Net framework, so there is no source code to show you.
You can probably get source code here from the .Net Framework Reference Source.
This exception, and many similar ones, are internal to ASP.Net and should be ignored.