Errbitのソースを見たことがありますか?これはあなたが探している機能を持っているかもしれません。
Errbit
個人的には、賢く回復するのではなく、大規模に失敗し、(肉空間で)応答を処理する方法を用意する必要があると思います。そのように引っ張っている髪が多すぎます。:-)
また、これはあなたにとっても良い参考になるかもしれません。
並外れたルビーブック
幸運を!
更新:2017年1月23日
最近なぜこれが反対票を投じられたのか私にはわかりません。私はまだ本番環境で「大失敗」を待機し、他のシステムで応答を処理します。これは、賢いRubyistsのカーゴカルトに反する可能性がありますが、本番環境では、これが通常行われる方法です。主な理由は、実際に他の人のプロダクションコードで作業を開始すると、テストや仕様が不足し、マネージャーが開発者の首をかしげたり、任意の期限が原因で、ほとんどがその場で作成されるためです。
IMOは、エラーを巧妙に処理しないことをお勧めします。つまり、例外パスを通過したときにアプリを稼働させ続けるグローバルなcatchメソッドです。これにより、システムにサイレントエラーが発生します。このエラーについては、気付くことさえなく、TDDコードカバレッジが十分に得られない可能性があります。エラーをグローバルにキャッチすることは、一貫した稼働時間には最適ですが、システムで何が起こっているのかを知ることを妨げます。優れた統合テストコードカバレッジを実装する場合、これは問題にはなりません。
また、私はこの宝石、Contractsに出くわしました。これは書かれていて、コードカバレッジが良好であるため、コードカバレッジが不十分でランダムなリターンに関連する例外を大幅に排除するのに役立ちます。
更新:2017年3月8日
私は以前の更新で、これが包括的な質問、つまりrubyアプリケーションの例外を「リッスン」するものを実装する方法を解決することを支持します。
時々あなたは質問をし、答えは接線です、すなわちより良い方法があります。Stack Overflowは、他の人の経験を活用することです。コードゴルフはその場所を持っていますが、ほとんどの場合不要です。
Errbitは、オープンソースのAirbrake APIとRailsに基づくオープンソースの例外キャッチャーであり、かなり迅速に立ち上がることができ、ソリューションを手動でコーディングするよりもはるかに多くのオプションを提供します。したがって、それを却下することは間違ったIMOです。
例外的なRubyBookは、お金がかかるため、無関係なリソースです。私の意見では、作者があなたのツールセットの作成と付加価値に時間を費やした作品の支払いを要求することは完全に受け入れられます。本の価格が高すぎる場合は、地元の図書館にコピーを入手するように依頼してください。そういうわけで、それらは存在します。それが失敗した場合は、Avdiに連絡してください。おそらく合意に達することができます。