Включить полный URL в Элма - PullRequest
1 голос
/ 23 марта 2019

В настоящее время я получаю сообщение об ошибке от ELMAH, похожее на следующий скриншот, и это хорошо.

enter image description here

Но единственное, чего не хватает, это полный URL-адрес, похожий на то, что вы получаете от Request.Url.ToString() (то есть, включая домен, путь и запрос).Я хотел бы знать, есть ли простой способ включить полный URL-адрес запроса, который вызвал ошибку где-то в заголовке письма или в начале тела.

В настоящее время я должен вручную собрать URL-адрес из разных заголовков запроса (домен, путь и запрос), чтобы узнать сайт инцидента.

Я знаю о различных хуках global.asax, которые предоставляет elmah. Если что-то можно сделать в любом из этих событий, я хотел бы знать, откуда я могу получить экземпляр HttpContext или что-то в этом роде.получить дополнительную информацию и добавить в тело письма.Но если есть какая-либо существующая опция встроенной конфигурации для включения этой информации, я думаю, это было бы лучшим выбором.

1 Ответ

1 голос
/ 23 марта 2019

На самом деле это было просто.Это я игнорировал очевидное.Просто добавьте этот обработчик в Global.asax и все готово.

protected void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e)
{
   e.Mail.Body = Context.Request.Url.ToString()+ "\r\n" + e.Mail.Body;
}
...