2010-05-14 4 views
0

Est-il possible d'utiliser le System.web.Management ASP.NET pour consigner des événements tels que les connexions utilisateur, les modifications de mot de passe et l'accès à certaines ressources? Devrait system.Web.Management être utilisé pour la journalisation des erreurs et la surveillance de la santé à la place?Enregistrement des événements ASP.NET dans la base de données

Je veux enregistrer des événements sans réinventer le tout. Je sais qu'ELMAH est utilisé pour des erreurs; Peut-il être utilisé pour la journalisation des événements aussi?

Répondre

1

De l'article ELMAH - Error Logging Modules And Handlers sur les défuntes DoNetSlackers:

signalisation d'erreur est exposée via la classe ErrorSignal, qui fournit une seule méthode surchargée appelé Raise. En termes simples, les exceptions levées via la classe ErrorSignal ne sont pas levées. Elles ne sont donc pas envoyées en bulles, mais sont envoyées uniquement à ELMAH, ainsi qu'à tous ceux qui souscrivent à l'événement Raise de la classe ErrorSignal. L'extrait de code ci-dessous montre comment obtenir une instance de la classe ErrorSignal, qui est unique par application et peut être récupérée simplement avec la méthode statique FromCurrentContext, puis l'utilise pour signaler une exception.

ErrorSignal.FromCurrentContext().Raise(new NotSupportedException()); 

La différence entre signalisation et lancer une exception est que dans le premier cas, personne ne saura jamais l'erreur, sauf ELMAH.

Lectures complémentaires:

Questions connexes