ASP.NETアプリケーションにElmah( https://code.google.com/p/elmah/ )をインストールしました。最初に例外を作成せずにメッセージをログに記録することは可能ですか?
catch(Exception e)
{
Exception ex = new Exception("ID = 1", e);
ErrorSignal.FromCurrentContext().Raise(ex);
}
だからそれは可能ですか?
ErrorSignal.FromCurrentContext().log("Hello I am testing Elmah");
はい、例外をスローせずにErrorSignalを使用できます。
ErrorSignal.FromCurrentContext().Raise(new NotSupportedException());
カスタムメッセージの場合、カスタム例外を作成できます。
var customEx = new Exception("Hello I am testing Elmah", new NotSupportedException());
ErrorSignal.FromCurrentContext().Raise(customEx);
これを試して
Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception("Your message"));
これは古い質問ですが、例外を作成したくない場合は、次を使用することもできます。
var error = new Error
{
Source = eventType.ToString(),
Type = $"Trace-{eventType}",
Message = message,
Time = DateTime.UtcNow
};
ErrorLog.GetDefault(HttpContext.Current).Log(error);
この回答 に示すように。