UNPKG

myex-cli

Version:

Opinionated Express.js framework with CLI tools

26 lines (22 loc) 761 B
import { logger } from '../utils/logger.js'; /** * Middleware to log all incoming requests * @param {import('express').Request} req - Express request object * @param {import('express').Response} res - Express response object * @param {import('express').NextFunction} next - Express next function */ export const requestLogger = (req, res, next) => { const startTime = new Date(); // Log request details logger.http( `${req.method} ${req.url} [${req.ip}] - ${req.get('user-agent') || 'Unknown'}` ); // Capture response to log its status code res.on('finish', () => { const duration = new Date() - startTime; logger.http( `Response: ${req.method} ${req.url} ${res.statusCode} - ${duration}ms` ); }); next(); };