web-dev-qa-db-fra.com

Comment consigner une exception non gérée dans le noyau .net

Avec la fonctionnalité ELMAH dans le web api 2.0 et la journalisation centralisée et la gestion des erreurs, le runtime appelle le module de journalisation et décide s'il peut être géré puis appelle le gestionnaire sinon le enregistre simplement. Comment cette fonctionnalité peut-elle être ajoutée dans le web api core. car nous n'avons pas de fonction de journalisation centralisée non gérée intégrée.

Une façon que j'ai obtenue est d'utiliser le middleware ExceptionHandler et quand il est appelé, obtenir l'exception et la journaliser ou envoyer un e-mail .. mais que se passe-t-il si le gestionnaire n'est pas appelé .. comment enregistrer ces exceptions non gérées?

8
zubin joshi

Le middleware pourrait être un moyen d'aller oui. J'ai écrit un guide ici: Middleware de journalisation des erreurs dans ASP.NET Core .

Je regarderais probablement Microsoft.Extensions.Logging en combinaison avec un cadre de journalisation comme Serilog, NLog ou log4net.

9
ThomasArdal

Essayez ce port d'Elmah vers .NET Core.

services.AddElmah(); // in ConfigureServices 

app.UseElmah(); // in Configure, before UseMvc()
0
Andy