Sails – catch global adapter errors that crash the server-open source projects balderdashy/sails

Paul Scheltema

from the sails docs: http://sailsjs.org/#!documentation/config.500

thats the error handling sails exposes from within the config

if your error passes that, you can hook in there, otherwise you can hook in node’s process

process.on('uncaughtException', function (err) {
  if (err.toString() === 'Error spawning mySQL connection') {
    //rende some error page
  }
})

if the exception thrown is async the only way to catch it is trough process

do note however, that these kinds of errors are almost always unrecoverable, so crashing (and restarting) is the best approach

most modules loaded use local variables and expose only a subset of their internals trough module.exports, unloading a module and restarting its local code can be done, but you would need to unload all dependant modules and all modules holding references to it also. Thats why the normal approach is to let it crash