c# - LoggingEvent.ExceptionObject 为 null

标签 c# logging log4net

我目前正在尝试为 log4net 编写一个自定义附加程序。我的追加方法:

protected override void Append(LoggingEvent loggingEvent)
{
    ... stuff
}

我想在方法中捕获loggingEvent.ExceptionObject。我可以触发 Append 方法

throw new Exception("Test");

但是ExceptionObject始终为空。该程序的所有其他功能均有效;我可以调用 RenderLoggingEvent(loggingEvent) 并获取正确的字符串。我只是无法得到异常(exception)。

有什么想法吗?

最佳答案

希望这对某人有帮助! :)

当捕获异常时,我使用了Fatal(ex)方法。这是将异常对象转换为字符串消息。更改对 Fatal(ex, ex)Fatal("Fatal: ", ex) 的调用正确地将异常传递给自定义附加程序。

关于c# - LoggingEvent.ExceptionObject 为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30621709/

相关文章:

c# - .Net 按键获取任意深度的对象属性值

c# - 如何禁止在应用程序启动时创建空日志文件?

c# - 基于razor变量在 View 中添加元素属性

c# - 我不确定是否需要手动 'clean up' 我的对象或者垃圾收集器是否会处理它

.net - 灵活的跟踪查看器(用于 etl 文件和运行时跟踪)

logging - 在磁盘上实现固定大小的日志文件或循环缓冲区

.net - 使用 log4Net 在单个进程中记录多个客户端的帮助

c# - 将 Log4Net RollingFileAppender 设置为每周滚动

c# - 如何检查我的字符串是否包含文本?

python - 关闭 Snowflake DB 日志记录,同时仍将日志级别保持为 DEBUG