@tomisakae/syosetu-api
Version:
Enterprise-grade Fastify TypeScript API for Syosetu.com data extraction using official API and web scraping. Run instantly with 'npx @tomisakae/syosetu-api'
28 lines • 931 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.requestLogger = void 0;
const utils_1 = require("@/utils");
const logger = (0, utils_1.createChildLogger)('RequestLogger');
const requestLogger = async (request, reply) => {
const start = Date.now();
logger.info({
method: request.method,
url: request.url,
userAgent: request.headers['user-agent'],
ip: request.ip,
params: request.params,
query: request.query,
}, 'Incoming request');
reply.raw.on('finish', () => {
const duration = Date.now() - start;
logger.info({
method: request.method,
url: request.url,
statusCode: reply.statusCode,
duration: `${duration}ms`,
ip: request.ip,
}, 'Request completed');
});
};
exports.requestLogger = requestLogger;
//# sourceMappingURL=request-logger.js.map