2014-01-24 105 views
0

我正在使用node server.js &命令啓動Linux機器上的Node.js服務器。Node.js服務器在登錄到控制檯時正在停止

但是當有東西登錄到控制檯時,日誌顯示並且服務器停止。

這個問題不漲,當我刪除所有console.log()陳述

但是,有什麼辦法防止這種情況,無需拆卸console.log()報表?

+2

顯示我們server.js的內容。 – akluth

回答

-1

聽起來或許你有一個未捕獲的異常被拋出哪個節點然後停止。你能趕上全球的那些異常......

process.on('uncaughtException', function (error) { 
    console.log(error.stack); 
}); 

或者,你可以考慮使用類似的主管(https://github.com/isaacs/node-supervisor)或永久(https://github.com/nodejitsu/forever),讓您的節點的應用不斷磨合......

+0

你的第一個例子很危險,它應該在''uncaughtException''處理程序中'process.exit();',否則可能導致應用程序中出現未知狀態。只有當您知道*正確*發生了什麼,圍繞您可以管理的最小代碼塊時,纔會嘗試/捕獲/恢復異常。如果您想要更多控制權,請嘗試使用域。 – Jason

+0

如果部署在生產環境中,則存在危險。他顯然只是學習節點,隨着時間的推移會學到東西...... – Jason

+0

夠公平的,儘管我認爲至少種植的種子比你在這裏看到的還要多。 – Jason

相關問題