@piggly/fastify-chassis
Version:
An ESM/CommonJS toolkit to help you to do common operations in your back-end applications with Fastify and NodeJS.
36 lines • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LogResponseHook = void 0;
const ddd_toolkit_1 = require("@piggly/ddd-toolkit");
/**
* Log the response of the request.
*
* I will log only on development environment.
* And if the debug level is enabled for LoggerService.
*
* The best way for logging requests/response should be
* at nGINX or similar.
*
* @param {FastifyInstance<Server>} app The Fastify instance.
* @param {Environment} env The environment.
* @returns {void}
* @since 7.0.0
* @author Caique Araujo <caique@piggly.com.br>
*/
const LogResponseHook = (app, env) => {
if (env && env?.environment !== 'development') {
return;
}
app.addHook('onResponse', async (request, reply) => {
ddd_toolkit_1.LoggerService.softResolve().debug('HTTP_RESPONSE', {
id: request.id,
duration: reply.elapsedTime,
hostname: request.hostname,
method: request.method,
status: reply.statusCode,
url: request.url,
});
});
};
exports.LogResponseHook = LogResponseHook;
//# sourceMappingURL=LogResponseHook.js.map