UNPKG

pg-transactional-outbox

Version:

A PostgreSQL based transactional outbox and inbox pattern implementation to support exactly once message processing (with at least once message delivery).

50 lines 1.64 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getInMemoryLogger = exports.getDisabledLogger = exports.getDefaultLogger = void 0; /* eslint-disable @typescript-eslint/no-empty-function */ const pino_1 = __importDefault(require("pino")); const getDefaultLogger = (name = 'default') => (0, pino_1.default)({ name, timestamp: pino_1.default.stdTimeFunctions.isoTime }); exports.getDefaultLogger = getDefaultLogger; /** * Disable the logger. */ const getDisabledLogger = () => ({ fatal: () => { }, error: () => { }, warn: () => { }, info: () => { }, debug: () => { }, trace: () => { }, silent: () => { }, level: 'silent', msgPrefix: '', }); exports.getDisabledLogger = getDisabledLogger; /** * Writes all logs to an array that is returned from this call. * @param context Add this to every log entry * @returns The logger instance and the array of in-memory logs */ const getInMemoryLogger = (context) => { const logs = []; const l = (type) => (...args) => { logs.push({ type, args, date: new Date().toISOString(), context }); }; const logger = { fatal: l('fatal'), error: l('error'), warn: l('warn'), info: l('info'), debug: l('debug'), trace: l('trace'), silent: l('silent'), level: 'trace', msgPrefix: '', }; return [logger, logs]; }; exports.getInMemoryLogger = getInMemoryLogger; //# sourceMappingURL=logger.js.map