Uygulamamı, günlüğe kaydedilen özel durumun türüne göre filtrelemeye çalışıyorum. Log4net'te bu mümkün mü?Log4Net appender filtresi?
6
A
cevap
9
log4net bunu doğrudan desteklemiyor. Ancak, kendi filtrenizi, IFilter
arabiriminden veya FilterSkeleton
sınıfından (her ikisi de log4net.Filter
ad alanında) türeterek kolayca uygulayabilirsiniz.
public class ExceptionTypeFilter : FilterSkeleton
{
override public FilterDecision Decide(LoggingEvent loggingEvent)
{
var ex = loggingEvent.ExceptionObject as YourExceptionType;
return (ex != null) ? FilterDecision.Accept : FilterDecision.Deny;
}
}
Bu filtre daha sonra normal bir filtre gibi kullanabilirsiniz: Böyle
şey hile yapmak gerekir. Daha fazla referans için standart log4net filtrelerinin kaynak koduna bakabilirsiniz.
İlgili konular
- 1. Log4Net: Rolling Dosya appender tanımlamak uzatma
- 2. Log4Net Rekürsif kilit satın almalar böyle görünen bir özel log4net appender var
- 3. log4net GenericFailure.
- 4. Log4Net: Çoklu kaydedicileri
- 5. Log4Net yapılandırmasından değer alma
- 6. Log4Net Çoklu kaydediciler
- 7. log4net app.config dosyasından okunmaz
- 8. Programlanabilir bir şekilde log4net
- 9. Log4Net - sadece kod
- 10. LOG4NET
- 11. Log4Net?
- 12. log4net
- 13. Log4net, kayıt işlemini rasgele durdurur.
- 14. log4net Çalıştırılan dosya başına bir dosya
- 15. Tanınmayan yapılandırma bölümü log4net. web.config web sitesi
- 16. Log4Net: UTC zamanları ile oturum aç
- 17. Log4net için bir özel olay günlüğünü yapılandırma
- 18. Log4net günlüğü, paralel iş parçacıkları ile çalışmaz
- 19. log4net günlüğü oluşturuluyor ancak boş bırakılıyor
- 20. log4net, sunucuya yayınlandığında, günlük dosyası oluşturulamıyor
- 21. Castle.Facilities.Logging ve log4net ile günlüğe kaydetme
- 22. log4net traceappender yalnızca Windows Azure DiagnosticsMonitor
- 23. log4net Günlüğe kaydetme Debug.WriteLine ve Console.WriteLine
- 24. Log4Net EventLogAppender Şöyledir olarak Özel olay günlüğüne
- 25. Log4net RollingFileAppender Boyut rollingStyle dosya uzantisi
- 26. Log4net ile Özel Klasörler'e nasıl giriş yapabilirim?
- 27. Log4Net kütükten INFO'yu filtreleyin ve sadece DEBUG & ERROR'u görüntüleyin
- 28. log4net ve nunit testleri, en temel örnek
- 29. log4net: DB
- 30. Yapılandırma verileri için log4net uygulama yapılandırma dosyası kullanıldı
Bu kod yalnızca özel kural dışı durumunuzu kaydeder. Belirli bir istisnayı filtrelemek isterseniz Kabul Et ve Reddet'i tersine çevirebilirsiniz. FilterDecision.Accept, onu kaydetmek anlamına gelir. Reddetmek, onu kaydetme anlamına gelir. Muhtemelen bariz, ama düşünmem gereken bir dakika sürdü. :) – scw
Birden fazla filtreniz varsa, FilterDecision.Neutral kullanmanız gerekebilir. – scw