UNPKG

@fran-834/gs-microservice-core

Version:

Core package for Node.js microservices by Galduria Software. Includes security, logging, validation, and error handling middlewares.

54 lines (53 loc) 1.29 kB
import logger from "./logger.js"; /** * Logs an operation with the request ID. */ const logOperation = (req) => { const log = { id: req.id, }; logger.info("operation", log); }; /** * Logs an informational message. */ const logInfo = (message) => { logger.info(message); }; /** * Logs a debug message if in development or docker environment. */ const logDebug = (message) => { if (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "docker") { logger.debug(message); } }; /** * Logs an error with the request ID and cleans the error object. */ const logError = (req, error) => { // Clean the error object if (error && error.errors && error.errors.length > 0) { error.errors.forEach((err) => { delete err.instance; }); } if (error && error.fields) { delete error.fields; } if (error && error.original) { delete error.original; } if (error && error.parent) { delete error.parent; } if (error && error.sql) { delete error.sql; } const log = { id: req ? req.id : "", error: { ...error, stack: error.stack || "" }, }; logger.error("error", log); }; export { logOperation, logInfo, logDebug, logError };