如何在运行时添加log4net appender?

如何在运行时添加额外的日志追加器? (所有预先存在的appender必须继续工作)
我这样试试:

var layout = new PatternLayout("%utcdate %-5level - %message%newline"); layout.ActivateOptions(); _log4netAppender = new FileAppender { Layout = layout, File = logFilePath, }; _log4netAppender.ActivateOptions(); BasicConfigurator.Configure(_log4netAppender); 

但它没有写任何文件。

您还应该将appender添加到记录器。 看一下这里以编程方式添加Appenders

如果您使用的记录器是,例如ILog logger请执行以下操作:

((log4net.Repository.Hierarchy.Logger)logger.Logger).AddAppender(appender)