2

私はレールで構築されたアプリケーションをテストしていて、時々バグを取得します

発生すると、ActionView :: TemplateErrorが発生し、log/production.logに記録されます。

どうすればそれとf.exをキャッチできますか。アプリのどこかで発生するたびにメールで自分自身を送信しますか?

それを行うための最良の方法は何ですか?

f.ex. ある種のbefore_filterを使用してApplicationControllerで?

コードは、私が想像する

before_filter :app_error_catch

def app_error_catch
 begin
  rescue ActionView::TemplateError
  Mailer.deliver_apperror(errormessage)
 end
end

それは真実に近いですか?「エラーメッセージ」を取得するにはどうすればよいですか?

ありがとうございました

4

4 に答える 4

2

あなたは見たことがありますか、[exception_notifier][1]それともホップトードですか?exception_notifierは、バックトレースを備えた例外で電子メールを送信するプラグインです。

Hoptoadは、アプリケーションの例外に関する情報を収集するWebサイトです。

于 2009-11-10T16:43:05.597 に答える
1

これを自分で書く必要はありません-これを行うために構築されたプラグインがあります。flyfishr64で提案されているように、exception_notifierが広く使用されています。

次の(短い)スクリーンキャストに目を通し、どのソリューションが最も気に入っているかを確認してください。

于 2009-11-10T21:00:55.840 に答える
1

flyfishr64の答えに沿って、素敵なExceptionalもあります

于 2009-11-10T22:42:29.487 に答える
1

使用できるツール/サービスがいくつかあります。

サードパーティのサービス:

プラグイン:

カスタム

rescue_fromメソッドとrescue_action_in_publicメソッドを使用して、カスタム機能を簡単に統合できます。

于 2009-11-11T11:26:56.353 に答える