Asp.Net MVC Обработка ошибок и ведение журнала - PullRequest
2 голосов
/ 04 января 2011

Я пытаюсь поймать исключения и зарегистрировать их.

В настоящее время я написал метод Utility и передал ему исключение в блоке catch и, наконец, зарегистрировал приложение, используя MS Enterprise Library 4.0.

  1. Я хочу знать, есть ли другой лучший способ регистрировать ошибки.
  2. Показать сообщение об исключении в том же виде для некоторых типов исключений для остальных перейдите на страницу ошибки.

Если кто-то может мне помочь в этом!

Navish

Ответы [ 4 ]

2 голосов
/ 04 января 2011

Если вы ведете свою собственную регистрацию исключений, вы можете создать базовый класс Controller, который переопределяет метод OnException

public class BaseController : Controller
{
    protected override void OnException(ExceptionContext filterContext)
    {
        ExceptionPolicy.HandleException(filterContext.Exception, "MyPolicy");
        base.OnException(filterContext);            
    }
}
2 голосов
/ 04 января 2011

Вы можете попробовать elmah для регистрации ошибок, если это то, что вы ищете.

1 голос
/ 07 октября 2015

Эльма

Эльма может быть отличным вариантом для вас.Он прост в использовании, после установки пакет nuget готов к использованию.

Настраиваемая регистрация с log4net и т. Д.

Если вы хотите регистрировать ошибки самостоятельно, я рекомендую этот пример приложения: https://github.com/mholec/mvcexceptionhandler, где объясняется глобальноведение журнала с помощью вашего любимого средства ведения журнала (log4net, nlog и т.*.Application Insights вы можете быстро установить с помощью NuGet, и вы получите отличный обзор ошибок вашего приложения, доступности веб-сайта и сможете получить больше информации о ваших пользователях.Эта услуга бесплатна.

0 голосов
/ 04 января 2011

Я рекомендую ELMAH http://code.google.com/p/elmah/

Вы можете начать работу с ним очень быстро, используя Nuget для его настройки. http://nuget.codeplex.com/

  1. Настройка Nuget.
  2. В vstudio -> Вид -> Другие окна -> Пакет Менеджер
  3. Список-Пакет -фильтр Эльма
  4. установочный пакет elmah и все готово.

Вы можете просмотреть журнал так же, как trace.axd, перейдя на http://mysite/elmah.axd и вручную выбрасывать ошибки в elmah так:

try { 
}
catch (Exception ex)
{
   ErrorSignal.FromCurrentContext().Raise(ex);
}

надеюсь, это поможет, -fs

...