2012-11-16 24 views
7

समस्या खोजने में सहायता के लिए डब्ल्यूसीएफ ट्रेसिंग चालू करने के बाद, अब मैं ट्रेसिंग बंद करना चाहता हूं। तो मैंने अपनी कॉन्फ़िगरेशन फ़ाइल को इस पर बदल दिया है ...डब्ल्यूसीएफ ट्रेसिंग स्विचवल्यू अभी भी बंद है अभी भी एक ट्रेस आउटपुट उत्पन्न हो रहा है

<system.diagnostics> 
     <sources> 
      <source name="System.ServiceModel" switchValue="Off" > 
       <!-- Information,ActivityTracing--> 
       <listeners> 
        <add name="xmlTraceListener" /> 
       </listeners> 
      </source> 
      <source name="System.ServiceModel.MessageLogging" switchValue="Off" > 
       <listeners> 
        <add name="xmlTraceListener" /> 
       </listeners> 
      </source> 
     </sources> 
     <sharedListeners> 
      <add name="xmlTraceListener" 
       type="System.Diagnostics.XmlWriterTraceListener" 
       initializeData="C:\WCFLogs\DataPortalTrace.svclog" /> 
     </sharedListeners> 
     <trace autoflush="true" /> 
    </system.diagnostics> 

फिर भी संकेत आउटपुट फ़ाइल को ट्रेस आउटपुट भेज रहा है। ऐसा क्यों है? मैं क्या खो रहा हूँ?

उत्तर

13

switchValue="Off" केवल System.ServiceModel को नियंत्रित करेगा। यह System.ServiceModel.MessageLogging

नियंत्रण नहीं करता है मेरे ज्ञान के रूप में आप maxMessagesToLog="0" के माध्यम से नियंत्रित कर सकते हैं - आप पहले से ही <diagnostics> टैग के तहत <system.serviceModel>

<diagnostics> 
     <messageLogging 
      logEntireMessage="true" 
      logMalformedMessages="true" 
      logMessagesAtServiceLevel="true" 
      logMessagesAtTransportLevel="true" 
      maxMessagesToLog="0" 
     /> 
</diagnostics> 

.NET framework for Configuring Message Logging

लॉगिंग स्तर है, साथ ही अतिरिक्त विकल्प हो सकता है , लॉगिंग स्तर और विकल्प खंड में चर्चा की जाती है।

switchValue स्रोत का गुण केवल ट्रेसिंग के लिए मान्य है। यदि आप निम्नानुसार System.ServiceModel.MessageLogging ट्रेस स्रोत के लिए स्विचवैल्यू विशेषता निर्दिष्ट करते हैं, तो इसका कोई प्रभाव नहीं पड़ता है।

कॉपी

<source name="System.ServiceModel.MessageLogging" switchValue="Verbose"> 

आप स्रोत का पता लगाने को निष्क्रिय करना चाहते हैं, तो आप के बजाय messageLogging तत्व की logMessagesAtServiceLevel, logMalformedMessages, और logMessagesAtTransportLevel विशेषताओं का उपयोग करना चाहिए। आपको इन सभी विशेषताओं को झूठ में सेट करना चाहिए। यह कॉन्फ़िगरेशन संपादक UI UI इंटरफ़ेस के माध्यम से, या WMI का उपयोग करते हुए, पिछले कोड उदाहरण में कॉन्फ़िगरेशन फ़ाइल का उपयोग करके किया जा सकता है। कॉन्फ़िगरेशन संपादक टूल के बारे में अधिक जानकारी के लिए, कॉन्फ़िगरेशन संपादक टूल (SvcConfigEditor.exe) देखें। डब्लूएमआई के बारे में अधिक जानकारी के लिए, डायग्नोस्टिक्स के लिए विंडोज मैनेजमेंट इंस्ट्रुमेंटेशन का उपयोग करना देखें।

+1

या सिर्फ चीज होने के लिए आप ब्लॉक पर टिप्पणी कर सकते हैं – hal9000

संबंधित मुद्दे