J'ai travaillé sur un projet, un serveur de sockets, en utilisant NodeJS, avec beaucoup d'aide de personnes sur ce site, mon projet est presque terminé, mais j'ai une erreur générée sur mon code une fois dans un certain temps, et je ne peux pas sembler pointer l'erreur vers le bas, puisque le journal des erreurs ne donne pas le nom d'une variable, fonction ou quoi que ce soit lié au problème, il jette juste ce message:Erreur d'interception dans NodeJs
Exception: TypeError: Cannot read property '0' of undefined
Mon problème vient aussi du fait qu'il n'y a pas beaucoup de mouvement dans mon code sauf si quelqu'un y est connecté, j'ai un intervalle qui s'exécute toutes les 4 minutes et envoie une requête de mise à jour à ma base de données. restez en vie (nous ne voulons pas changer le service mySQL r wait_timeout puisque nous utilisons le même DB pour les autres projets et produits qui en ont besoin), et une sorte de minuteur global également avec setInterval qui exécute les actions qui lui sont envoyées depuis les salles de jeux créées dynamiquement, mais là encore, l'erreur apparaît jusqu'à même s'il suffit de redémarrer le service, et le laisser intact, il viendra toutes les 10-20 minutes ou alors ... J'ai été jusqu'à présent en utilisant ce code simple pour détecter les erreurs:
process.on('uncaughtException', function(err){
_log('Exception: ' + err+"<br>");
});
mais cela ne donne pas les informations dont j'ai besoin pour savoir comment déboguer et trouver le problème. Ma question est la suivante: y a-t-il une autre façon de gérer ces erreurs d'une manière qui renverra un peu plus d'information sur la nature du problème?
Merci!
duplication possible de [Node.js n'affiche pas le message d'erreur complet sur uncaughtException, est-ce possible?] (Http://stackoverflow.com/questions/9181027/node-js-doesnt-display-entire-error- message-on-uncaughtexception-is-it-possibl) – pstenstrm
Notez que les promesses sont sans danger et que les bibliothèques de promesses comme Bluebird vous donnent des traces de pile complètes. –