[解決済み】ELMAHを使用して手動でエラーをログに記録する方法
2022-04-03 08:04:25
質問
ELMAHを使って以下のようなことは可能でしょうか?
logger.Log(" something");
こんな感じでやってます。
try
{
// Code that might throw an exception
}
catch(Exception ex)
{
// I need to log error here...
}
この例外は処理されたため、ELMAHによって自動的にログに記録されることはありません。
解決方法は?
ELMAH 1.0から動作している、直接ログを書き込む方法です。
try
{
some code
}
catch(Exception ex)
{
Elmah.ErrorLog.GetDefault(HttpContext.Current).Log(new Elmah.Error(ex));
}
ELMAH 1.2 では、より柔軟な API が導入されました。
try
{
some code
}
catch(Exception ex)
{
Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
}
2つのソリューションには違いがあります。
-
Raise
メソッドは、ELMAHのフィルタリングルールを例外に適用します。Log
メソッドは使用しません。 -
Raise
はサブスクリプションベースで、1つの例外を複数のロガーに記録することができます。
関連
-
[解決済み】コレクションが変更され、列挙操作が実行されないことがある。
-
[解決済み] enumを列挙するには
-
[解決済み] C#で文字列のエンコーディングを手動で指定せずに、一貫性のあるバイト表現を得るには?
-
[解決済み] C#がforeachで変数を再利用するのは理由があるのか?
-
[解決済み] ファイルが使用中であるかどうかを確認する方法はありますか?
-
[解決済み] ELMAHをASP.NET MVCの[HandleError]属性で動作させる方法は?
-
[解決済み】大文字・小文字を区別しない「Contains(string)
-
[解決済み】C#で例外をキャッチして再スローする理由とは?
-
[解決済み】例外の説明と例外を発生させたスタックトレースを文字列で取得する。
-
[解決済み】 `throw new Error` と `throw someObject` の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み】WebForms UnobtrusiveValidationModeは、jqueryのScriptResourceMappingを必要とする
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み】プロジェクトビルド時のエラー。エディタでスクリプトにコンパイルエラーがあるため、Playerのビルドにエラーが発生する
-
[解決済み】バックスラッシュを含むパス文字列のエスケープシーケンスが認識されない件
-
[解決済み】リソースの読み込みに失敗した:ステータス500(内部サーバーエラー)のサーバーの応答)
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】ランダムなブーリアンを生成する最速の方法
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】IntPtrとは一体何なのか?