Событие 404 мониторинга работоспособности ASP.NET

Есть ли в HealthMonitoring встроенное событие, которое выявляет ошибки 404? Я попытался настроить все события (с помощью webBaseEvent), и я искал два дня, но не могу найти или вызвать событие для файла, который не найден.

Я мог создать свой собственный, но надеялся, что это будет встроенное событие.


person Tony Basallo    schedule 10.02.2011    source источник


Ответы (1)


Нет, это не так. Вам нужно будет создать собственное событие (из webrequesterrorevent), чтобы HM отслеживал его за вас.

Как: что-то вроде этого (по памяти) в Application_Error в global.asax -

public void Application_Error()
{
    var exception = Server.GetLastError() as HttpException;
    if (exception != null && exception.GetHttpCode() == 404)
    {
       //custom error
       new Http404Event(this, exception).Raise();
    }
}
person Tony Basallo    schedule 25.05.2011
comment
Как / где вам поймать ошибку 404, чтобы вы могли вызвать новую ошибку события нового настраиваемого типа? - person Terry; 16.12.2011
comment
@Terry, я обновил ответ примером. Здесь мое настраиваемое событие называется Http404Event, и я вызываю его в global.asax, если это ошибка 404. - person Tony Basallo; 22.12.2011