2010-10-23 7 views
16

पर जोड़ना मैं वेबसाइट के साथ नीचे कोड का उपयोग करना चाहता हूं। कौन सा config sections मुझे फ़ाइल या विंडोज इवेंट लॉग में आउटपुट लॉग करने के लिए web.config में जोड़ना चाहिए?tracelistener को web.config

using System.Diagnostics; 

// Singleton in real code 
Class Logger 
{ 
    // In constructor: Trace.AutoFlush = false; 

    public void Log(message) 
    { 
     String formattedLog = formatLog(message); 
     Trace.TraceInformation(formattedLog); 
     Trace.Flush(); 
    } 
} 

उत्तर

22

आपको system.diagnostics अनुभाग का उपयोग करना चाहिए।

<configuration> 
    <system.diagnostics> 
    <trace autoflush="false" indentsize="4"> 
     <listeners> 
     <add name="myListener" 
      type="System.Diagnostics.TextWriterTraceListener" 
      initializeData="TextWriterOutput.log" /> 
     <remove name="Default" /> 
     </listeners> 
    </trace> 
    </system.diagnostics> 
</configuration> 

प्रणाली की घटनाओं के लिए यह वह जगह है लॉग इन करें: http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlogtracelistener.aspx

+3

खिड़कियों के लॉगिंग घटना लॉग के बाद से यह प्रशासनिक विशेषाधिकार की जरूरत asp.net के साथ सीधे आगे नहीं है यहाँ MSDN से पाठ फ़ाइल के लिए उदाहरण है। – Xaqron

+0

क्या आपको लगता है कि web.config _listiners_ अनुभाग में कोई भी परिवर्तन EventLog में लॉग इन करने की अनुमति देने के लिए आवश्यक है? – TarasB

+0

क्या आपको बस इस कोड को वेब कॉन्फ़िगरेशन पर चाहिए या आपको निम्न कोड की भी आवश्यकता है? 'ईवेंट लॉग के लिए ट्रेस श्रोता बनाएं। नई EventLogTraceListener ("myEventLogSource") 'संग्रह लॉग इवेंट ट्रेस श्रोता संग्रह में जोड़ें। Trace.Listeners.Add (myTraceListener) 'ईवेंट लॉग में आउटपुट लिखें। Trace.WriteLine ("टेस्ट आउटपुट") –