const logger = require('../utils/logger'); /** * Request Logging Middleware * Logs HTTP method, path, status code, and request duration */ function requestLoggerMiddleware(req, res, next) { const startTime = Date.now(); const originalSend = res.send; // Override send method to capture response res.send = function (data) { const duration = Date.now() - startTime; const statusCode = res.statusCode; // Log request details logger.info('HTTP Request', { method: req.method, path: req.path, statusCode: statusCode, duration: `${duration}ms`, ip: req.ip, userAgent: req.get('user-agent') }); // Call original send method return originalSend.call(this, data); }; next(); } module.exports = requestLoggerMiddleware;