diff --git a/middleware/404.js b/middleware/404.js index 65c25467..10d27a81 100644 --- a/middleware/404.js +++ b/middleware/404.js @@ -1,7 +1,9 @@ +const logger = require('pelias-logger').get('api'); // handle not found errors function middleware(req, res) { res.header('Cache-Control','public'); + logger.info('status code', 404); res.status(404).json({ error: 'not found: invalid path' }); } diff --git a/middleware/500.js b/middleware/500.js index 92acea60..d131d3c1 100644 --- a/middleware/500.js +++ b/middleware/500.js @@ -7,6 +7,8 @@ function middleware(err, req, res, next) { var error = (err && err.message) ? err.message : err; if( res.statusCode < 400 ){ res.status(500); } + logger.info('status code', res.statusCode); + res.json({ error: typeof error === 'string' ? error : 'internal server error' }); } diff --git a/middleware/sendJSON.js b/middleware/sendJSON.js index be2e56b0..6f7cb33f 100644 --- a/middleware/sendJSON.js +++ b/middleware/sendJSON.js @@ -1,6 +1,7 @@ var check = require('check-types'), es = require('elasticsearch'), exceptions = require('elasticsearch-exceptions/lib/exceptions/SupportedExceptions'); +const logger = require('pelias-logger').get('api'); // create a list of regular expressions to match against. // note: list created when the server starts up; for performance reasons. @@ -60,6 +61,8 @@ function sendJSONResponse(req, res, next) { }); } + logger.info('status code', statusCode); + // respond return res.status(statusCode).json(res.body); }