如果log4net appender无法在数据库中写入,如何记录此异常?

时间:2010-06-17 19:59:44

标签: log4net appender

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

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

1 个答案:

答案 0 :(得分:3)

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

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

对于普通日志记录:为了确保我有日志,我通常使用滚动文件appender以及其他appender。通过这种方式,我可以确定在最坏的情况下,我在文件中提供了日志。