异常记录器:最佳实践

And*_*eas 6 delphi exception-handling

我刚开始在我的(Delphi)应用程序中使用异常记录器(EurekaLog).现在我的应用程序每天通过电子邮件向我发送大量错误消息.这是我到目前为止发现的

  • 很多重复的错误
  • 来自同一台PC的多封邮件

虽然这是改善我的应用程序的非常有价值的输入,但我对我获得的大量信息感到有些不知所措.

从您的应用程序处理邮件的最佳做法是什么?

Dre*_*ejc 8

如果您获得了大量信息,那么您目前无法获得任何信息.

所以我会说你的错误分组,如警告,致命错误等.然后限制你的电子邮件到最重要的消息(致命).除此之外,定期(日,周......)审查您的日志.


mj2*_*008 6

我用异常日志记录完成了什么,它使用madExcept作为核心,但是我自己的传输机制是让它们全部进入数据库.核心信息全部从每个报告中提取并放入字段中,整个报告也被存储.自动分析堆栈跟踪以删除不感兴趣的函数,只留下我失败的函数列表.

随着这种情况自动发生,我现在可以"忽略"每个单独的消息,但是在网格中看到更大的图片,向我展示哪些功能最容易出问题.然后我可以专注于它们,寻找原因并修复它们.

如果我选择的话,我的显示应用程序也可以在特定数字之前过滤掉构建中的报告,这样我就可以告诉它在构建75之前不要包含"MyWidget.BadProc".

这有助于我改进我的应用程序,并且无需猜测就能解决人们发现问题最多的问题.


Ale*_*lex 0

我认为你应该扔掉所有重复的。只留下报告的数量。即,如果您收到 100 份报告,但只有 4 个独特的问题 - 只留下 4 份报告,扔掉其他 96 份报告,但使用它们的计数按严重性对报告进行排序。例如,第四个问题有 6 个报告,第三个问题有 10 个报告,第二个问题有 20 个报告,第一个问题有 60 个报告。因此,您应该用 60 份报告解决第一个问题,然后再切换到第二个问题。

我相信 EurekaLog 在其报告中包含 BugID。相同的问题具有相同的 BugID。这将允许您对重复的报告进行排序。EurekaLog Viewer 还可以整理重复项。