3

Resque を使用して多数のマシンで Ruby ワーカーを実行しています。ときどき、Resque ワーカー プロセスでセグメンテーション エラーが発生します。これらはかなりまれであるため、デバッグが難しく、クラッシュを引き起こすには何万もの分散ジョブを実行する必要があります。

理想的には、クラッシュのたびにバックトレースとコア ファイルをキャプチャし、それらを中央サーバーに自動的にアップロードしたいと考えています。つまり、Gnome の「Bug Buddy」のようなものを探していますが、完全に自動化されており、Ruby インタープリターがコアをダンプするときに障害をキャッチできます。(同様の GUI ベースの製品には、MacOS X Crash Reporter、Windows Error Reporting、KDE ​​の Dr. Konqi、Mozilla の Breakpad などがあります。ただし、ヘッドレスの無人サーバーで実行されるものが必要です。)

これまでのところ、最も有望なオプションは、サーバー プロセスのクラッシュを傍受してディスクに保存できる Ubuntu の Apport のようです。Apport は通常、クラッシュを Ubuntu の Launchpad にアップロードしますが、Python ライブラリも付属しています。

これらのライブラリを使用した推奨事項や直接の経験はありますか? ソリューションにはプログラミングやコードの変更が含まれる可能性が高いため、Server Fault ではなくここで質問しています。

4

1 に答える 1

-1

HoptoadgetExceptional、およびNew Relicを確認してください。すべてがこれを行う SaaS オプションです (New Relic はパフォーマンスも追跡します)。自分でロールバックしたい場合は、exception_notification gem を試してください。

于 2010-10-25T15:47:24.647 に答える