Dov’è il file di log di nodejs?

Non riesco a trovare un posto dove è archiviato il file di log di nodejs. Perché nel mio server nodo ho “Errore di segmentazione”, voglio guardare il file di log per ulteriori informazioni …

Non esiste un file di registro. Ogni “app” node.js è un’ quadro separata. Di default registra gli errori su STDERR e viene emesso su STDOUT. Puoi cambiarlo quando lo esegui dalla tua shell per accedere ad un file.

node my_app.js > my_app_log.log 2> my_app_err.log 

In alternativa (consigliato), è ansible aggiungere la registrazione all’interno dell’applicazione manualmente o con una delle tante librerie di log:

  • Winston
  • log4js

per sempre potrebbe interessarti. Eseguirà il tuo file .js 24/7 con le opzioni di registrazione. Ecco due snippet dal testo della guida:

[Processo in esecuzione prolungata] Il processo per sempre continuerà a generare messaggi di registro sulla console. ex. per sempre -o out.log -e err.log my-script.js

e

[Demone] Il processo per sempre verrà eseguito come un demone che farà avviare il processo di destinazione in background. Questo è estremamente utile per l’avvio remoto di script node.js semplici senza usare nohup. Si consiglia di avviare start con -o -l, & -e. ex. per sempre start -l forever.log -o out.log -e err.log my-daemon.js stop per sempre my-daemon.js

Se si utilizza la finestra mobile nel proprio dev, è ansible farlo in un’altra shell: finestra mobile attach running_node_app_container_name

Questo ti mostrerà STDOUT e STDERR.