【问题标题】:How to log this exception if log4net appender fails to write in database?如果 log4net appender 无法写入数据库,如何记录此异常?
【发布时间】:2011-03-05 03:47:01
【问题描述】:

我在我的应用程序中使用 Log4Net API 来记录任何重要的事件或信息,以及在数据库中记录我的异常。

使用 Log4Net API 时可能会出现异常;如果它无法执行登录到数据库,那么这个异常将如何存储?如果 Log4Net API 无法执行日志记录,所有其他日志记录和异常日志记录将存储在哪里?

【问题讨论】:

标签: log4net appender


【解决方案1】:

Log4net 将静默失败,以免干扰应用程序的主要功能。如果您有一个绝对需要在数据库中保存的事件,您应该将其作为业务逻辑的一部分,即自己将其写入数据库。

如果您坚持为此使用 log4net,那么您可以编写一个具有故障转移逻辑的附加程序,以确保所有事件(最终)都记录到数据库中。但是,这似乎不是一个好主意...

至于正常的日志记录:为了确保我有日志,除了其他附加程序之外,我通常使用滚动文件附加程序。这样我就可以确定在最坏的情况下,我可以在文件中找到可用的日志。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多