मैं रोलिंग लॉग फ़ाइल में लॉग इन लॉग संदेश लॉग करने के लिए log4net का उपयोग कर रहा हूं।log4net के साथ ट्रेस संदेशों को लॉग कैसे करें?
अब मैं उस लॉग फ़ाइल में System.Diagnostics.Trace
से सभी ट्रेस संदेशों को पुनर्निर्देशित करता हूं। मैं इसे कैसे कॉन्फ़िगर कर सकता हूं? मैंने लॉग 4नेट दस्तावेज में इसके बारे में कुछ भी खोजने की कोशिश की, लेकिन सफलता के बिना। क्या यह सभी के लिए संभव है?
कारण मैं ऐसा करना चाहता हूं क्योंकि मुझे किसी तृतीय पक्ष लाइब्रेरी के ट्रेस संदेशों में रूचि है।
<log4net>
<appender name="R1" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyService.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<maxSizeRollBackups value="10" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
</log4net>
+1। अगर मैं TraceAppender को लिखने के लिए लॉग 4नेट भी सेट अप करता हूं तो मुझे सावधान रहना होगा। मैंने वास्तव में इसका परीक्षण नहीं किया है, लेकिन आप ऐसी परिस्थिति में समाप्त हो सकते हैं जहां ट्रेस लॉग 4नेट पर लिख रहा है और log4net ट्रेस पर लिख रहा है जिसके परिणामस्वरूप अनंत लूप होता है। उदाहरण के लिए ऊपर दिए गए उदाहरण को देखते हुए, आप लॉग इन 'सिस्टम। डायग्नोस्टिक्स.रेडरेक्शन' के लिए परिशिष्ट में TraceAppender को शामिल नहीं कर सकते हैं। – Jimit
क्योंकि यह एक ट्रेस श्रोता है क्योंकि आपको यह सुनिश्चित करने के लिए लिखने के तरीकों में प्रयास/प्रयास ब्लॉक लागू करना चाहिए कि एक लिखित प्रयास मेजबान को कभी विफल नहीं करेगा। मैंने कोड संपादन सबमिट किए जो ऑब्जेक्ट निर्माण को सही करते हैं और कोड को और अधिक पठनीय और असफल होने की संभावना कम करते हैं। –
@ जेवायएल यहाँ [उस ब्लॉग पोस्ट के लिए एक अद्यतन लिंक] है (http://www.geertvanhorrik.com/2010/06/18/log4net-tracelistener/)। हालांकि ऐसा लगता है कि कुछ चीजें इस कदम में खो गई हैं। उस पोस्ट में एक्सएमएल कोड अब गलत है और Log4netTraceListener का लिंक काम नहीं करता है। उम्मीद है कि लेखक कोड को पुनर्जीवित करेगा। –