如何跟踪导致崩溃并通过apport / whoopsie报告的错误?


52

过去,当程序崩溃时,特别是当用户使用Ubuntu的预发行版时,可以使用apport打开错误报告。然后,用户可以跟踪该错误,查看它是否影响了其他错误,帮助进行修复等。

从Precise 12.04开始,此行为和工作流程已更改。正如我在错误#993450中发现的那样,“批准提交错误报告失败”,默认情况下,批准不再打开错误报告(这样做很尴尬,但并非不可能)。同时,人们注意到一个新的“ whoopsie”过程,如“ whoopsie”过程中的描述以及它有什么作用?

经过更多的谷歌搜索之后,我挖掘了这个蓝图,该蓝图描述了整个过程: ErrorTracker-Ubuntu Wiki。(它没有提到whoopsie或雏菊,所以我添加了它们-如果我弄错了,请纠正我)。

哇-听起来很不错,可以简化和改进崩溃报告流程。

我剩下的问题是:用户如何了解问题的状态?蓝图现在有此要求

用户应该有某种方式可以查看其崩溃报告的状态;例如,您可以查看一些报告ID以查看统计信息和/或任何相关的错误号。例如,在提交文件时提供序列号,以便以后可以通过网页加载。

这似乎没有实现。同时有什么可用的吗?

开发人员如何参与游戏?转到https://daisy.ubuntu.com只会提供“错误的内容类型”错误消息。

最后,我建议在发行说明中记录评估行为的变化。任何尝试帮助Ubuntu的人都应该对此感兴趣。


Answers:


45

感谢您对Ubuntu错误跟踪器项目的关注

从Precise 12.04开始,此行为和工作流程已更改。正如我在错误#993450中发现的那样,“批准未提交错误报告”默认情况下,批准不再打开错误报告(这很尴尬,但并非不可能)。

批准从未发布后创建错误报告。当发布仍在开发中时,您可以使用Apport来归档Launchpad错误(和错误报告)。

在Ubuntu的最终发行版中,我们现在显示错误对话框。与没有任何反馈的程序“消失”相比,这是一个很大的改进,而用户却不知道发生了什么。

人们选择发送这些报告时收集到的数据统计信息显示在http://errors.ubuntu.com上

我剩下的问题是:用户如何了解问题的状态?蓝图现在有此要求

用户应该有某种方式可以查看其崩溃报告的状态;例如,您可以查看一些报告ID以查看统计信息和/或任何相关的错误号。例如,在提交文件时提供序列号,以便以后可以通过网页加载。

我要删除它。那绝不是目的。用户界面要小心,不要对获得任何有关报告的反馈做出承诺。

这些不是错误报告。

我们的目的是减少开发人员发现最紧迫的问题,收集所需的信息以对其进行修复并将修复程序提供给用户的时间。

我们已经解决了寻找最紧迫的问题的问题。那是http://errors.ubuntu.com的首页

快速收集所需的信息,并且不会在遇到问题的用户之间形成漫长的反馈循环,这在Foundations-q-bucketing-improvements中得以解决。该计划是允许开发人员挂接到服务器端的信息收集过程。如果我需要/ var / log / syslog,但尚未提供,只需更改http://errors.ubuntu.com上的设置,下一个遇到该错误的人员就会自动将其添加到他们发送的数据中。

Foundations-q-updates-from-crash-reports中解决了快速获取用户修复的问题。当用户提交错误报告且该错误已得到解决并释放时,将出现一个对话框,询问他们是否要升级到解决他们刚刚遇到的问题的软件版本。

开发人员如何参与游戏?转到https://daisy.ubuntu.com只会提供“错误的内容类型”错误消息。

http://daisy.ubuntu.com并非供人类使用。错误报告守护程序(whoopsie)可以在其中向其发送报告。

让其他人参与进来绝对很棒。目前,我是唯一一个专职从事此工作的黑客。

系统分为四个部分。

  • Apport,它提供桌面用户界面。
  • Whoopsie,它接收由Apport创建的报告(和核心转储),并将其铲入错误跟踪器服务器Daisy中。
  • Daisy,从Whoopsie收集报告并进行处理。这是服务的核心。这就是将核心文件转换为追溯报告并生成您在http://errors.ubuntu.com上看到的统计信息的原因。
  • Errors是一个基于Django的网站,它提供了人类可读的数据视图以及用于处理数据的RESTful API。

lp:daisy的setup /目录下有一些过时的脚本集,这些脚本应该使您了解各个部分如何组合在一起。我一直在研究juju护身符来代替它。目标是使用单个命令将整个基础架构部署到云中以进行测试和开发。

如果您还有其他开发方面的问题,可以在Launchpad上找到我的电子邮件地址。

更多信息:


“当人们选择发送这些报告时,从收集的数据中获得的统计数据显示在errors.ubuntu.com上。” 仅当您的应用是使用受支持的编程语言编写的时,这才是不正确的。例如,没有任何用mono编写的程序在那里报告了错误。这是极端的歧视。Ubuntu的应该提供一个公平竞争环境,并根据他们所使用的语言不排除程序。
trampster

2
我想,您错过了他独自从事这项工作的那部分,伙计。首先支持流行语言没有问题。
Vadim Peretokin 2012年

5
确实,@ Vadi是正确的。这没有歧视。如果有人想加强和实现Mono支持,我会很乐意查看并合并他们的apport分支。
伊万(Evan)2012年


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.