企业库日志记录应用程序块无法写入数据库

本文关键字:数据库 程序块 日志 记录 应用 应用程序 企业库 | 更新日期: 2023-09-27 18:25:42

在我的应用程序中,我使用企业库日志记录应用程序块将异常记录到DB。此外,我使用fluent API配置日志记录应用软件块。

我注意到的事情:

  1. 当我没有使用Fluent API并且数据库日志记录失败时,它将异常记录到windows事件日志中。(版本5.0)
  2. 但当我使用它(Fluent API)时,在数据库失败的情况下,它不会在任何地方记录异常,甚至不会记录在windown事件日志中

我的问题:

  1. 这是企业库日志记录应用程序块的正常行为吗
  2. 有没有什么方法可以使用fluent API获得我在没有它的情况下获得的功能,这意味着(在数据库日志记录失败的情况下,记录到windows事件日志)

如有任何差异,请随时提出建议。:-)

企业库日志记录应用程序块无法写入数据库

确切的语法取决于您现有的配置。假设您没有配置要使用的跟踪侦听器或格式化程序:

configurationSourceBuilder
    .ConfigureLogging()
    .SpecialSources.LoggingErrorsAndWarningsCategory
    .SendTo.EventLog("Event Log Listener")
    .FormatWith(new FormatterBuilder().TextFormatterNamed("Text Formatter"));

如果您已经配置了要使用的事件日志跟踪侦听器(在本例中命名为"事件日志侦听器"):

configurationSourceBuilder
    .ConfigureLogging()
    .SpecialSources.LoggingErrorsAndWarningsCategory
    .SendTo.SharedListenerNamed("Event Log Listener");

如果您已经配置了要使用的日志格式化程序(在本例中命名为"文本格式化程序"):

configurationSourceBuilder
    .ConfigureLogging()
    .SpecialSources.LoggingErrorsAndWarningsCategory
    .SendTo.EventLog("Event Log Listener")
    .FormatWithSharedFormatter("Text Formatter");