मैं लॉग इन होने के अपवाद के प्रकार के आधार पर अपने एपेंडर को फ़िल्टर करने की कोशिश कर रहा हूं। क्या यह log4net में संभव है?विशिष्ट अपवाद प्रकार के लिए Log4Net एपेंडर फ़िल्टर?
6
A
उत्तर
9
log4net इसका समर्थन नहीं करता है। हालांकि आप IFilter
इंटरफ़ेस या FilterSkeleton
कक्षा (log4net.Filter
नामस्थान में दोनों) से प्राप्त करके अपने स्वयं के फ़िल्टर को आसानी से कार्यान्वित कर सकते हैं।
public class ExceptionTypeFilter : FilterSkeleton
{
override public FilterDecision Decide(LoggingEvent loggingEvent)
{
var ex = loggingEvent.ExceptionObject as YourExceptionType;
return (ex != null) ? FilterDecision.Accept : FilterDecision.Deny;
}
}
यह फिल्टर आप तो एक नियमित रूप से फिल्टर की तरह उपयोग कर सकते हैं:
कुछ इस तरह चाल करना चाहिए। आगे के संदर्भ के लिए आप मानक log4net फ़िल्टर के स्रोत कोड को देख सकते हैं।
संबंधित मुद्दे
- 1. log4net एडोनेट एपेंडर कनेक्शन समस्या
- 2. log4net कॉन्फ़िगरेशन अपवाद
- 3. log4net - केवल एनएच संदेश लॉगिंग के लिए कोई फ़िल्टर?
- 4. क्या मैं एक कस्टम log4net एपेंडर के कन्स्ट्रक्टर के लिए तर्क पास कर सकता हूं?
- 5. कस्टम एनएलओजी एपेंडर
- 6. log4net समस्याओं को ट्रैक करने के लिए कैसे करें
- 7. log4net फ़िल्टर - लॉग संदेशों को अनदेखा करने के लिए कैसे लिखें और फ़िल्टर करें
- 8. Log4Net कॉन्फ़िगरेशन
- 9. log4net - फ़ाइल
- 10. Log4Net
- 11. एकाधिक घटकों के लिए log4net केंद्रीकृत लॉगिंग
- 12. जब मैं अपने एपेंडर
- 13. 'NHibernate.LoggerProvider' के लिए प्रकार प्रारंभकर्ता ने एक अपवाद फेंक दिया
- 14. सी # अपवाद फ़िल्टर?
- 15. Log4Net
- 16. log4net
- 17. Log4Net - कोड
- 18. क्या अपवाद के प्रकार
- 19. अपवाद: 'system.data.sqlclient.sqlconnection' के लिए प्रकार प्रारंभकर्ता?
- 20. log4net
- 21. विशिष्ट प्रकार
- 22. विशिष्ट प्रकार
- 23. प्रकार अपवाद
- 24. क्या कोई लॉग 4नेट मेमोरी एपेंडर है?
- 25. log4net रणनीति?
- 26. कस्टम अपवाद फ़िल्टर एएसपीएनटी एमवीसी
- 27. जर्सी और फ़िल्टर अपवाद हैंडलिंग
- 28. विशिष्ट अपवाद पकड़ना
- 29. log4net - किसी विशिष्ट थ्रेड से संदेशों को अनदेखा करने के लिए confgure
- 30. जावा, कक्षा-विशिष्ट अपवाद बनाम मानक अपवाद
यह कोड केवल आपके विशिष्ट अपवाद प्रकार को लॉग करेगा। यदि आप एक विशिष्ट अपवाद को फ़िल्टर करना चाहते हैं, तो आप स्वीकार कर सकते हैं और अस्वीकार कर सकते हैं। फ़िल्टरडिशन। स्वीकार करें इसका मतलब है लॉग इन करें। इनकार करना मतलब है कि इसे लॉग न करें। शायद स्पष्ट है, लेकिन मुझे सोचने के लिए एक मिनट लगा। :) – scw
और यदि आपके पास एक से अधिक फ़िल्टर हैं, तो आपको FilterDecision.Neutral का उपयोग करने की आवश्यकता हो सकती है। – scw