我们一直在研究自动将所有意外的客户端错误记录到我们的错误跟踪器。作为参考,我们的应用程序是用 Java/GWT/Guice/Hibernate/Jetty 编写的,我们的错误跟踪器是 FogBugz 的托管版本,它可以以编程方式或通过电子邮件创建错误。
我看到这样做的最大问题是在循环中发生的堆栈跟踪通过创建数千个案例使错误跟踪器过载。有没有人有建议的方法来处理这样的自动错误创建?
我们一直在研究自动将所有意外的客户端错误记录到我们的错误跟踪器。作为参考,我们的应用程序是用 Java/GWT/Guice/Hibernate/Jetty 编写的,我们的错误跟踪器是 FogBugz 的托管版本,它可以以编程方式或通过电子邮件创建错误。
我看到这样做的最大问题是在循环中发生的堆栈跟踪通过创建数千个案例使错误跟踪器过载。有没有人有建议的方法来处理这样的自动错误创建?
如果您使用的是FogBugz bugscout(另请参阅此处的最新文档),那么它能够增加相同问题的出现次数,而不是一次又一次地为相同的异常创建新案例。
您确定要这样做吗?
这显然取决于您的应用程序,但即使仔细处理可能生成大量错误报告的情况(由于循环),这种方法仍然可能最终填充错误跟踪器。
这个怎么样?对您的应用程序进行编码,以便每次引发异常时,您都会收集有关客户端的信息(IP、登录名、应用程序版本等)并通过电子邮件将其 + 堆栈跟踪(或整个异常对象 .ToString())发送给自己(或开发团队)。
然后在您的电子邮件客户端上,使用过滤器对收到的邮件进行分类并将其放入一个不错的文件夹中供您稍后查看。
因此,您可能会收到大量关于可能更多问题的电子邮件,但您并不真正关心,因为您自己在 bugtracker 中输入了问题,并轻松删除了那大量邮件。
这就是我为我的应用程序(这是一个客户端-服务器桌面应用程序)所做的。在这种情况下效果很好。
希望有帮助!
JIRA 支持使用所谓的服务创建自动问题:文档。
有没有人有建议的方法来处理自动错误创建......?
嗯,我有。不要那样做。
你会从中得到什么?测试人员的努力?以我的经验,任何人可以从中节省的任何努力都会多次丢失,因为开销转移给了必须分析和维护自动创建的票证的开发人员。更不用说由此造成的整体挫败感。