From 25b560e8c0b92194b6dd387d1ff1e936aa52e21c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Fri, 5 Dec 2025 14:44:45 +0100 Subject: [PATCH] fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/nice-humans-cry.md | 6 ++++++ .../src/entrypoints/rootLogger/WinstonLogger.ts | 11 ++++++++--- .../src/scaffolder/tasks/logger.ts | 16 +++++++++++----- 3 files changed, 25 insertions(+), 8 deletions(-) create mode 100644 .changeset/nice-humans-cry.md diff --git a/.changeset/nice-humans-cry.md b/.changeset/nice-humans-cry.md new file mode 100644 index 0000000000..c6119702b4 --- /dev/null +++ b/.changeset/nice-humans-cry.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-scaffolder-backend': patch +'@backstage/backend-defaults': patch +--- + +Internal change to support new versions of the `logform` library diff --git a/packages/backend-defaults/src/entrypoints/rootLogger/WinstonLogger.ts b/packages/backend-defaults/src/entrypoints/rootLogger/WinstonLogger.ts index c48cef2f1f..0455912ca9 100644 --- a/packages/backend-defaults/src/entrypoints/rootLogger/WinstonLogger.ts +++ b/packages/backend-defaults/src/entrypoints/rootLogger/WinstonLogger.ts @@ -102,7 +102,9 @@ export class WinstonLogger implements RootLoggerService { return obj; } - obj[MESSAGE] = obj[MESSAGE]?.replace?.(redactionPattern, '***'); + if (typeof obj[MESSAGE] === 'string') { + obj[MESSAGE] = obj[MESSAGE].replace(redactionPattern, '***'); + } return obj; })(), @@ -157,8 +159,11 @@ export class WinstonLogger implements RootLoggerService { format.printf((info: TransformableInfo) => { const { timestamp, level, message, plugin, service, ...fields } = info; const prefix = plugin || service; - const timestampColor = colorizer.colorize('timestamp', timestamp); - const prefixColor = colorizer.colorize('prefix', prefix); + const timestampColor = colorizer.colorize( + 'timestamp', + String(timestamp), + ); + const prefixColor = colorizer.colorize('prefix', String(prefix)); const extraFields = Object.entries(fields) .map(([key, value]) => { diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/logger.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/logger.ts index 6ca24663b6..5958aacf41 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/logger.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/logger.ts @@ -84,9 +84,10 @@ export class BackstageLoggerTransport extends Transport { break; default: this.backstageLogger.info(String(message)); + break; } - this.taskContext.emitLog(message, { stepId: this.stepId }); + this.taskContext.emitLog(String(message), { stepId: this.stepId }); callback(); } } @@ -131,7 +132,9 @@ export class WinstonLogger implements RootLoggerService { return obj; } - obj[MESSAGE] = obj[MESSAGE]?.replace?.(redactionPattern, '***'); + if (typeof obj[MESSAGE] === 'string') { + obj[MESSAGE] = obj[MESSAGE].replace(redactionPattern, '***'); + } return obj; })(), @@ -189,10 +192,13 @@ export class WinstonLogger implements RootLoggerService { const level = info[LEVEL]; const fields = info[SPLAT]; const prefix = plugin || service; - const timestampColor = colorizer.colorize('timestamp', timestamp); - const prefixColor = colorizer.colorize('prefix', prefix); + const timestampColor = colorizer.colorize( + 'timestamp', + String(timestamp), + ); + const prefixColor = colorizer.colorize('prefix', String(prefix)); - const extraFields = Object.entries(fields) + const extraFields = Object.entries(fields as any) .map( ([key, value]) => `${colorizer.colorize('field', `${key}`)}=${value}`,