単一の DB ログを持つ複数のアプリケーションに単一の Elmah.axd を使用する 質問する

単一の DB ログを持つ複数のアプリケーションに単一の Elmah.axd を使用する 質問する

複数のアプリケーションからのエラーを保存するための単一の SQL ログがあります。各アプリケーションの elmah.axd ページを無効にし、共通の SQL ログにエラーを報告するすべてのアプリケーションからのエラーを具体的に表示する新しいアプリケーションを用意したいと考えています。

現時点では、すべてのエラーのアプリケーションが共通の SQL ログを使用しているにもかかわらず、現在のアプリケーションからのエラーのみが表示されます。これを以前に実行した人はいますか? elmah コード内で何を調整する必要があるでしょうか?

ベストアンサー1

「SQL ログ」とは、MSSQL Server のことを指していると思います。そうであれば、おそらく、目的を達成する最も簡単な方法は、エラーを保持する SQL Server データベースで作成されたストアド プロシージャを編集することです。

エラーリストを取得するために、ELMAH dllはELMAH_GetErrorsXMLアプリケーション名をパラメータとしてprocに渡すと、procは戻り値をWHERE [Application] = @Application句。

プロシージャから WHERE 句を削除するだけでELMAH_GetErrorsXML、アプリケーションに関係なくすべてのエラーが返されるはずです。

単一のエラーレコードを正しく取得するには、ELMAH_GetErrorXMLproc はアプリケーション別にもフィルタリングします。

もちろん、これはこの特定のデータベースからエラーを取得するすべてのアプリケーションに影響しますが、あなたの場合は 1 つしかないと思うので、これで問題ないはずです。

警告:試していないので、結果は保証できません...

おすすめ記事