2010-02-21 24 views

Répondre

7

ELMAH est pour la surveillance des erreurs, pure et simple. Facile à voir les erreurs via une lecture, les flux RSS, etc. La surveillance de la santé est plus une solution d'instrumentation complète.

Vous voulez la réponse facile?

ELMAH est une solution très rapide pour connectable erreur de surveillance il a une tâche très spécifique (qui est magnifiquement fait). Surveillance de la santé est plus de l'approche de voir/surveiller tout shotgun et implique beaucoup plus de travail d'installation. Oh oui, besoin de faire un changement? C'est open source, attrape-le, change-le comme tu veux.

1

Je n'ai pas utilisé Health Monitoring dans ASP.NET mais j'ai utilisé ELMAH et c'est tout simplement incroyable. Il ne prend littéralement que 2 minutes à configurer et vous pouvez voir toutes les erreurs. Il y a aussi tellement d'options pour afficher les erreurs. Essayez ELMAH que vous allez adorer.

+0

@azamsharp: Merci pour la réponse. Mais ASP.NET Health Monitoring a la même apparence: http://www.4guysfromrolla.com/articles/031407-1.aspx –

1

ASP.NET Health Monitoring génère automatiquement des messages pour des événements tels que le démarrage et l'arrêt du domaine d'application et les pulsations, ainsi que de nombreuses autres informations sur l'application Web. Les structures de journalisation ne prennent pas en charge de telles fonctionnalités, mais vous pouvez router les événements du système de surveillance de l'état vers votre cadre de journalisation préféré. Certains cadres prennent même en charge ce hors de la boîte, tels que CuttingEdge.Logging. Voici un exemple de configuration d'un CuttingEdge.Logging où les événements de santé sont transmis à un fournisseur d'enregistrement:

<?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>