繁体   English   中英

我该如何格式化我的nLog布局

[英]how do i format my nLog layout

我的nLog布局如下

  fileTarget.Layout =  "${date}  ${message}";

在我的代码中,我正在记录如下

  logger.Info("ORDER UPDATE",order.Name,order.Instrument,order.OrderState);

但是,它仅记录第一个字符串,例如。

11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE
11/22/2012 22:37:16  ORDER UPDATE

我很确定我的布局中缺少某些内容,但无法弄清楚如何解决。 有人可以指出我的错误吗?

要保存所有字符串,应首先将它们连接起来。 正如我所看到的,您的记录器只能识别第一个,因此您应该添加其他字符串以使其成为一个字符串,因为实际上是在记录一个字符串,而不是多个。 或更新您的记录器以识别大量字符串,我的意思是这样的: fileTarget.Layout = "${date} ${message1} ${message2} ${message3} ${message4}";

或者,您可以使用string.Format (即Console.WriteLine )样式来期望令牌替换,这可能是您打算使用的样式:

logger.Info("ORDER UPDATE: Name = {0}; Instrument = {1}; State = {2} ", order.Name, order.Instrument, order.OrderState);

而不是为每个Logger请求假设相同数量的消息。

你能做点什么:

Info("ORDER UPDATE: " + order.Name + ", " + order.Instrument + ", " + order.OrderState);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM