サーバーの IP をリッスンするために、ポート 1338 で HTTP サーバーをセットアップしています。Node を最初に起動したときはこれで問題なく動作しますが、何らかの理由で、サーバーがランダムにリッスンを停止するという問題に遭遇しました。キャッチされていない例外を含め、Forever がアプリから収集しているログを確認しました。起動後に発生したエラーのログには何も表示されません。
私の質問は 2 つあります。サーバーがランダムな間隔でリッスンを停止する原因は何ですか? また、リスナーが停止する原因となっているエラーをログアウトできるようにするには、ノードでどのチェックを実行する必要がありますか?
以下は、私の HTTP サーバーのコードです。
http.createServer(function (req, res) {
var pathname = url.parse(req.url).pathname;
var query = url.parse(req.url, true).query;
var check;
var responseData = '';
if(pathname === '/healthcheck/ticket'){
check = new Date().getTime();
check = check - tickets.lastAction;
if(check < 30000){
responseData = "page ok";
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(responseData);
}
else{
check = check/1000;
responseData = 'Last action taken by the Ticket Generator was ' + check + ' seconds ago';
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(responseData);
}
}
else{
responseData = 'URL NOT FOUND!';
res.writeHead(404, {'Content-Type': 'text/plain'});
res.end(responseData);
}
}).listen(config.eng.port, config.eng.host);