EL中的Logger.Write方法是否缺少重载?其他日志框架提供这些API?

时间:2011-02-16 15:33:58

标签: logging log4net enterprise-library nlog

我最近开始使用Enterprise library 5.0日志记录块并有两个观察结果。

  1. 我的日志记录格式是时间戳,严重性和邮件本身。我找不到任何带有消息和严重性级别参数的Logger.Write方法的重载。显然,我可以使用其他重载,类似于类别,eventId,优先级等等。有一点奇怪的是,消息和严重性没有重载,如

    public static void Write(对象消息,TraceEventType严重性);

    有没有人有相同的观察结果,或者我遗失了什么?

  2. 我也没有找到任何带有Exception对象参数的Logger.Write的重载。这也让我感到惊讶。如果有一个带有异常对象的重载并记录堆栈跟踪,内部异常等事情会很好。其他人也觉得它很令人惊讶吗?

  3. 我猜其他框架(如log4net,NLog)在其API中有这种类型的接口吗?

1 个答案:

答案 0 :(得分:1)

只需使用带有LogEntry的Write重载。您可以创建LogEntry并仅设置您关心的属性。您始终可以在Exception对象上获取StackTrace并将其添加到日志条目中。

通过策略记录例外的另一个选项是Logging handler of the Exception Handling Block