在我们的ASP.Net Web API应用程序中,我们计划通过全局异常过滤器属性处理句柄异常,详见以下link。
我们计划在使用NLog的数据库,文件等多种媒体中记录异常。令我困惑的是像数据库这样的媒介,如果我们登录并且有例如数据库关闭,连接超时和其他多个,那么它将进入无限循环,因为它将继续尝试记录异常,这将不断返回异常。
是否存在限制它1或2次尝试的机制,然后静默失败,不进入无限循环,任何指针
答案 0 :(得分:2)
我们计划将异常记录在多个媒体中 数据库,使用NLog的文件。令我困惑的是像数据库这样的媒介, 如果我们记录并且存在例如数据库关闭,连接等异常 超时和其他多个,然后它将进入无限循环,因为它 将继续尝试记录异常,这将继续返回 异常。
这就是为什么你应该绝对确保你的日志记录代码永远不会失败。例如,将其包装在try/catch
语句中。