问题描述
我编写了一个 24/7 每天重启的 C# 应用程序。在这个应用程序中,我通过 log4net 通过 adonetappender
登录到 sqlite 数据库。有时,数据库会损坏(是的,这是另一个需要检查的问题),并且日志记录会以静默方式失败。因此,在每次重新启动时,我都会检查数据库是否健康。如果没有,该文件将被存档,并创建一个新的 sqlite DB 文件和要记录到的表。
此代码(用于检查数据库的运行状况)现在在我的应用程序的设置中,但不属于此处,我想将此依赖项删除到 sqliteDb
。相反,我认为应该在创建 log4net.Appender.adonetappender
对象时调用此检查和修复代码。
那么我应该把这个代码放在哪里?是否有一些我在 log4net
或 adonetappender
中没有找到的钩子,或者应该创建 Appender
的派生类,还是有更好的地方?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)