4

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

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

4

1 回答 1

3

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

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

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

于 2010-06-18T07:24:48.503 回答