0

エラー追跡サービス Raygun を Orchard に追加しようとしていますが、アプリケーションによってスローされた例外をインターセプトする方法がわかりません。

デフォルトの ASP.NET MVC では、通常は で行われますApplication_Error()Global.asax.cs、Orchard CMS で同様に行う方法はありますか?

私が見つけた唯一の方法は、明示的にコードを custom に入れることですErrorPage.cshtml

4

1 に答える 1

1

推奨される方法は、Orchard.Exceptions.IExceptionPolicyインターフェイスのカスタム実装を提供することです。DefaultExceptionPolicyシナリオでは、既定の実装をフォールバックとして使用できます。

たとえば、カスタム Orchard モジュールに次のクラスを実装できます。

[OrchardSuppressDependency("Orchard.Exceptions.DefaultExceptionPolicy")] 
public class IssueTrackerExceptionPolicy : DefaultExceptionPolicy, IExceptionPolicy
{
    bool IExceptionPolicy.HandleException(object sender, Exception exception)
    {
        // TODO: Log exception here.

        return base.HandleException(sender, exception);
    }
}
于 2015-06-09T10:05:47.020 に答える