2016-10-21 3 views
0

Gibt es eine Möglichkeit mit node.js ein Ereignis bei Beendigung eines Prozesses auszuführen? Wenn zum Beispiel ein express Server in der Konsole läuft und ich CTRL+C hake, sollte er irgendwo ein Protokoll schreiben.Ereignis bei Prozessbeendigung mit node.js ausführen

Ich versuchte es mit process.on('exit', ..., was nicht funktionierte. Ich denke, das wird nur auf process.exit() ausgeführt. Also suche ich nach einem allgemeinen Weg, um eine Terminierung oder kill eines Prozesses zu erkennen.

Antwort

1

können Sie fangen Ctrl + C SIGINT mit

process.on('SIGINT',() => { 
    console.log('Log that Ctrl + C has been pressed'); 
}) 

jedoch dies die Standardaktion verhindert, so dass Sie auch process.exit() rufen müssen, nachdem Ihre Nachricht

Diese Anmeldung wird nur Strg + C fangen obwohl es wird nicht Fang Dinge wie End Task in Windows usw.

Sie können auch hören auf SIGTERM (Terminierung auf Linux), SIGHUP (Konsole auf Windows schließen) und SIGBREAK (Ctrl+Break unter Windows)

+0

Großartig. Genau das habe ich gesucht. Vielen Dank! – eisbehr