summary refs log tree commit diff
path: root/src/api/middlewares/loggingMiddleware.js
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2025-05-28 09:17:55 +0200
committerRory& <root@rory.gay>2025-05-28 09:17:55 +0200
commit1cf9e271ccea793906f6848339f197a55132a174 (patch)
tree9a4e7e5459929579d206e2d72188b3634ff1153e /src/api/middlewares/loggingMiddleware.js
parentBasic routing and express setup (diff)
downloadnodejs-final-assignment-1cf9e271ccea793906f6848339f197a55132a174.tar.xz
Move middlewares out of start.js
Diffstat (limited to 'src/api/middlewares/loggingMiddleware.js')
-rw-r--r--src/api/middlewares/loggingMiddleware.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/api/middlewares/loggingMiddleware.js b/src/api/middlewares/loggingMiddleware.js
new file mode 100644

index 0000000..7df9b39 --- /dev/null +++ b/src/api/middlewares/loggingMiddleware.js
@@ -0,0 +1,14 @@ +import morgan from "morgan"; + +const requestLogFormat = + ':remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent" ":response-time ms"'; + +export function useLogging(logRequests) { + return morgan(requestLogFormat, { + skip: (req, res) => { + let skip = !logRequests.includes(res.statusCode); + if (logRequests.startsWith("-")) skip = !skip; + return skip; + }, + }); +}