diff --git a/js/server/modules/@arangodb/foxx/service.js b/js/server/modules/@arangodb/foxx/service.js index cbf99c7c1c..fc9523986c 100644 --- a/js/server/modules/@arangodb/foxx/service.js +++ b/js/server/modules/@arangodb/foxx/service.js @@ -178,10 +178,22 @@ module.exports = class FoxxService { console.errorLines(e.stack); error = new InternalServerError(); error.cause = e; + let err = e; + while (err.cause && err.cause.stack) { + err = err.cause; + console.errorLines(`via ${err.stack}`); + } + } else if (e.statusCode >= 500) { + console.warnLines(e.stack); + let err = e; + while (err.cause && err.cause.stack) { + err = err.cause; + console.warnLines(`via ${err.stack}`); + } } const body = { error: true, - errorNum: error.statusCode, + errorNum: error.errorNum || error.statusCode, errorMessage: error.message, code: error.statusCode };