Logger configuration
Middleware function
import { createFej, createLoggerMiddleware } from 'fej';
const api = createFej();
api.use('logger', createLoggerMiddleware());
// Output: → GET https://api.example.com/users
// ← GET https://api.example.com/users - 200 (123ms)
api.use('logger', createLoggerMiddleware({
format: 'json',
}));
// Output: {"type":"request","method":"GET","url":"...","timestamp":"..."}
api.use('logger', createLoggerMiddleware({
format: 'detailed',
logRequest: true,
logResponse: true,
}));
api.use('logger', createLoggerMiddleware({
format: (ctx, duration) => {
return `[${ctx.request.init.method || 'GET'}] ${ctx.request.url} took ${duration}ms`;
},
}));
api.use('logger', createLoggerMiddleware({
filter: (ctx) => {
// Only log POST requests
return ctx.request.init.method === 'POST';
},
}));
Create a logger middleware for debugging
Creates middleware that logs request and response information. Supports multiple output formats and custom filtering.