У меня есть экспресс-приложение node.js, работающее в IIS. Я обнаружил, что приложение часто падает из-за какого-то неперехваченного исключения. Поэтому я использовал process.on('uncaughtException') для перезапуска службы в случае неперехваченного исключения. Я могу получить сообщение об ошибке «ECONNRESET», но не могу понять, где это произошло на самом деле. Есть ли способ зафиксировать источник ошибки или номер строки, вызвавшей исключение?
Захват исходного кода или номера строки необработанного исключения в node.js
Ответы (1)
Используйте событие process.on('uncaughtException'…
, которое предоставляет вам объект Error, содержащий стек вызовов.
process.on('uncaughtException', function(err){
console.error(err.stack);
process.exit();
});
person
laggingreflex
schedule
05.08.2015
В моем случае объект err не имеет атрибута стека. У него есть только ошибка, код, системный вызов
- person NagaLakshmi; 05.08.2015
Это новое сообщение об ошибке { [Ошибка: чтение ECONNRESET] [стек]: [Getter/Setter], [аргументы]: не определено, [тип]: не определено, [сообщение]: 'read ECONNRESET', код: 'ECONNRESET', ошибка: 'ECONNRESET', системный вызов: 'чтение' }
- person NagaLakshmi; 06.08.2015