新聞中心
【推薦】捕獲WCF服務端與客戶端產生的通訊數據并分析
公司主營業(yè)務:網站制作、網站設計、移動網站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現互聯網宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯公司推出瀘縣免費做網站回饋大家。
現在很多都在采用WCF做為服務端,在我們的.NET快速開發(fā)整合框架(RDIFramework.NET)中也不例外,在采用這種方式時,我們經常需要知道我們的客戶端,在訪問WCF服務端時,WCF服務端究竟做了那些工作,也就是運行WCF服務端與客戶端后,我們想查看WCF服務端與客戶端產生通訊數據。如何才能查看產生的通訊數據呢?這就是微軟提供的Windows Communication Foundation (WCF) 服務跟蹤查看器,它可幫助分析 WCF 偵聽器所生成的活動跟蹤 (*.svclog) 診斷跟蹤為合并、查看和篩選跟蹤消息提供了一種簡單方法,可以診斷、修復和驗證 WCF 服務問題。
在把WCF服務部署到Windows服務時,對于這個服務端其運行的全過程在開發(fā)環(huán)境下,我們需要予以把握。如何對WCF應用程序的消息進行跟蹤呢,本文將.NET快速開發(fā)整合框架(RDIFramework.NET)中實際的環(huán)境進行模擬整個過程。
一、配置WCF應用程序支持消息的跟蹤
要想跟蹤WCF應用程序運行過程中的相關信息,我們需要對WCF應用程序進行部署,在.NET快速開發(fā)整合框架(RDIFramework.NET),WCF服務默認部署在Windows服務下,服務啟動后,如下圖所示: 要想捕獲軟件在運行過程中調用WCF服務所產生的一系列消息,我們首先需要對服務端的App.Config配置文件作相應的更改,如下圖所示:
同時,我們還要配置捕獲的信息所存放的地方:
通過以上的配置,我們再開啟我們的WCF服務,開啟后運行軟件做一些操作,可以看到在我們:c:\temp\RDIFramework.svclog 下已經記錄了相應操作所產生的WCF消息。
二、查看WCF產生的消息
對于WCF的消息跟蹤主要有Microsoft Service Trace Viewer(服務跟蹤查看器)和tcpTrace這兩個。服務跟蹤查看器工具功能比較強大可以了解 WCF 偵聽器生成的診斷跟蹤信息,從而找到錯誤的根本原因。該工具提供了一種輕松查看、分組和篩選跟蹤的方法,以便可以診斷、修復和驗證 WCF 服務的問題,但是使用之前需要在服務端作相應的配置(如上,我們的簡單配置過程)。tcpTrace其實就是一個通過端口映射來捕獲Tcp包的工具使用起來非常簡單,由于WCF的很多綁定都會走tcp協議因此使用該工具來捕獲數據包會非常方便。下面我們就使用Microsoft Service Trace Viewer(服務跟蹤查看器)來查看我們跟蹤WCF運行過程所產生的消息。
要打開服務跟蹤查看器,可以通過使用命令窗口定位到 WCF 安裝位置 (C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin),然后鍵入 SvcTraceViewer.exe,可以啟動服務跟蹤查看器。或者按下圖操作也可打開服務跟蹤查看器:
打開服務跟蹤查看器后,我們通過“服務跟蹤查看器”打開我們跟蹤的消息記錄,通過WCF服務端的配置,跟蹤的消息記錄存放在C:\temp\RDIFramework.svclog,打開后如下圖所示:
通過這個窗口,我們可以非常清楚全面的查看整個操作與運行過程,以讓我們可以診斷、修復和驗證 WCF 服務問題。通過“服務跟蹤查看器”,我們可以方便的查看跟蹤數據,篩選跟蹤數據,查找跟蹤的數據,定位跟蹤數據等,讓我們的服務端應用程序在發(fā)布前做這樣的評估,可以更加的健壯,當然了,跟蹤也是大耗性能的,因此,在正式發(fā)布后應該關閉對WCF服務的跟蹤。
作者: EricHu 出處:http://blog.csdn.net/chinahuyong 微博: 騰訊Email: 406590790@qq.com QQ 交流:406590790 平臺博客: 【CSDN】http://blog.csdn.net/chinahuyong 【CNBLOGS】http://www.cnblogs.com/huyong 關于作者:高級工程師、信息系統項目管理師、DBA。專注于微軟平臺項目架構、管理和企業(yè)解決方案,多年項目開發(fā)與管理經驗,曾多次組織并開發(fā)多個大型項目,精通DotNet,DB(SqlServer、Oracle等)技術。熟悉Java、Delhpi及Linux操作系統,有扎實的網絡知識。在面向對象、面向服務以及數據庫領域有一定的造詣。現從事DB管理與開發(fā)、WinForm、WCF、WebService、網頁數據抓取以及ASP.NET等項目管理、開發(fā)、架構等工作。 如有問題或建議,請多多賜教! 本文版權歸作者和CNBLOGS博客共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,如有問題,可以通過郵箱或QQ 聯系我,非常感謝。
分享標題:【推薦】捕獲WCF服務端與客戶端產生的通訊數據并分析
轉載來源:http://www.ef60e0e.cn/article/geijhc.html