Mon application ASP.NET comporte une section healthMonitoring web.config configurée pour m'envoyer un e-mail en cas d'erreur. Périodiquement, j'obtiens des erreurs que je voudrais ignorer, telles que Invalid Viewstate
ou ScriptResource.axd
erreurs. Y at-il un moyen de configurer web.config pour ne pas m'envoyer un e-mail lorsque le message d'exception correspond à une certaine chaîne de recherche ou regex? Je crois que cela est similaire à Ignore HealthMonitoring event by EventDetailCodeConfigurer ASP.NET Health Monitoring pour ignorer des erreurs spécifiques?
Répondre
Vous pouvez créer un fournisseur d'événements personnalisé en héritant de la classe de fournisseur de base System.Web.Management.WebEventProvider. De cette façon, vous pouvez gérer les erreurs que vous voulez en les envoyant par courriel et en ignorant les autres. Commander "How to Write a Custom Web Event Provider for ASP.NET 2.0" et "Creating Custom Event Providers" pour plus d'informations.
soulevez-vous les événements vous-même, ou sont-ils élevés en arrière-plan. Je regarderais le EventCode pour l'événement et verrais si vous pouvez l'utiliser pour faire la distinction entre ce type d'événement et un autre? Si vous élevez l'événement vous-même, comme dans une déclaration catch, vous pouvez facilement le séparer. Mais si vous utilisez la couverture globale pour attraper toutes les erreurs, il n'y a aucun moyen. La seule façon est d'utiliser le code d'événement dans eventMapping, puis d'ajouter des règles pour attraper cet événement et l'envoyer à un fournisseur.