gpt4 book ai didi

log4net - 为什么 log4net 不记录我的堆栈跟踪?

转载 作者:行者123 更新时间:2023-12-02 02:13:48 24 4
gpt4 key购买 nike

使用首选形式

_log.Error("Message", exception)

不记录我的堆栈跟踪。为了解决这个问题,我必须通过执行以下操作确保 .ToString() 调用异常。

_log.Error("Message" + exception);

但我知道那是错误的,只是我无法使正确的版本工作。我是否需要在我的 log4net.xml 文件中添加一行才能使这项工作正常进行?

最佳答案

我想提供我最终的答案,仅供引用。我已经使用我对 SO 问题 How do I create an asynchronous wrapper for log4net? 的回答为 log4net 实现了一个异步附加程序方案。

我在回复中指出,您需要小心 FixFlags,因为任何不在 FixFlags 中的内容都会从原始日志记录事件中删除。不幸的是,我没有将 FixFlags.Exception 添加到我的原始解决方案中,因此在转发过程中生成的任何异常都会被丢弃。

从中更改我的 FixFlags

loggingEvent.Fix = FixFlags.ThreadName;

loggingEvent.Fix = FixFlags.ThreadName | FixFlags.Exception;

解决了这个问题。

关于log4net - 为什么 log4net 不记录我的堆栈跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11530905/

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