企业库5日志记录,用附加的上下文信息填充LogEntry

本文关键字:上下文 信息 填充 LogEntry 日志 记录 企业库 | 更新日期: 2023-09-27 18:05:12

我想弄清楚这是可能的,以及如何实现这个功能使用企业库日志。

在我当前的代码中,我是这样处理异常的:

exceptionManager.HandleException(ex, "LogException");

我想要的是记录这个异常,但收集额外的上下文信息,例如汇编版本,我需要扩展什么'实现来记录这个额外的上下文信息?

企业库5日志记录,用附加的上下文信息填充LogEntry

可能最简单的方法是使用异常的Data属性附加额外的上下文信息。然后Enterprise Library将所有的Data元素映射到Extended Properties。

try
{
    DoSomething();
}
catch (Exception ex)
{
    ex.Data["ExecutingAssembly"] = Assembly.GetExecutingAssembly().FullName;
    bool rethrow = exceptionManager.HandleException(ex, "LogException");
    if (rethrow)
    {
        throw;
    }
}

然后确保日志模板的扩展属性设置为log:

Extended Properties: {dictionary({key} - {value}