gpt4 book ai didi

c# - errorException 消息的 NLog 参数

转载 作者:太空狗 更新时间:2023-10-29 21:39:48 24 4
gpt4 key购买 nike

当我使用 NLog 2.0.1 捕获异常时,我正在寻找一种记录表达性消息的方法,例如

try {
....
}
catch(Exception ex) {
logger.ErrorException("Error with query {0}", query, ex);
}

但是NLog不支持。我遇到的其他形式是

logger.ErrorException(  String.Format("Error with query {0}", query)) , ex);

logger.Error("Error with query {0} {1} {2}", query, ex.Message, ex.StackTrace);

logger.Error("Error with query {0}", query);
logger.ErrorException("", ex);

LogEventInfo ei = new LogEventInfo(LogLevel.Error, logger.Name, null, 
"Error with query {0}", new object[] { query }, ex);
logger.Log(ei);

但是似乎没有什么比调用 logger.Error () 更简单了目前,第一个选项是我的最爱,尽管格式化一个可能不会被使用的字符串:

  • 第二个选项不使用 exceptions 的布局选项.
  • 第三个在日志中创建了两个条目,可能会造成混淆。
  • 第四个选项不太清楚。

还有吗?

最佳答案

更新,

这是可能的,因为 NLog 4.0

logger.Error(ex, "Error with query {0}", query);

参见 news post - consistent logging of exceptions

关于c# - errorException 消息的 NLog 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18830138/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com