लॉग 4नेट को कॉन्फ़िगर करने और उपयोग करने के दो तरीके हैं। पहली बात यह है कि जब मैं अपने स्वयं के एपेंडर और संबंधित लकड़हारे को कॉन्फ़िगर कर सकता हूं
<!-- language: xml -->
<appender name="myLogAppender" type="log4net.Appender.RollingFileAppender" >
<file value="Logs\myLog.log" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level - %message%n" />
</layout>
</appender>
<logger name="myLog">
<level value="All"></level>
<appender-ref ref="myLogAppender" />
</logger>
और फिर जब मैं लॉग इन में कुछ लिखना चाहता हूं, तो मैं निम्नलिखित कर सकता हूं:
ILog log = LogManager.GetLogger("myLog");
log.Info("message");
इसका उपयोग करने का दूसरा तरीका रूट को कॉन्फ़िगर करना है जैसा कि मैं चाहता हूं:
<!-- language: xml -->
<root>
<level value="Error" />
<appender-ref ref="myLogAppender" />
</root>
और इस मामले में मैं इस तरह से संदेश भेज सकता हूं:
ILog log = LogManager.GetLogger(typeof(Bar));
log.Info("message");
दूसरे दृष्टिकोण का लाभ यह है कि आप फ्लाई पर कुछ संदेशों को सक्षम या अक्षम कर सकते हैं। लेकिन समस्या यह है कि मैं EPiServer CMS में विकसित हो रहा हूं और इसकी अपनी लॉगिंग प्रणाली है जो log4net का उपयोग करता है और अगर मैं रूट स्तर पर जानकारी लॉगिंग को सक्षम करता हूं, तो बहुत सारे सिस्टम लॉग लिखे जाएंगे।
आप log4net का उपयोग कैसे करते हैं? सिस्टम का प्रत्येक भाग अपने स्वयं के लकड़हारे में लिखता है, या सब कुछ डिफ़ॉल्ट लकड़हारे में लिखा जाता है, और कॉन्फ़िगरेशन तय करता है कि आगे क्या करना है?