在Windows Azure中實(shí)現(xiàn)和調(diào)試一個(gè)WCF服務(wù)(下)
原創(chuàng)本文接《在Windows Azure中實(shí)現(xiàn)和調(diào)試一個(gè)WCF服務(wù)(上)》和《在Windows Azure中實(shí)現(xiàn)和調(diào)試一個(gè)WCF服務(wù)(中)》
開啟診斷
對于我們來說,和診斷有關(guān)的大多數(shù)工作都已經(jīng)完成了。但是一定要記住,我們必須要把“sharedListener”添加到“AzureLocalStorage”中。要完成這個(gè)工作,只需在“WCF Web Role”的“Web.Config”文件中交換一下被注釋掉的“system.diagnostics”節(jié)點(diǎn)就可以了,就是這么簡單。
除此之外,你還必須把下面這行代碼添加到“WebRole.cs”文件中:
DiagnosticMonitor.Start(CloudStorageAccount.DevelopmentStorageAccount, diagnosticConfig);
在使用SDK 1.3把日志遷移到BlobStorage的過程中,我遇到了一個(gè)問題。這個(gè)問題和作為SVCLog被創(chuàng)建的文件上的可用的權(quán)限有關(guān)。針對這個(gè)問題,有兩種解決方案。首先,你可以模仿RobinDotNet(具體可以參考:http://robindotnet.wordpress.com/2011/02/16/azure-toolssdk-1-3-and-iis-logging/ ——我會在以后的文章中講述具體應(yīng)該怎么做的)的做法,或者,你也可以在“ServiceDefinition.csdef”中徹底地刪除<Sites>節(jié)點(diǎn),這意味著它將不再作為一個(gè)完整的IIS來運(yùn)行。我選擇了***種方法,在本文中我只是簡單地總結(jié)了一下,關(guān)于我是如何讓它正常工作的,以后我會單獨(dú)寫一篇文章來說明的?,F(xiàn)在,如果你無法解決這個(gè)SDK 1.3中的已知問題,你可以通過瀏覽它們的文件路徑(使用Development Emulator)直接訪問這些文件,或者你也可以使用遠(yuǎn)程桌面來訪問云中的日志。
如果你對立即可以使用的WCF的跟蹤日志比較好奇,你可以打開附屬的項(xiàng)目,看看它是如何為你工作的——你可以把注意力放在“FixDiagFolderAccess.ps1”這個(gè)powershell腳本上。它為這個(gè)文件夾創(chuàng)建了一些訪問控制表,更重要的是,它會為這個(gè)文件創(chuàng)建一個(gè)NULL或者完全為空的占位符(我們***會重寫這個(gè)文件)。
它可以給你提供SVCLog的定義,其中包括了綁定和異常的所有細(xì)節(jié)。在這里,你可以找到“DivideByZeroException”,然后開始診斷這個(gè)問題。
這個(gè)文件首先會出現(xiàn)在硬盤上:
片刻之后(注意,在這篇博文中,這個(gè)時(shí)間沒有什么暗示!),Windows Azure Diagnostics系統(tǒng)會把這個(gè)文件遷移到blob storage的WAD-TraceFiles容器中。
在此之后,這個(gè)日志可以被下載,用來檢查錯(cuò)誤。在這個(gè)例子中,我們可以向下滾動,直到找到和被0除有關(guān)的細(xì)節(jié),然后我們會發(fā)現(xiàn)有一個(gè)紅色高亮的行顯示發(fā)生了一個(gè)異常。要想查看更多的細(xì)節(jié),我們可以從服務(wù)端獲取這個(gè)錯(cuò)誤真正的堆棧跟蹤信息。
這篇博文的源代碼可以從如下地址下載:
http://assets.bareweb.eu/wp-content/uploads/2011/03/WCFBasic.zip
本文接《在Windows Azure中實(shí)現(xiàn)和調(diào)試一個(gè)WCF服務(wù)(上)》和《在Windows Azure中實(shí)現(xiàn)和調(diào)試一個(gè)WCF服務(wù)(中)》
原文名:Implementing and Debugging a WCF Service in Windows Azure 作者:Andy
【本文乃51CTO精選譯文,轉(zhuǎn)載請標(biāo)明出處!】
【編輯推薦】
- 微軟公布云計(jì)算平臺Azure收費(fèi)模式細(xì)節(jié)
- 云計(jì)算意在長遠(yuǎn),微軟云計(jì)算服務(wù)Windows Azure已經(jīng)啟用
- 技術(shù)透析:Windows Azure Platform框架與組成
- 微軟Windows Azure Platform技術(shù)解析
- 走近微軟云:SQL Server到Azure數(shù)據(jù)同步
- 當(dāng)微軟Azure遭遇亞馬遜EC2:五大關(guān)鍵區(qū)別
- Windows Azure云計(jì)算平臺新增五大功能
- 云計(jì)算前途光明 Azure用戶數(shù)突破31000
- 如何把應(yīng)用程序部署到Windows Azure中