Pergunta

Eu ia usar o Elmah para o nosso melhor registro automático de erros, mas recentemente percebi que o ASP.NET Health Monitoring faz o mesmo trabalho (talvez). Agora eu quero saber (por favor) se forem alternativas um do outro, como log4net e Entlib?

Foi útil?

Solução

Elmah é para monitoramento de erros, puro e simples. Fácil de ver os erros por meio de uma leitura, feeds RSS, etc. O monitoramento da saúde é mais uma solução completa de instrumentação.

Quer a resposta fácil?

Elmah é uma solução muito rápida para monitoramento de erros Tem uma tarefa muito específica (que é de maneira bonita). O monitoramento da saúde é mais da espingarda, ver/monitorar tudo se aproximar e envolve muito mais trabalho de configuração. Ah, sim, precisa fazer uma mudança? É de código aberto, pegue -o, mude como quiser.

Outras dicas

Não usei o monitoramento da saúde no ASP.NET, mas usei Elmah e é simplesmente incrível. Literalmente leva apenas 2 minutos para configurar e você pode ver todos os erros. Há também tantas opções para exibir os erros. Experimente Elmah, você vai adorar.

O ASP.NET Health Monitoring gerará automaticamente mensagens para eventos como inicialização do domínio do aplicativo e desligamento e batimentos cardíacos e muitas outras informações sobre o aplicativo da Web. As estruturas de registro não suportam esses recursos, mas você pode rotear os eventos do sistema de monitoramento de saúde para a sua estrutura de log de escolha. Algumas estruturas até suportam isso fora da caixa, como CuttingEdge.gging. Aqui está um exemplo de configuração de um CuttingEdge.gging Onde os eventos de saúde são encaminhados para um provedor de madeira:

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="logging"
      type="CuttingEdge.Logging.LoggingSection, CuttingEdge.Logging" />
  </configSections>
  <system.web>
    <healthMonitoring heartbeatInterval="0" enabled="true">
      <providers>
        <!-- We're configuring the web event provider here. -->
        <add name="LoggingWebEventProvider"
  type="CuttingEdge.Logging.Web.LoggingWebEventProvider, CuttingEdge.Logging"
          loggingProvider="DebugLogger" />
      </providers>
      <rules>
        <add name="Custom Event Provider"
           eventName="All Events"
           provider="LoggingWebEventProvider"
           profile="Default" />
      </rules>
    </healthMonitoring>
  </system.web>
  <logging defaultProvider="DebugLogger">
    <providers>
      <!-- Configure your favorite provider here. -->
      <add name="DebugLogger"
        type="CuttingEdge.Logging.DebugLoggingProvider, CuttingEdge.Logging"
        description="Debug logging provider"
        threshold="Debug" />
    </providers>
  </logging>
</configuration>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top