2010-08-22 4 views
6

Dans mon projet ASP.NET 4.0 MVC s'exécutant dans IIS 7, j'ai configuré et configuré ELMAH pour enregistrer les erreurs sur mon site. Cependant, je suis incapable d'obtenir des rapports sur les erreurs avec le code 500.Impossible de consigner les erreurs de code 500 dans ELMAH

J'ai mis en place un contrôleur simple qui crée une division par zéro, mais ELMAH n'enregistre pas. Je peux obtenir ELMAH pour enregistrer d'autres messages très bien et je ne filtre aucune exception dans ErrorLog_Filtering.

En outre, pour afficher les pages personnalisées j'ai mis à jour la section httpErrors du web.config comme suit:

<customErrors mode="RemoteOnly" defaultRedirect="~/error/GenericError"> 
    <error statusCode="403" redirect="~/error/AccessDenied" /> 
    <error statusCode="404" redirect="~/error/NotFound" /> 
    <error statusCode="500" redirect="~/error/Offline" /> 
    <error statusCode="501" redirect="~/error/Offline" /> 
    <error statusCode="503" redirect="~/error/Offline" /> 
</customErrors> 

et

<system.webServer> 
    <httpErrors errorMode="DetailedLocalOnly" > 
     <error statusCode="403" prefixLanguageFilePath="" path="/error/AccessDenied" responseMode="ExecuteURL" /> 
     <error statusCode="404" prefixLanguageFilePath="" path="/error/NotFound" responseMode="ExecuteURL" /> 
     <error statusCode="500" prefixLanguageFilePath="" path="/error/GenericError" responseMode="ExecuteURL" /> 
     <error statusCode="501" prefixLanguageFilePath="" path="/error/GenericError" responseMode="ExecuteURL" /> 
     <error statusCode="503" prefixLanguageFilePath="" path="/error/Offline" responseMode="ExecuteURL" /> 

Enfin, lors de l'examen des fichiers journaux d'application, les messages d'erreur du code 500 ne s'affichent pas ici.

Y at-il une configuration qui me manque ou suis-je en quelque sorte accidentellement piéger l'erreur et ne pas la laisser se propager?

Répondre

3

Vous devez supprimer la ligne en ajoutant le filtre HandleErrorAttribute dans RegisterGlobalFilters() dans FilterConfig.cs. Plus de détails au this question.

Questions connexes