2010-03-02 10 views
8

मेरे पास एक ऐसी स्क्रिप्ट है जिसमें एकाधिक धागे समानांतर में चल रहे हैं। ये धागे Log4Net RollingFileAppender फ़ाइल को लिखते हैं। इस लॉग को पढ़ना काफी उलझन में है क्योंकि सभी थ्रेड लॉग मिश्रित होते हैं। मुझे आश्चर्य है कि इन लॉगों को लिखने का एक अच्छा तरीका क्या है, और इन फ़ाइलों को पढ़ने का सबसे अच्छा तरीका क्या है ताकि किसी विशेष धागे की डीबगिंग जानकारी को पढ़ना आसान हो जाए।एकाधिक धागे द्वारा उत्पन्न Log4Net से लॉग पढ़ना

उत्तर

7

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

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
    <file value="service.log" /> 
    <appendToFile value="true" /> 
    <rollingStyle value="Size" /> 
    <maxSizeRollBackups value="10" /> 
    <maximumFileSize value="2MB" /> 
    <staticLogFileName value="true" /> 
    <layout type="log4net.Layout.PatternLayout"> 
     **<conversionPattern value="%-5level : [%t] - %message%newline" />** 
    </layout> 
</appender> 

अद्यतन मैं इस प्रदर्शन करने के लिए एक सरल POC एप्लिकेशन लिखा है: यह <conversionPattern> टैग log4net कॉन्फ़िग फ़ाइल के माध्यम से धागा नाम सहित का एक सरल उदाहरण है। http://codereport.net/logging-the-thread-name-with-log4net/

+0

थ्रेड। नाम एमएसडीएन लिंक: http://msdn.microsoft.com/en-us/library/system.threading.thread.name.aspx –

+0

मैंने थ्रेड जानकारी जोड़ दी है और फिर मैं LogExpert (http: //www.log-expert.de/) प्रत्येक धागे के निशान को आसानी से पढ़ने के लिए लॉग फ़िल्टर करने के लिए। –

0

किसी डेटाबेस की तरह संभालने में आसान कुछ लॉगिंग पर विचार करें। डेटाबेस तालिका में AdoNetAppender लॉगिंग का उपयोग करके आप थ्रेड पर आसानी से सॉर्ट और फ़िल्टर कर सकते हैं।

लॉग 4नेट साइट पर config samples पर जा रहे हैं कि यह कैसे प्राप्त करें।

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