From 10cf22cd4e797d482ae07a0bfd7e5afc9ed2a7a9 Mon Sep 17 00:00:00 2001 From: Matteo Pagliazzi Date: Thu, 26 May 2016 23:19:29 +0200 Subject: [PATCH] better distinguish between handled and not handler errors --- website/server/libs/api-v3/logger.js | 7 ++++--- website/server/middlewares/api-v3/errorHandler.js | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/website/server/libs/api-v3/logger.js b/website/server/libs/api-v3/logger.js index 4260e72a48..dd0ca8396e 100644 --- a/website/server/libs/api-v3/logger.js +++ b/website/server/libs/api-v3/logger.js @@ -60,11 +60,12 @@ let loggerInterface = { } let loggerArgs = [stack, errorData, ...otherArgs]; - // Treat 4xx errors as warnings, 5xx and uncaught errors as serious problems - if (!errorData || !errorData.statusCode || errorData.statusCode > 499) { + + // Treat 4xx errors that are handled as warnings, 5xx and uncaught errors as serious problems + if (!errorData || !errorData.isHandledError || errorData.httpCode >= 500) { logger.error(...loggerArgs); } else { - logger.warn(stack, errorData, ...otherArgs); + logger.warn(...loggerArgs); } } else { logger.error(...args); diff --git a/website/server/middlewares/api-v3/errorHandler.js b/website/server/middlewares/api-v3/errorHandler.js index 891f0b36af..cd76277c78 100644 --- a/website/server/middlewares/api-v3/errorHandler.js +++ b/website/server/middlewares/api-v3/errorHandler.js @@ -69,7 +69,8 @@ module.exports = function errorHandler (err, req, res, next) { // eslint-disable originalUrl: req.originalUrl, headers: omit(req.headers, ['x-api-key', 'cookie']), // don't send sensitive information that only adds noise body: req.body, - statusCode: responseErr.httpCode, + httpCode: responseErr.httpCode, + isHandledError: responseErr.httpCode < 500, }); let jsonRes = {