function formatPayload(payload: unknown) { if (typeof payload === 'string') return { msg: payload }; if (payload instanceof Error) return { msg: payload.message, stack: payload.stack }; return payload; } const baseMeta = () => ({ pid: process.pid, ts: new Date().toISOString() }); export const logger = { info: (payload: unknown, meta: Record = {}) => { try { console.log(JSON.stringify({ level: 'info', ...baseMeta(), meta, payload: formatPayload(payload) })); } catch (e) { console.log('INFO', payload, meta); } }, warn: (payload: unknown, meta: Record = {}) => { try { console.warn(JSON.stringify({ level: 'warn', ...baseMeta(), meta, payload: formatPayload(payload) })); } catch (e) { console.warn('WARN', payload, meta); } }, error: (payload: unknown, meta: Record = {}) => { try { console.error(JSON.stringify({ level: 'error', ...baseMeta(), meta, payload: formatPayload(payload) })); } catch (e) { console.error('ERROR', payload, meta); } }, }; export default logger;