2013-04-03 3 views
6

90% der Zeit bekomme ich immer eine Stack-Trace. Aber manchmal hört der Prozess auf und ich habe keine Ahnung warum. Wie auch immer, um den Stack-Trace immer zu drucken? Oder finden Sie weitere Informationen in dmesg oder etwas?Warum stirbt ein node.js-Prozess plötzlich auf OSX ohne Erklärung in einer Protokolldatei?

+0

Klingt wie Node selbst abstürzt. Es hängt davon ab, welche Plattform Sie verwenden (Windows, Mac, Linux), wie Sie das debuggen können. – robertklep

+0

auf osx und es passiert mehr und mehr. Der Knoten tuckert einfach weiter und dann boomt der Prozess ohne Erklärung. irgendeine Idee, wie man mehr Informationen findet? –

+0

Überprüfen Sie '~/Library/Logs/DiagnosticReports', um festzustellen, ob es Absturzprotokolle für Ihre Node-Prozesse gibt. Die Protokolle könnten einen Hinweis geben, warum Node abstürzt. – robertklep

Antwort

7

in Ordnung endlich einen Weg gefunden, den Fehler zu finden:

Knoten --trace app.js

es jeden Funktionsaufruf gibt und ich kann das Stacktrace rechts sehen, bevor es mit verlässt:

startup.processKillAndExit.process.exit

Und meine Stacktrace Punkte:

redis.get 'bar', (err, data) -> 
    JSON.parse(value).foo 

JSON.parse (Wert) kommt null zurück, so .foo wirft:

[Typeerror: Eigenschaft 'foo' von null lesen Can not]

und aus irgendeinem Grunde die Typeerror in einem redis Rückruf wird geschluckt und Ursachen Knoten zum Beenden, ohne den Fehler zu drucken.

+0

Ahah .. eine Möglichkeit zu debuggen, danke .. Ich habe ein ähnliches Problem scheint es – Lee

Verwandte Themen