Node.js | Обработка асинхронных ошибок



Если ошибка не обработана, то ваше приложение находится в неопределённом состоянии. try/catch c синхронными ошибками работает замечательно, но в Node.js лучше всего писать асинхронный код, чтобы не блокировать thread.



Некоторые способы обработки асинхронных ошибок:

- Прослушиваем все сообщения об ошибках (on error).



server.on('error', function (err) {

console.error(err)

process.exit(1)})



- Прослушиваем uncaughtException в объекте process.



process.on('uncaughtException', function (err) {

console.error('uncaughtException: ', err.message)

console.error(err.stack)

process.exit(1)})



В статье вы найдете больше практик для обработки ошибок.