2 для моих веб-страниц ASP.NET Приложение .NET 4.0. Я использовал Enterpriselibrary для регистрации и отправки ошибок по электронной почте до того, как приложение было обновлено до .NET 4.0, но так как его обновление журнала EnterpriseLibrary прекратило протоколирование, поэтому я решил переключиться на Elmah.Получил несколько ошибок электронной почты Elmah
В части моего web.config файла приложения:
<add name="ErrorHandler" type="myWebApp.ErrorHandlingModule, myWebApp" preCondition="managedHandler" />
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
Как вы можете видеть, что есть уже Errorhandling модуль там (ErrorHandlingModule), который создает сообщение об ошибке («бывший» объект в следующий код). Первоначально в ErrorHandlingModule:
try
{
ExceptionPolicy.HandleException(ex, "myWebApp Error Handling");
}
catch (Exception exApplicationBlockError)
{
try
{
EventLog log = new EventLog("Application");
log.Source = "Application Error";
log.WriteEntry(exApplicationBlockError.ToString(), EventLogEntryType.Error);
}
catch
{
}
}
Поскольку я переключаюсь на Elmah:
try
{
//ExceptionPolicy.HandleException(ex, "myWebApp Error Handling");
Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
}
catch (Exception exApplicationBlockError)
{
try
{
EventLog log = new EventLog("Application");
log.Source = "Application Error";
log.WriteEntry(exApplicationBlockError.ToString(), EventLogEntryType.Error);
}
catch
{
}
}
Это работает очень хорошо, но сейчас проблема, если есть какая-либо ошибка, что вызывает 2 ошибок электронной почты: один обычай один , а другой - по умолчанию Elmah; и, конечно же, мне нужен только пользовательский.
Я еще не добавил дополнительный файл Elmah ErrorFilter в программу, но мне нужно иметь специальное исключение в моем письме.
Должен ли я добавить настраиваемый фильтр Elmah для фильтрации ВСЕХ исключений, чтобы Elmah не отправил мне сообщение об ошибке по умолчанию? (? Или любые другие предложения)
также прикрепить Elmah конфигурации в файле web.config, если это любая помощь:
<elmah>
<security allowRemoteAccess="false" />
<errorMail from="[email protected]" to="[email protected]" subject="myWebApp error" async="true" />
</elmah>
Спасибо заранее. Хорошего праздника!
Приносим извинения, но я должен был сказать, что получил два электронных письма Элма: один возник из вызова «Elmah.ErrorSignal.FromCurrentContext(). Raise (ex);» а другой - электронное сообщение об ошибке по умолчанию Elmah. Я хочу, чтобы Эльма послал эмаль, но я хочу только первого. Я не очень хорошо знаком с Элмой, я боюсь. Спасибо – WML
Что значит «пользовательский», а затем в вашем вопросе? – mason
Объект исключения "ex", который содержит пользовательские сообщения – WML