Например к главному файлу сервера подключаю несколько своих модулей. Эти модули инкапсулируют некоторый набор функций. Также к тем модулям подключаются другие собственные модули. И вот например в файлах третьего уровня происходит ошибка. Как ее отловить? В файле в котором она произошла? Или она вернется в место вызова функции в основном файле сервера и ее можно будет обработать специальным мидлваром?
//server.js
var api = require('first');
api.run() <-- здесь
//first.js
var second = require('second');
module.exports = {
run: function() { second.solve() }
}
//second.js
module.exports = {
solve: function(){ return 1/0; } <-- или здесь
}
И если, конечно, используются калбэки, то как в этом случае?