mozilla

Revision 131551 of Remote debugging

  • リビジョンの URL スラグ: Remote_debugging
  • リビジョンのタイトル: Remote debugging
  • リビジョンの ID: 131551
  • 作成日:
  • 作成者: TomoakiShimizu
  • 現行リビジョン いいえ
  • コメント 12 words added, 41 words removed

このリビジョンの内容

{{ 翻訳中() }}

When a bug is reproducible by a community member, but not on a developer's computer, a last-resort strategy is to debug it on the community member's computer. The crash victim should at least know how to run a debugger, if not how to use it, and should have a debug build of Firefox handy.

This requires quite a bit of trust, in both directions. The developer trusts that his time is not being wasted: the crash is a real bug in Firefox. (That is, there's a legitimate reason it happens only on some computers, but that reason just hasn't been discovered.) The crash victim, in turn, trusts the developer with full access to his computer.

A good place to start is a detailed stack (in gdb, use bt followed by bt full).  There give more information about the stack than a Breakpad crash report: not only the names of the functions on the stack, but also the values they were passed.

コアダンプ

A core dump includes all of the memory of a crashed program. It allows you to see the crash in a debugger even after the program has long exited.

コアダンプを転送することは扱いにくい。それは大きく、個人情報を含むことができるからである。

MacやLinuxにおけるコアダンプ

Mac上でコアダンプを生成するため、「ulimit -c unlimited」をタイプして、コマンドラインからFirefoxを起動し、Firefoxをクラッシュする。Firefoxがクラッシュしたとき、コアは /Cores に位置する。そしてあなたはgdb(gdb firefox-bin corefile)にコアファイルをロードすることができる。そしてそれはgdb下でFirefoxを起動している間、あたかもクラッシュをキャッチしたかのようになるでしょう!

MacやLinuxのコアダンプを転送するとき、(多分さらに)実行可能なFirefoxもまた転送しなければならないでしょう。

Windowsにおけるコアダンプ

「minidumps」と呼ばれる。このセクションは拡張を必要とします。

Debugging over Bugzilla

Explain in the bug that you have a core file or can reproduce the crash as many times as needed. The developer can give you appropriate commands to type into the debugger.

Examples: 367650, 374356, 393325, 418139

Debugging over IRC

Find the developer on IRC and explain that you've caught the bug in a debugger. Since debugging usually requires printing many objects, this is much faster than debugging over Bugzilla.  Use pastebin.mozilla.org for anything too long to paste into IRC.

Examples: 391851

リモートデスクトップを用いてコンピュータを共有する

Offer to let a developer control your computer using Remote desktop software such as VNC or Fog Creek Copilot.

Share your computer in person

If you happen to live in Mountain View, California, you can probably hand your laptop to a Mozilla developer for a bit.

Examples: 496391, 476241

 

このリビジョンのソースコード

<p>{{ 翻訳中() }}</p>
<p>When a bug is reproducible by a community member, but not on a developer's computer, a last-resort strategy is to debug it <em>on</em> the community member's computer. The crash victim should at least know how to run a debugger, if not how to use it, and should have a <a href="/En/Developer_Guide/Build_Instructions" title="En/Developer_Guide/Build_Instructions">debug build of Firefox</a> handy.</p>
<p>This requires quite a bit of trust, in both directions. The developer trusts that his time is not being wasted: the crash is a real bug in Firefox. (That is, there's a legitimate reason it happens only on some computers, but that reason just hasn't been discovered.) The crash victim, in turn, trusts the developer with full access to his computer.</p>
<p>A good place to start is a detailed stack (in gdb, use <code>bt</code> followed by <code>bt full)</code>.  There give more information about the stack than a Breakpad crash report: not only the names of the functions on the stack, but also the values they were passed.</p>
<h2>コアダンプ</h2>
<p>A <a class=" external" href="http://en.wikipedia.org/wiki/Core_dump">core dump</a> includes all of the memory of a crashed program. It allows you to see the crash in a debugger even after the program has long exited.</p>
<p>コアダンプを転送することは扱いにくい。それは大きく、個人情報を含むことができるからである。</p>
<h3>MacやLinuxにおけるコアダンプ</h3>
<p>Mac上でコアダンプを生成するため、「ulimit -c unlimited」をタイプして、コマンドラインからFirefoxを起動し、Firefoxをクラッシュする。Firefoxがクラッシュしたとき、コアは /Cores に位置する。そしてあなたはgdb(gdb firefox-bin corefile)にコアファイルをロードすることができる。そしてそれはgdb下でFirefoxを起動している間、あたかもクラッシュをキャッチしたかのようになるでしょう!</p>
<p>MacやLinuxのコアダンプを転送するとき、(多分さらに)実行可能なFirefoxもまた転送しなければならないでしょう。 </p>
<h3>Windowsにおけるコアダンプ</h3>
<p>「minidumps」と呼ばれる。このセクションは拡張を必要とします。</p>
<h2>Debugging over Bugzilla</h2>
<p>Explain in the bug that you have a core file or can reproduce the crash as many times as needed. The developer can give you appropriate commands to type into the debugger.</p>
<p>Examples: 367650, 374356, 393325, 418139</p>
<h2>Debugging over IRC</h2>
<p>Find the developer on IRC and explain that you've caught the bug in a debugger. Since debugging usually requires printing many objects, this is much faster than debugging over Bugzilla.  Use <a class="external" href="http://pastebin.mozilla.org/" title="http://pastebin.mozilla.org/">pastebin.mozilla.org</a> for anything too long to paste into IRC.</p>
<p>Examples: 391851</p>
<h2>リモートデスクトップを用いてコンピュータを共有する</h2>
<p>Offer to let a developer control your computer using <a class=" external" href="http://en.wikipedia.org/wiki/Remote_desktop_software">Remote desktop software</a> such as <a class=" external" href="http://en.wikipedia.org/wiki/VNC">VNC</a> or <a class=" link-https" href="https://www.copilot.com/">Fog Creek Copilot</a>.</p>
<h2>Share your computer in person</h2>
<p>If you happen to live in Mountain View, California, you can probably hand your laptop to a Mozilla developer for a bit.</p>
<p>Examples: 496391, 476241</p>
<p> </p>
このリビジョンへ戻す