Frage

Ich wollte ELMAH für unsere ultimative automatische Fehlerprotokollierung verwenden, aber vor kurzem erkannt, dass ASP.NET Health Monitoring hat eine gleiche Arbeit (vielleicht). Jetzt will ich wissen, (bitte), wenn sie Alternativen voneinander sind wie log4net und EntLib?

War es hilfreich?

Lösung

ELMAH ist zur Fehlerüberwachung, rein und einfach. Leicht zu sehen, die Fehler über eine Anzeige, RSS-Feeds etc. Health Monitoring mehr einer vollständigen Instrumentierung Lösung ist.

Möchten Sie die einfache Antwort?

ELMAH ist eine sehr schnelle steckbare Lösung für Fehlerüberwachung es hat eine sehr spezifische Aufgabe (das tut schön ist). Health Monitoring ist mehr von der Schrotflinte See / alles Ansatz Monitor und geht es um viel mehr Einstellarbeiten. Ach ja, muss eine Änderung vornehmen? Es ist Open Source, packen es, ändern Sie es, wie Sie wollen.

Andere Tipps

Ich habe Health Monitoring nicht in ASP.NET verwendet, aber ich habe verwendet ELMAH und es ist einfach erstaunlich. Es dauert buchstäblich nur 2 Minuten zu installieren und dann können Sie alle Fehler sehen. Darüber hinaus gibt es so viele Möglichkeiten, um die Fehler anzuzeigen. Probieren Sie ELMAH Sie werden es lieben.

ASP.NET Health Monitoring wird automatisch Nachrichten für Ereignisse wie Anwendungsdomäne Starten und Herunterfahren und Herzschlag und viele andere Informationen über die Web-Anwendung generieren. Logging Frameworks nicht unterstützen solche Funktionen, aber Sie können die Routen die Health Monitoring System-Ereignisse zu Ihrem Logging-Framework der Wahl. Einige Rahmen unterstützen auch diese aus der Box, wie CuttingEdge.Logging . Hier ist ein Konfigurationsbeispiel eines CuttingEdge.Logging , wo die Gesundheit Ereignisse an ein Logging-Anbieter weitergeleitet werden:

<?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>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top