【问题标题】:Enterprise library not logging severity correctly企业库未正确记录严重性
【发布时间】:2012-01-04 01:27:53
【问题描述】:

我的企业库 5 有问题。它正在将我希望它写入的所有信息写入事件日志,但是,它不尊重我配置的严重性设置。

我的异常处理配置块如下所示:

<exceptionHandlers>
  <add name="Logging Exception Handler"
       type="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging...,"
       logCategory="General"
       eventId="10000"
       severity="Critical"
       title="My unknown error"
       formatterType="Micros...ExceptionFormatter, Micros...ExceptionHandling"
       priority="0" />
</exceptionHandlers>

我的事件日志侦听器模板以:

Severity: {severity}{newline}

事件日志条目被记录为“错误”,而不是“严重”,但实际记录的消息包含文本“严重性:严重”

关于我如何在不必实际编写自己的异常处理程序/格式化程序的情况下实际将异常记录为关键的任何指针?

【问题讨论】:

    标签: logging enterprise-library event-log enterprise-library-5


    【解决方案1】:

    您看到的行为是 .NET API 的一部分。

    用于记录到 EventLog 的 EventLogEntryType Enumeration 中没有严重的级别或严重性。 TraceEventType 由 Enterprise Library 和 .NET 跟踪基础架构使用,它支持严重严重性。

    但是,在用于记录到 EventLog 的 System.Diagnostics.EventLogTraceListener 内部,Critical TraceEventType 被转换为错误 EventLogEntryType

    在事件查看器中有一个过滤器用于关键,但似乎这个级别是为低级别错误保留的。例如。内核相关。

    【讨论】:

    • 就我的目的而言,现在使用枚举中定义的级别就足够了。可惜它不允许您使用他们实际定义的开箱即用的东西。
    猜你喜欢
    • 1970-01-01
    • 2011-09-25
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    • 1970-01-01
    • 2010-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多