Node.js – Besoin d’un core dump

J’ai un addon de noeud c ++ que j’appelle et qui se connecte à une firebase database pour moi. Il utilise une bibliothèque interne c ++ pour la connexion et c’est lors d’un appel de cette bibliothèque que je reçois un échec.

before conn zsh: abort (core dumped) node test_connection.js 

Je ne peux pas révéler tous les rouages ​​de ma classe, mais pour donner un sens à la trace, voici la ligne où elle échoue:

 std::cout << "before conn" << std::endl; ConnectionPtr conn = connmgr.open(""); std::cout << "after connection" << std::endl; 

Les lignes avant d’établir la connexion et de la configurer. L’exécution du code c ++ par lui-même fonctionne et il se connecte parfaitement. Donc, la mise en place et tout est fonctionnel.

Il y a donc quelque chose dans son exécution dans node.js qui provoque son échec.

J’ai téléchargé et mis en place deux bibliothèques:

  • node-panic (fournit une fonction de débogage postmortem pour Node.js)
  • segfault-handler (Si un signal SIGSEGV est généré, le module imprimera une trace de stack native dans STDERR et dans un fichier horodaté)

Cependant, ils fonctionneront si je mets un type de bogue intentionnel dans les informations de connexion à la firebase database. Ils ne se déclenchent pas lorsque les informations sont correctes et je reçois ce message sans signification (kernel vidé).

J’ai essayé de courir

noeud –log_all test_connection.js

ce qui me donne tout ce que v8 crache mais il n’y a rien d’utile là-dedans.

 node --log_suspect test_connection.js //is giving me this: suspect-read,process,"noDeprecation" suspect-read,process,"noDeprecation" suspect-read,process,"_eval" suspect-read,process,"noDeprecation" suspect-read,global,"v8debug" suspect-read,process,"domain" suspect-read,Object,"domain" suspect-read,Array,"toJSON" suspect-read,Object,"toJSON" suspect-read,Array,"toJSON" suspect-read,Object,"O_SYMLINK" suspect-read,global,"v8debug" suspect-read,global,"v8debug" suspect-read,Object,"module_root" suspect-read,Object,"prepareStackTrace" suspect-read,Object,"path" suspect-read,Object,"path" suspect-read,Object,"path" suspect-read,global,"panicDbg" suspect-read,process,"noDeprecation" suspect-read,Object,"usingDomains" suspect-read,Object,"_events" suspect-read,Object,"_maxListeners" suspect-read,Object,"fd" suspect-read,Object,"allowHalfOpen" suspect-read,process,"_events" suspect-read,Object,"listener" suspect-read,Object,"_connecting" suspect-read,Object,"_idleTimeout" suspect-read,Object,"_connecting" suspect-read,Object,"_idleTimeout" 

Mais je ne vois rien de terriblement révélateur non plus. Comment puis-je obtenir ce kernel et voir ce qui ne va pas?