我有一个诊断版本的服务,它尽可能多地记录在 OnStart() 和 OnStop() 方法中。
我无法捕获的一个事件是计算机物理重新启动时。我的日志功能通常将其输出记录到数据库中的表中,但是当它不可用时,它会发布到 EventLog。
在重新启动时,我的服务既不记录到表也不记录到 EventLog。
对我来说,我无法发布到表是有道理的,因为 SQL Server 正在关闭,但似乎由于时间问题,EventLog 也可能在服务默认为之前关闭写在那里。
在关闭的情况下,MSSQLSERVER 在 EventLog 中报告一条信息消息:
SQL Server 由于系统关闭而终止。这只是一条信息性消息。无需用户操作。
有没有办法为我的服务做类似的事情?