मैं एक क्लास लाइब्रेरी में लॉगिंग फ़ंक्शन को कार्यान्वित करना चाहता हूं, जिसे स्वयं एक webservice में संदर्भित किया जाता है। मैंने app.config जोड़ने की कोशिश की और सब कुछ जरूरी किया, लेकिन ऐसा लगता है कि जब एक अपवाद फेंक दिया जाता है, तो log4net बस कुछ भी नहीं करता है।कक्षा पुस्तकालय के लिए log4net कैसे शामिल करें?
मेरी app.config
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="D:\\mylogfile.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<filter type="log4net.Filter.StringMatchFilter">
<stringToMatch value="test" />
</filter>
<filter type="log4net.Filter.StringMatchFilter">
<stringToMatch value="error" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger - %message%newline%exception" />
</layout>
</appender>
<root>
<level value="INFO"/>
<appender-ref ref="RollingFileAppender"/>
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>
AssemblyInfo.cs में
:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "app.config")]
LogManager.cs में
:
private static readonly ILog Log = log4net.LogManager.GetLogger
(MethodBase.GetCurrentMethod().DeclaringType);
public static void WriteLog(Exception ex)
{
Log.Error(ex);
}
आप मुझे बता सकते हैं कि क्या गलत है? मैं अपनी कक्षा पुस्तकालय के लिए लॉग 4नेट कैसे काम कर सकता हूं?
धन्यवाद
कैसे करता है जहाँ आप WRITELOG कॉल कर रहे हैं की तरह कोड देखो? –
बीटीडब्ल्यू, क्या आपने रूट पर अपना स्तर सेट करने की कोशिश की है, और अपने रोलिंगफाइलएपेंडर पर उन सभी फ़िल्टर को हटाने का प्रयास करें। –
@Pauli: मैंने कोशिश की के रूप में आप का सुझाव दिया, यह अभी भी :) – Vimvq1987