处理访问Web以进行数据库和Web api调用的服务中的错误日志记录的最佳方法

时间:2016-01-22 10:32:33

标签: c# asp.net-web-api exception-handling

我的服务监视远程数据库以获取新记录。如果找到任何一个,那么它会联系web api并呼叫每条记录。 如果在此过程中出现错误,则有些错误会持久,其他可能导致永久性失败,例如api服务器关闭,无法访问或移动等。

我的客户工作流程每25分钟重复一次,错误会记录到Windows事件日志和日志文件中。

如果每个循环出现错误,我是否应该延长循环时间或其他任何内容以防止出现在Windows事件日志中的大量错误? 有没有人有经验,可以帮忙吗?这是我第一次尝试这种事情。

1 个答案:

答案 0 :(得分:0)

这可能是基于意见的。 根据我的经验,考虑到只有1个来源,您会尝试避免污染大量错误的日志文件。如果您有1个错误而不是100个,那么解决问题通常要容易得多。在实践中,这意味着您必须在代码中使用一些逻辑来确定发生错误时的操作。

以下是可以帮助您解决此问题的技术列表:

  • 有操作超时
  • 使用重试次数,例如操作最多可以失败N次,例如3
  • 简化您的日志记录,确保只记录有用的内容
  • 使用错误日志级别,单独的INFO,DEBUG,WARNING和ERROR
  • 使用实时日志查看器来调试日志记录过程。例如。 baretailif str(contact) == 'John Smith'