made request error logging more DRY

This commit is contained in:
tigerbot 2017-09-12 11:55:47 -06:00
parent da68c102cd
commit 08cb6c2d08
1 changed files with 8 additions and 13 deletions

View File

@ -1,20 +1,21 @@
'use strict'; 'use strict';
module.exports.rejectableRequest = function rejectableRequest(req, res, promise, msg) { function rejectableRequest(req, res, promise, msg) {
return promise.error(function (err) { return promise.error(function (err) {
res.error(err); res.error(err);
}).catch(function (err) { }).catch(function (err) {
console.error('[ERROR] \'' + msg + '\''); console.error('[ERROR] \'' + msg + '\'');
console.error(err.message); // The stack contains the message as well, so no need to log the message when we log the stack
console.error(err.stack); console.error(err.stack || err.message || JSON.stringify(err));
res.error(err); res.error(err);
}); });
}; }
module.exports.rejectableRequest = rejectableRequest;
module.exports.promisableRequest = module.exports.promisableRequest =
module.exports.promiseRequest = function promiseRequest(req, res, promise, msg) { module.exports.promiseRequest = function promiseRequest(req, res, promise, msg) {
return promise.then(function (result) { promise = promise.then(function (result) {
if (result._cache) { if (result._cache) {
res.setHeader('Cache-Control', 'public, max-age=' + (result._cache / 1000)); res.setHeader('Cache-Control', 'public, max-age=' + (result._cache / 1000));
res.setHeader('Expires', new Date(Date.now() + result._cache).toUTCString()); res.setHeader('Expires', new Date(Date.now() + result._cache).toUTCString());
@ -26,13 +27,7 @@ module.exports.promiseRequest = function promiseRequest(req, res, promise, msg)
result = result._value; result = result._value;
} }
res.send(result); res.send(result);
}).error(function (err) {
res.error(err);
}).catch(function (err) {
console.error('[ERROR] \'' + msg + '\'');
console.error(err.message);
console.error(err.stack);
res.error(err);
}); });
return rejectableRequest(req, res, promise, msg);
}; };