marffin
火狐狸
火狐狸
  • UID26524
  • 注册日期2008-10-04
  • 最后登录2012-10-17
  • 发帖数188
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
阅读:3929回复:1

献给所有可爱的小白鼠们:如何在为bugzilla提交崩溃报告时附加堆栈状态...

楼主#
更多 发布于:2008-11-01 14:18
看到版上很多同学喜欢紧跟潮流,差一点的用beta,猛一点的直接上nightly,但是发现了问题却没有正确的向Mozilla的跟踪系统bugzilla提交bug。我在这里翻译一篇Mozilla官方网站的文章,略尽绵薄之力。

原帖在这里
https://developer.mozilla.org/En/How_to ... bug_report

关于用beta2pre登陆163.com崩溃的帖
https://www.firefox.net.cn/forum/viewtopic.php?t=24695
相应的在bugzilla上提交的bug
https://bugzilla.mozilla.org/show_bug.cgi?id=461056
以后大家有Firefox的问题(bug)以及功能上的要求(feature request)都可以按照这个套路将其提交到bugzilla上去(当然,最重要的还是赶紧多学点E文)

----------------------------------------------------------------------------

stacktrace:堆栈状态报告
Mozilla Crash Reporter:Mozilla崩溃报告器

----------------------------------------------------------------------------
如何为一份bug报告提交堆栈状态报告

如果要向Bugzilla登记一份关于Firefox 3或者Seamonkey 2的崩溃报告,你应该在你的报告中附上一份堆栈状态报告。本文将告诉大家如何使用Mozilla崩溃报告器来获取崩溃ID或用其他方法创建一份堆栈状态报告。

要生成一份堆栈状态报告,你需要一份从Mozilla.org获取的Firefox。Linux发行版自带的Firefox或者是你自己从源代码编译生成的Firefox中的Mozilla崩溃报告器并不可用。这种限制的原因是崩溃报告器只能采集所需信息的一部分,而另一部分(调试符号debug symbols)存储在崩溃报告服务器上。崩溃报告服务器把提交的崩溃报告和调试符号结合在一起才能生成一份堆栈状态报告。

注意:在创建堆栈状态报告时,你应该用安全模式运行Firefox,以确认崩溃不是由扩展引起的。

如何用Mozilla崩溃报告器得到崩溃ID

当Mozilla软件崩溃时崩溃报告器窗口会自动出现。请确认你勾上了“告知Mozilla此次崩溃,以便修复”的复选框,然后点击“重新启动Firefox”
https://developer.mozilla.org/@api/deki ... ze=webview

此时,崩溃报告器会自动提交崩溃报告,然后Firefox会重新启动。在地址栏中输入about:crashes并回车。Firefox会打开一个已经提交了的崩溃报告的列表。将正确的崩溃报告的ID拷贝下来并附在你在Bugzilla登记的bug报告中(大功告成了)。注意别把不相干的崩溃报告ID复制下来了。
https://developer.mozilla.org/@api/deki ... ze=webview

崩溃之后Mozilla崩溃报告器没有出现怎么办?(仅适用于Windows平台)

在Windows平台上现今已知Flash的Firefox插件(版本号9,注意是插件,不是扩展)会阻碍崩溃报告器的出现。你可以在地址栏中输入about:plugins并回车来查看已安装的Flash插件的版本。你可以在 菜单->工具->附加组件 中禁用Flash插件,或者安装与崩溃报告器兼用的Flash 10。
https://developer.mozilla.org/@api/deki ... ze=webview

获取堆栈状态报告的其他方法

If the Mozilla crash reporter doesn't come up after a crash, or if you use a Linux build, use these instructions:
如果Mozilla崩溃报告器在崩溃后没有出现,或者你在使用Linux的版本,请使用以下方法:

Windows下
参考 使用Windbg创建堆栈状态报告(https://developer.mozilla.org/en/How_to_get_a_stacktrace_with_WinDbg) 来创建堆栈状态报告
如果你的软件只是挂起(hang)或者冻结(freeze)而不是崩溃了,请在WinDbg中使用以下指令:
 !analyze -v -hang

Linux下
*对于Ubuntu: Ubuntu项目组的解决方案(https://wiki.ubuntu.com/MozillaTeam/Bugs#Obtain%20a%20backtrace%20from%20an%20apport%20crash%20report%20%28using%20gdb%29)
*对于Suse: ISUSE项目组的解决方案(http://en.opensuse.org/Bugs:An_application_crashed)
用调试器运行Firefox的方法是: "./run-mozilla.sh -g -d gdb ./firefox-bin"
而不是:"gdb ./firefox"

----------------------------------------------------------------------------
最后:末尾链接的三篇文章也都是英文的,如果有需要我再翻译
我想说nightly版本对于一个正在为Mozilla代码库提交补丁的开发者才有意义,beta版本对于一个积极为Mozilla测试并向Bugzilla提交bug的志愿测试工作者才有意义。和版上那么多为抢鲜beta/nightly版本而遭遇无数苦难的同学们发的求助帖形成鲜明对比的是开发版的极度冷清。我想说Mozilla/Firefox在中国的潜力很大,但是还有很长的路要走。
叫兽
小狐狸
小狐狸
  • UID24372
  • 注册日期2008-05-30
  • 最后登录2015-06-10
  • 发帖数29
  • 经验20枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 社区居民
1楼#
发布于:2008-11-01 14:18
爱它就要爱它的一切
猥琐勃士一捅中文社区
游客

返回顶部