1
Вот моя попытка создать log4net без использования XML:Как добавить фильтр в log4net программно?
public class Logger
{
public static void Setup()
{
Hierarchy hierarchy = (Hierarchy)LogManager.GetRepository();
PatternLayout patternLayout = new PatternLayout();
patternLayout.ConversionPattern = "%date [%thread] %-5level %logger - %message%newline";
patternLayout.ActivateOptions();
RollingFileAppender roller = new RollingFileAppender();
roller.AppendToFile = false;
roller.File = @"Logs\EventLog.txt";
roller.Layout = patternLayout;
roller.MaxSizeRollBackups = 5;
roller.MaximumFileSize = "1GB";
roller.RollingStyle = RollingFileAppender.RollingMode.Size;
roller.StaticLogFileName = true;
roller.ActivateOptions();
hierarchy.Root.AddAppender(roller);
MemoryAppender memory = new MemoryAppender();
memory.ActivateOptions();
hierarchy.Root.AddAppender(memory);
hierarchy.Root.Level = Level.Info;
hierarchy.Configured = true;
}
}
Теперь мне нужно, чтобы превратить этот XML-код:
<filter type="log4net.Filter.StringMatchFilter">
<stringToMatch value="error"/>
</filter>
<filter type="log4net.Filter.DenyAllFilter"/>
в моей C# -кода. Но проблема в том, что я не знаю, как использовать фильтр. можно создать фильтр: log4net.Filter.IFilter filter;
но filter
не предоставляет these варианты ...
Не могли бы вы помочь instert фильтра в мой код?
Возможный дубликат: http://stackoverflow.com/questions/885378/log4net-pure-code-configuration-with-filter-in-c-sharp –