我的项目中有最新版本的Common.Logging (3.4.1) 和NLog (4.5.11)。按照说明在 app.config 中将 Common.Logging 与 NLog 绑定在一起,日志记录现在可以工作了。
现在我想要结构化日志记录:
private static readonly ILog _logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
var message = new IDontKnowWhat("A structured message for ClientId {ClientId}", ClientId.ToString());
_logger.Info(message);
以上是伪代码,不知道如何构造消息对象。而且,_logger.InfoFormat似乎与String.Format一起使用,而不是结构化日志记录。
除了使用ThreadVariablesContext/GlobalVariablesContext/NestedThreadVariablesContext之外, Common.Logging是否提供结构化日志记录?