Joe*_*ell 9 c# log4net message-queue azure
我有一个消息处理程序,在Azure中运行以下签名:
public static void DispatchQueueMessage([QueueTrigger("bq")] string msg,
TextWriter tw)
Run Code Online (Sandbox Code Playgroud)
我想配置log4net以使用提供的TextWriter.
如果这一般不可能,我绝对会选择使用标准格式输出的单个ILog实例!
我最终做了(如下):
ILog log = LogManager.GetLogger(name);
var appender = new TextWriterAppender();
appender.Writer = tw;
appender.Threshold = log4net.Core.Level.Debug;
DynamicPatternLayout layout = new DynamicPatternLayout();
layout.ConversionPattern = "%d [%t] %-5p %m%n";
layout.ActivateOptions();
appender.Layout = layout;
appender.ActivateOptions();
((log4net.Repository.Hierarchy.Logger) log.Logger).AddAppender(appender);
Hierarchy hierarchy = (Hierarchy)LogManager.GetRepository();
hierarchy.Configured = true;
return log;
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?