diff --git a/packages/server/lib/server.ts b/packages/server/lib/server.ts index e1c153d11ca..1789eeeeb2c 100644 --- a/packages/server/lib/server.ts +++ b/packages/server/lib/server.ts @@ -22,6 +22,16 @@ import { refreshConnectionsCron } from './refreshConnections.js'; const { NANGO_MIGRATE_AT_START = 'true' } = process.env; const logger = getLogger('Server'); +process.on('unhandledRejection', (reason) => { + logger.error('Received unhandledRejection...', reason); + // not closing on purpose +}); + +process.on('uncaughtException', (e) => { + logger.error('Received uncaughtException...', e); + // not closing on purpose +}); + const app = express(); app.disable('x-powered-by'); app.set('trust proxy', 1); diff --git a/packages/utils/lib/errors.ts b/packages/utils/lib/errors.ts index 712da83102a..abdf7ec5394 100644 --- a/packages/utils/lib/errors.ts +++ b/packages/utils/lib/errors.ts @@ -4,7 +4,7 @@ import { serializeError } from 'serialize-error'; * Transform any Error or primitive to a json object */ export function errorToObject(err: unknown) { - return serializeError(err); + return serializeError(err, { maxDepth: 5 }); } /** diff --git a/packages/utils/lib/logger.ts b/packages/utils/lib/logger.ts index 9ec4b2de901..e458080f42d 100644 --- a/packages/utils/lib/logger.ts +++ b/packages/utils/lib/logger.ts @@ -3,7 +3,6 @@ import winston from 'winston'; import type { Logform, Logger } from 'winston'; import colors from '@colors/colors'; import { isCloud, isEnterprise, isTest } from './environment/detection.js'; -import { nanoid } from 'nanoid'; const SPLAT = Symbol.for('splat'); const level = process.env['LOG_LEVEL'] ? process.env['LOG_LEVEL'] : isTest ? 'error' : 'info'; @@ -42,7 +41,7 @@ if (!isCloud && !isEnterprise) { }) ]; } else { - const instanceId = isCloud ? ` ${nanoid(6)}` : ''; + const instanceId = isCloud && process.env['RENDER_INSTANCE_ID'] ? ` ${process.env['RENDER_INSTANCE_ID']}` : ''; formatters = [ winston.format.printf((info) => {