diff --git a/.changeset/chilly-bees-dream.md b/.changeset/chilly-bees-dream.md new file mode 100644 index 0000000000..34e401a199 --- /dev/null +++ b/.changeset/chilly-bees-dream.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-app-api': patch +--- + +Updated logger implementations to match interface changes. diff --git a/.changeset/wicked-paws-help.md b/.changeset/wicked-paws-help.md new file mode 100644 index 0000000000..8fbba71662 --- /dev/null +++ b/.changeset/wicked-paws-help.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-plugin-api': patch +--- + +Updated `LoggerService` interface with more log methods and meta. diff --git a/packages/backend-app-api/src/services/implementations/rootLoggerService.ts b/packages/backend-app-api/src/services/implementations/rootLoggerService.ts index 064091a122..54d40b6a12 100644 --- a/packages/backend-app-api/src/services/implementations/rootLoggerService.ts +++ b/packages/backend-app-api/src/services/implementations/rootLoggerService.ts @@ -20,6 +20,7 @@ import { LoggerService, coreServices, } from '@backstage/backend-plugin-api'; +import { LogMeta } from '@backstage/backend-plugin-api'; import { Logger as WinstonLogger } from 'winston'; class BackstageLogger implements LoggerService { @@ -29,12 +30,24 @@ class BackstageLogger implements LoggerService { private constructor(private readonly winston: WinstonLogger) {} - info(message: string, ...meta: any[]): void { - this.winston.info(message, ...meta); + error(message: string, meta?: LogMeta): void { + this.winston.error(message, meta); } - child(fields: { [name: string]: string }): LoggerService { - return new BackstageLogger(this.winston.child(fields)); + warn(message: string, meta?: LogMeta): void { + this.winston.warn(message, meta); + } + + info(message: string, meta?: LogMeta): void { + this.winston.info(message, meta); + } + + debug(message: string, meta?: LogMeta): void { + this.winston.debug(message, meta); + } + + child(meta: LogMeta): LoggerService { + return new BackstageLogger(this.winston.child(meta)); } } diff --git a/packages/backend-plugin-api/src/services/definitions/index.ts b/packages/backend-plugin-api/src/services/definitions/index.ts index e2f361ff01..3cf2ab4c77 100644 --- a/packages/backend-plugin-api/src/services/definitions/index.ts +++ b/packages/backend-plugin-api/src/services/definitions/index.ts @@ -26,7 +26,7 @@ export type { LifecycleService, LifecycleServiceShutdownHook, } from './lifecycleServiceRef'; -export type { LoggerService } from './loggerServiceRef'; +export type { LoggerService, LogMeta } from './loggerServiceRef'; export type { PermissionsService } from './permissionsServiceRef'; export type { PluginMetadataService } from './pluginMetadataServiceRef'; export type { RootLoggerService } from './rootLoggerServiceRef'; diff --git a/packages/backend-plugin-api/src/services/definitions/loggerServiceRef.ts b/packages/backend-plugin-api/src/services/definitions/loggerServiceRef.ts index b135ccc8e6..179e97a84b 100644 --- a/packages/backend-plugin-api/src/services/definitions/loggerServiceRef.ts +++ b/packages/backend-plugin-api/src/services/definitions/loggerServiceRef.ts @@ -16,12 +16,21 @@ import { createServiceRef } from '../system/types'; +/** + * @public + */ +export type LogMeta = Error | { [name: string]: any }; + /** * @public */ export interface LoggerService { - info(message: string): void; - child(fields: { [name: string]: string }): LoggerService; + error(message: string, meta?: LogMeta): void; + warn(message: string, meta?: LogMeta): void; + info(message: string, meta?: LogMeta): void; + debug(message: string, meta?: LogMeta): void; + + child(meta: LogMeta): LoggerService; } /**