企业库3.1 - 如何向侦听器'添加标签添加新的配置属性?

时间:2011-10-13 11:49:02

标签: properties enterprise-library listener new-operator

我想基于Severity过滤跟踪侦听器,如警告,错误等。

表示如果在配置文件中写入下面的侦听器并添加新属性“severityFilter”,则此侦听器将仅捕获警告和上述日志。

那么如何创建这个名为“severityFilter”bye code的新属性?

  <add databaseInstanceName="DB1" writeLogStoredProcName="WriteLog"
               addCategoryStoredProcName="AddCategory" formatter="Text Formatter"
               listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Database.Configuration.FormattedDatabaseTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging.Database, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
               traceOutputOptions="None" type="Microsoft.Practices.EnterpriseLibrary.Logging.Database.FormattedDatabaseTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging.Database, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
           name="Database Trace Listener"  severityFilter="Warning" />

由于 Mitesh Patel

1 个答案:

答案 0 :(得分:1)

您无法向现有侦听器添加任意配置属性。侦听器属性在配置数据类中定义(在示例中为FormattedDatabaseTraceListenerData)。如果要添加新配置属性,则必须创建自定义侦听器。

类别有一个SourceLevel过滤器,可让您按严重程度进行全局过滤。但是如果你想在TraceListener的基础上进行,那么你应该升级到更新版本的Enterprise Library - 支持该功能。

另一个选项是自定义过滤器,但它作用于LogEntry,因此也不依赖于TraceListener。