自动将意外错误/堆栈跟踪记录到错误跟踪器的建议

时间:2011-09-08 04:35:15

标签: bug-tracking stack-trace fogbugz fogbugz-api

我们一直在考虑将所有意外的客户端错误自动记录到我们的错误跟踪器中。作为参考,我们的应用程序是用Java / GWT / Guice / Hibernate / Jetty编写的,我们的bug跟踪器是FogBugz的托管版本,它可以以编程方式或通过电子邮件创建错误。

我看到的最大问题是,循环中发生的堆栈跟踪会通过创建数千个案例来重载错误跟踪器。有没有人建议像这样处理自动错误创建?

3 个答案:

答案 0 :(得分:4)

如果您正在使用FogBugz bugscout(另请参阅up-to-date docs here),则它可以增加同一问题的出现次数,而不是一次又一次地为同一个异常创建新案例。

答案 1 :(得分:0)

你确定要这么做吗?

这显然取决于您的应用程序,但即使仔细处理可能产生大量错误报告的案例(因为循环),这种方法仍然可能最终填补错误跟踪器。

这个怎么样? 对您的应用进行编码,以便每次抛出异常时,您都会收集有关客户端的信息(IP,登录,应用版本等),并通过电子邮件将该堆栈跟踪(或整个异常对象.ToString())发送给您自己(或开发团队)。

然后在您的电子邮件客户端上,有一个过滤器对传入的邮件进行排序并将其抛出一个漂亮的文件夹供您稍后查看。

因此,您可以收到大量关于可能有一个或多个问题的电子邮件,但之后您并不关心,因为您自己在错误跟踪器中输入了问题,并轻松删除了大量邮件。

这就是我为我的应用程序(这是一个客户端 - 服务器桌面应用程序)所做的。在这种情况下,它表现得很好。

希望有所帮助!

答案 2 :(得分:0)

JIRA使用所谓的服务支持自动化问题创建:documentation

  

是否有人建议使用自动创建错误的方法......?

好吧,我有。不要那样做。

你会从中获得什么?测试员的努力?根据我的经验,无论多少努力都可以从中节省多少,而且开销转移给了必须分析和维护自动创建的票据的开发人员。更不用说由此造成的整体挫败感。

  • 我能想象的最不起作用的方式就像建立一个专门的错误类别或问题跟踪器实例,这样只有测试人员才能看到并使用它。
    在该“沙盒”中,可以将自动创建的错误分配给测试人员,测试人员稍后会将分析和聚合的错误报告传递给开发人员。
    即使在这种情况下,我也建议密切关注用户(测试人员)对系统的评价。如果他们开始抱怨系统,请考虑尝试手动操作方式。