Miałem zamiar użyć ELMAH do naszego ostatecznego automatycznego rejestrowania błędów, ale ostatnio zdałem sobie sprawę, że monitorowanie zdrowia ASP.NET wykonuje tę samą pracę (być może). Teraz chcę wiedzieć (proszę) czy są one alternatywami tak jak log4net i entlib?Czy programy monitorowania kondycji ASP.NET i alternatywy ELMAH są ze sobą nawzajem?
Odpowiedz
ELMAH służy do monitorowania błędów, czysty i prosty. Łatwe do odczytania błędy poprzez odczyt, kanały RSS itp. Monitorowanie zdrowia jest bardziej pełnym rozwiązaniem oprzyrządowania.
Chcesz łatwą odpowiedź?
ELMAH jest bardzo szybkie rozwiązanie dla wtykowy błędu monitoringu ma bardzo konkretne zadanie (czyli robi pięknie). Monitorowanie zdrowia to bardziej strzelba, która monitoruje wszystko i wymaga znacznie więcej pracy instalacyjnej. O tak, musisz dokonać zmiany? To open source, chwyć go, zmień, jak chcesz.
Nie korzystałem z Monitorowania kondycji w ASP.NET, ale użyłem ELMAH i jest po prostu niesamowity. Konfiguracja zajmuje dosłownie zaledwie 2 minuty, a następnie widać wszystkie błędy. Istnieje również wiele opcji wyświetlania błędów. Wypróbuj ELMAH, pokochasz to.
Monitorowanie kondycji ASP.NET automatycznie generuje komunikaty dla zdarzeń takich jak uruchamianie i wyłączanie domen aplikacji oraz bicie serca i wiele innych informacji na temat aplikacji internetowej. Ramy rejestrowania nie obsługują takich funkcji, ale można kierować zdarzenia systemowe monitorowania kondycji do wybranej struktury logowania. Niektóre frameworki obsługują to nawet po wyjęciu z pudełka, na przykład CuttingEdge.Logging. Oto przykład konfiguracji urządzenia CuttingEdge.Logging, w którym zdarzenia dotyczące kondycji są przekazywane do dostawcy rejestrowania:
<?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>
@azamsharp: dzięki za odpowiedź. Ale monitorowanie kondycji ASP.NET wygląda tak samo: http://www.4guysfromrolla.com/articles/031407-1.aspx –