log4net - 如何在日志记录系统关闭之前记录摘要

时间:2010-09-16 12:18:02

标签: .net log4net

我想在域关闭时记录一些摘要行,但log4net首先挂钩AppDomain.CurrentDomain.ProcessExit,并在我有机会输出消息之前关闭日志记录。 (并且永远不会记录消息)

所以我的问题是: 1.有没有办法在log4net之前挂起ProcessExit而不用初始化顺序玩太多? (当然不会更改我的应用程序的Program类) 2. log4net是否提供了在关机之前调用的任何钩子?

1 个答案:

答案 0 :(得分:1)

记录器存储库(可通过log4net.LogManager.GetAllRepositories()访问)具有事件:ShutdownEvent。这对您没有用,因为在 log4net关闭所有内容之后会引发此事件。

挂钩AppDomain.CurrentDomain.ProcessExit对我来说工作得很好。我只需要在初始化log4net之前这样做。 (不确定这是否符合“初始化顺序不会太多”。)