如何在NLog的一个类中为每个日志消息附加上下文数据
本文关键字:日志 消息 数据 上下文 一个 NLog | 更新日期: 2023-09-27 18:05:26
我想将上下文数据(如事务id)附加到由类的一个实例创建的每个日志消息中。目前我只看到两种方法:
- 用附加数据(大量附加代码)格式化每个日志消息
- 引入私有非静态日志方法,将附加必要的数据(大量过载)
有什么其他的选择来完成这个?
另一个选项是将上下文数据添加到NLog上下文类中,如MDC:
设置:
MappedDiagnosticsContext.Set("transactionId",1);
呈现:
${mdc:item=transactionId}
其他上下文类有:
- GDC:全局所有线程
- MDLC: MDC与异步支持
- NDC:添加上下文到堆栈(push和pop)
目前在Logger作用域中没有上下文类。