実行時にログアペンダーを追加するにはどうすればよいですか? (すべての既存のアペンダーは機能し続ける必要があります)
私はそれをこのように試しています:
var layout = new PatternLayout("%utcdate %-5level - %message%newline");
layout.ActivateOptions();
_log4netAppender = new FileAppender
{
Layout = layout,
File = logFilePath,
};
_log4netAppender.ActivateOptions();
BasicConfigurator.Configure(_log4netAppender);
ただし、ファイルには何も書き込まれません。
また、アペンダーをロガーに追加する必要があります。こちらをご覧ください プログラムによるアペンダーの追加
使用しているロガーが、たとえばILog logger
の場合、次のようにします。
((log4net.Repository.Hierarchy.Logger)logger.Logger).AddAppender(appender)