0
votes

Comment savoir quelle exception s'est-elle produite lorsque mon application s'est écrasée?

Je travaille sur un module Nodejs et j'ai le problème suivant:

Lorsque une erreur survient dans la chaîne de promesse, je peux gérer l'exception, le loger à mon outil de journalisation centralisé et tout va bien.

Cependant, de temps en temps, je vois des erreurs qui éloignent l'application, et il redémarre me laissant sans rien faire. Seulement lorsque je regarde dans les journaux dans la machine que je peux comprendre ce qui se passe. Le dernier était celui-ci:

TypeError: Conversion de la structure circulaire à JSON

Comment puis-je enregistrer l'erreur qui bloque l'application à un outil de journal centralisé. Je comprends que si l'application est morte, il ne peut rien faire. Mais il doit y avoir une stratégie pour faire cela


0 commentaires

3 Réponses :


1
votes

La meilleure façon de gérer l'exception consiste à créer une fonction d'assistance dans laquelle vous devez configurer avec l'outil de journalisation des erreurs, comme (rouleau dans Heroku), et dans toutes les fonctions / itinéraires, vous devez inclure votre code source dans le bloc de try-catch. Écrivez votre code dans la section Essayer et utilisez la fonction d'assistance et passez l'exception au fichier d'aide. Cela ressemblera à ce xxx

et dans le fichier principal xxx


2 commentaires

Hmm. Je vois. Cela fait beaucoup de sens, cela prendra-t-il aussi des erreurs qui plantent l'application comme dans mon poste d'origine?


Vous pouvez gérer une telle exception via APP.Utilise (InternalserverError ()); est déjà donné ci-dessus.



0
votes

Place à l'intérieur Essayez / Catch Block toute expression susceptible de générer une erreur. Gérer l'erreur là-bas ou transmettre avec de nouvelles informations jointes. XXX


2 commentaires

Tous mes points finaux sont à l'intérieur d'une structure de chaîne de promesse. Devrait-il avoir un essai / attraper intégré?


Il n'y a aucune raison pour que le nœud ne puisse simplement quitter si toutes vos déclarations sont bien gérées.