<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      代碼改變世界

      WCF 第九章 診斷 額外配置選項

      2011-02-22 08:28  DanielWise  閱讀(1104)  評論(0)    收藏  舉報

      先前部分描述配置日志和診斷的基本方法。在這一部分,我們將描述其他幾個你應該在配置你的WCF應用時注意的選項。

      共享監聽器

      先前的例子為每個源(消息和跟蹤)使用唯一的監聽器。你可能選擇配置一個共享監聽器并連接到多個源,將輸出統一為一個單獨元素,比如一個XML文件。列表9.4顯示如何將跟蹤和消息日志配置為使用同樣的輸出文件。

      列表9.4 向一個共享監聽器跟蹤并記錄消息

          <system.diagnostics>
              <sources>
                  <source name="System.ServiceModel" switchValue="Warning, ActivityTracing"
                      propagateActivity="true">
                      <listeners>
                          <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                              <filter type="" />
                          </add>
                      </listeners>
                  </source>
                  <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing">
                      <listeners>
                          <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                              <filter type="" />
                          </add>
                      </listeners>
                  </source>
              </sources>
              <sharedListeners>
                  <add initializeData="App_tracelog.svclog"
                      type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
                      name="diagnostics" traceOutputOptions="LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack">
                      <filter type="" />
                  </add>
              </sharedListeners>
          </system.diagnostics>
      

        對每個源來說,添加一個名字與共享監聽器匹配的監聽器。在這個情況下,我們要匹配”診斷”監聽器,它將向同樣的diagnostics.svclog文件寫跟蹤記錄和消息。

      消息過濾器

      默認情況下,所有在<messageLogging>配置元素中確定的層次的相關消息都會被記錄。然而,為了減少記錄時的重復信息并減少日志文件的大小,你可能想要只減少那些與你配置的一系列規則匹配的消息。

        消息過濾器是在一條消息將被記錄之前必須滿足條件的XPath表達式。不滿足XPath查詢的消息會被排除,除了及其嚴重的錯誤消息,它們不被消息過濾器影響。

        通過向<messageLogging>中添加一個<filters>節點來確定過濾器,如列表9.5所示。

      列表9.5 為消息日志添加一個過濾器

            <diagnostics>
                  <messageLogging logEntireMessage="true" logMalformedMessages="true"
                      logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true"
                      maxMessagesToLog="4000">
                      <filters>
                          <add nodeQuota="1000" 
                               xmlns:s12="http://www.w3.org/2003/05/soap-envelope" 
                               xmlns:wsa10="http://www.w3.org/2003/08/addressing"
                               /s12:Envelope/s12:Header/was10:Action[startswith(text(), 'http://Microsoft.ServiceModel.Samples/ICalculator')]></add>
                      </filters>
                  </messageLogging>
              </diagnostics>
      

        這個例子可能看起來有些復雜,但是它整個是為了定義在XPath表達式中使用的命名空間。命名空間是為了SOAP信封和尋址元數據用的。表達式檢查每條消息的頭來保證它會被轉發給我們SelfHost 例子中ICalculator服務中的一個。其他服務的消息會被忽略。

      跟蹤源自動刷新

      如果你想要每條跟蹤記錄或者消息記錄操作在每次跟蹤過程中自動完成(寫到硬盤中),在<System.diagnostics>配置節點的<trace>元素中開啟自動舒心功能,如列表9.6所示。

      列表9.6 開啟自動刷新功能

      <trace autoflush="true" />
      

        自動刷新功能默認關閉。在生產環境中開啟自動更新之前,要確定需要處理在一個測試環境中的影響,因為它會導致費用增加,特別是消息傳輸增加。

      性能計數器

      三種不同的WCF相關性能計數器與.NET Framework 3.5 一起安裝。在性能監控器中,你可以在ServiceModelService,ServiceModelEndpoint和ServiceModelOperation下面看到這些計數器。你可以選擇通過配置來為你的應用程序開啟這些,在列表9.7中顯示。

      列表9.7 開啟性能計數器更新

      <diagnostics performanceCounters="ServiceOnly">
                  <messageLogging 
                      logMalformedMessages="true" 
                      logMessagesAtServiceLevel="false"
                      logMessagesAtTransportLevel="true" />
              </diagnostics>
      

        通過在<system.serviceModel><diagnostics>節點中包含performanceCounters屬性來開啟性能計數器。驗證設置是Off(默認),ServcieOnly, 和All.強烈建議在開發和診斷目的下開啟所有的性能計數器,但是因為性能計數器與一些需要較多費用的操作一起使用,ServiceOnly 建議在正常的生產操作中使用,這將僅開啟那些在ServiceModelService 列表中的。

      提示 獲取性能計數器
      你需要運行一個WCF服務或者客戶端實例來在性能監控應用中添加性能計數器。確保性能計數器在配置文件中開啟并啟動你的服務,然后添加你想要獲取的計數器,并接著運行你的客戶端應用程序。

      Windows 設備管理(WMI)

      WCF支持通過WMI暴露設置和狀態的功能,很多常用的應用程序管理程序,比如微軟操作管理器和HP OpenView使用WMI來訪問多種跨企業的系統。Windows PowerShell也有支持WMI的功能,允許你為特殊的管理和監控場景寫自定義的腳本程序。

        你可以在如列表9.8的配置文件中為你的WCF應用程序開啟WMI供應者服務。

      列表9.8 開啟WMI 供應者服務

      <diagnostics wmiProviderEnabled="true" 
                           performanceCounters="ServiceOnly">
                  <messageLogging logMalformedMessages="true" 
                                  logMessagesAtServiceLevel="false"
                                  logMessagesAtTransportLevel="true" />
              </diagnostics>
      

      開啟WMI與開啟性能計數器類似。向<system.serviceModel><diagnostics>節點添加wmiProviderEnabled屬性。在它被開啟以后,管理程序將可以監控并管理你的WCF應用程序。

      主站蜘蛛池模板: 国产精品尤物午夜福利| 亚洲欧美在线一区中文字幕| 蜜臀久久综合一本av| 午夜一区欧美二区高清三区| 黄色段片一区二区三区| 国产高清国产精品国产专区| 欧美做受视频播放| 成人特黄特色毛片免费看| 少妇无码太爽了在线播放| 国产目拍亚洲精品区一区| 日日躁夜夜躁狠狠躁超碰97| 国产精品久久久久7777| 久久这里都是精品二| 精品午夜福利在线观看| 蜜臀在线播放一区在线播放| 亚洲中文字幕伊人久久无码| 一本久道久久综合狠狠躁av| 久久九九精品99国产精品| 骚虎三级在线免费播放| 久久亚洲精品11p| 亚洲丰满熟女一区二区蜜桃| 97人妻免费碰视频碰免| 欧美成人精品一级在线观看| 国产成人精品一区二区三区免费| 国产网红女主播精品视频| 春菜花亚洲一区二区三区| 国产成人啪精品午夜网站| 亚洲综合色成在线观看| 成人av专区精品无码国产| 精品在免费线中文字幕久久| 国产黄色带三级在线观看| 一本一本久久a久久综合精品| 四虎永久精品在线视频| 人妻少妇精品中文字幕| 野花香视频在线观看免费高清版 | 欧美老熟妇又粗又大| 亚洲av永久无码天堂影院| 日本高清视频在线www色| 亚洲小说乱欧美另类| 色噜噜狠狠成人综合| 好男人社区影视在线WWW|