2009-11-05 6 views
1

Je suis à la recherche d'une solution qui me donne un concentrateur central à partir duquel visualiser et gérer les erreurs qui se produisent dans mon système, quel que soit le niveau dans lequel elles se produisent. J'ai déjà des logs (log4net), des compteurs de perf, etc. Mais je me demande quels outils je peux utiliser pour rassembler ces informations dans un endroit central. Je suis intéressé par les solutions commerciales et open source.Solutions unifiées de gestion des erreurs

Idéalement, je veux marcher dans le travail le matin et regarder un rapport qui me dit:

  • quelles erreurs se sont produites
  • quel environnement l'erreur est survenue dans
  • ce niveau de la l'environnement de l'erreur dans (web, serveur d'application, le client)
  • les détails de l'erreur (message, trace de pile, etc.)

Si c'est important, j'utilise .NET 3.5 côté serveur, côté client Flash/Flex. Mon intention est d'exposer un service que les clients peuvent invoquer pour enregistrer les erreurs (en supposant que l'erreur n'exclut pas la connectivité réseau, bien sûr).

Toutes les idées seraient appréciées.

Merci,
Kent

Répondre

2

Jetez un oeil à Google Elmah. Je l'ai utilisé pour plusieurs applications et je l'ai trouvé très utile.

+0

Merci, cela semble être une bonne option. Pour être honnête, je pensais que c'était ASP.NET seulement, mais il semble qu'ils ont ajouté une fonctionnalité appelée signalisation d'erreur qui me permet de l'utiliser à partir d'environnements non ASP.NET. –

0

Nous utilisons un appender Log4Net pour ouvrir une session (via les réseaux UDP) à syslod central (port de fenêtres). Cela fonctionnerait pour le côté .net des choses, mais je ne sais pas grand-chose sur Flash/Flex, donc je ne peux rien vous dire à ce propos.

0

Vous pouvez créer une interface de service Web pour la collecte d'erreurs que tous les environnements et tous les niveaux pourraient pointer. Être un service Web devrait vous permettre d'interagir gracieusement avec différentes technologies (c'est-à-dire vos applications Flash/Flex). En tant qu'application Web contenant des services Web, vous pouvez également lui fournir d'autres interfaces qui ne sont pas explicitement des contrats de service Web, comme une interface RESTful qui pourrait simplifier l'implémentation de la technologie non -NET. Vous pouvez ensuite créer des rapports présentés par la même application Web pour un système simple et unique de collecte et de livraison/reporting. Bien sûr, ce genre de système de collecte centralisé serait sujet à des problèmes de connectivité, mais je pense que ce genre de problèmes sortent du cadre de ce qu'un tel système essaie de réaliser. Ils sont habituellement un signe d'un problème beaucoup plus important et des problèmes qui sont soulevés rapidement par les gens (par exemple, quand ils ne peuvent pas mettre à jour leur statut Facebook parce que les intertubes sont en panne ;-)

Je ne sais pas quel genre de Des systèmes comme celui-ci sont disponibles dans le commerce. Je construis une telle mise en œuvre pour un employeur précédent il y a des années et ce n'était pas terriblement difficile ou complexe.

+0

Oui, je sais que je pourrais le construire, mais j'essaie d'écrire moins de code, pas plus;) –