2009-10-05 5 views
4

J'ai donc reçu un journal d'exception de mon application. J'ai une pile d'appels, des paramètres de requête et toutes les autres choses habituelles dans ce journal. C'est une exception rare et les informations du journal ne contiennent pas tous les détails dont j'ai besoin pour résoudre/dupliquer le problème.Exception de vidage de noyau pour l'exception Rails

Je me demande s'il existe un moyen (gem?) D'obtenir un vidage complet de l'état de l'application Rails en cas d'exception. Inclure toutes les valeurs de variables d'instance et locales d'une méthode de contrôleur. Je suppose que le vidage de l'ensemble de l'espace objet Ruby peut prendre une minute, mais je ne me soucie pas des ressources disque et cpu dans un tel cas.

Répondre

1

Je ne pense pas, la façon dont je vais essayer de faire quelque chose comme ça est en utilisant logger.error sur les variables dont j'ai besoin de plus sur info sur.

1

Si possible, ce n'est pas une mauvaise idée de l'essayer avec ruby-debug (instructions here). Tout ce que vous devez faire est d'insérer un appel au debugger juste avant que l'erreur ne soit déclenchée ou de la coller dans une clause de secours.

0

Je ne connais aucune méthode pour obtenir l'état de l'application.

Une chose que je fais à l'occasion est l'installation netbeans qui a un débogueur graphique. Vous pouvez survoler des variables pour voir leurs valeurs, parcourir facilement la pile et avoir l'exception pour déclencher le débogueur, plutôt qu'un point d'arrêt.

Questions connexes