From d54cd2b29850cc8d659cbbd6f7fd0b1037559158 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 10 Jan 2023 17:26:02 +0100 Subject: [PATCH] backend-app-api: move global loggers and winston helper back to backend-common Signed-off-by: Patrik Oldsberg --- .../backend-app-api/src/logging/rootLogger.ts | 30 ------------------- .../src/logging/globalLoggers.ts} | 29 ++++++++++++++++++ .../src/logging/index.ts | 9 +----- .../src/logging/loggerToWinstonLogger.ts | 0 .../src/tokens/ServerTokenManager.test.ts | 2 +- 5 files changed, 31 insertions(+), 39 deletions(-) rename packages/{backend-app-api/src/logging/voidLogger.ts => backend-common/src/logging/globalLoggers.ts} (55%) rename packages/{backend-app-api => backend-common}/src/logging/index.ts (80%) rename packages/{backend-app-api => backend-common}/src/logging/loggerToWinstonLogger.ts (100%) diff --git a/packages/backend-app-api/src/logging/rootLogger.ts b/packages/backend-app-api/src/logging/rootLogger.ts index ab7643b660..37122754ba 100644 --- a/packages/backend-app-api/src/logging/rootLogger.ts +++ b/packages/backend-app-api/src/logging/rootLogger.ts @@ -20,36 +20,8 @@ import { LoggerOptions } from 'winston'; import { coloredFormat } from './formats'; import { escapeRegExp } from '../lib/escapeRegExp'; -let rootLogger: winston.Logger; let redactionRegExp: RegExp | undefined; -/** - * Gets the current root logger. - * - * @public - */ -export function getRootLogger(): winston.Logger { - return rootLogger; -} - -/** - * Sets a completely custom default "root" logger. - * - * @remarks - * - * This is the logger instance that will be the foundation for all other logger - * instances passed to plugins etc, in a given backend. - * - * Only use this if you absolutely need to make a completely custom logger. - * Normally if you want to make light adaptations to the default logger - * behavior, you would instead call {@link createRootLogger}. - * - * @public - */ -export function setRootLogger(newLogger: winston.Logger) { - rootLogger = newLogger; -} - export function setRootLoggerRedactionList(redactionList: string[]) { // Exclude secrets that are empty or just one character in length. These // typically mean that you are running local dev or tests, or using the @@ -127,5 +99,3 @@ export function createRootLogger( return logger; } - -rootLogger = createRootLogger(); diff --git a/packages/backend-app-api/src/logging/voidLogger.ts b/packages/backend-common/src/logging/globalLoggers.ts similarity index 55% rename from packages/backend-app-api/src/logging/voidLogger.ts rename to packages/backend-common/src/logging/globalLoggers.ts index 79077f5c96..b9ec04b654 100644 --- a/packages/backend-app-api/src/logging/voidLogger.ts +++ b/packages/backend-common/src/logging/globalLoggers.ts @@ -26,3 +26,32 @@ export function getVoidLogger(): winston.Logger { transports: [new winston.transports.Console({ silent: true })], }); } + +let rootLogger: winston.Logger = createRootLogger(); + +/** + * Gets the current root logger. + * + * @public + */ +export function getRootLogger(): winston.Logger { + return rootLogger; +} + +/** + * Sets a completely custom default "root" logger. + * + * @remarks + * + * This is the logger instance that will be the foundation for all other logger + * instances passed to plugins etc, in a given backend. + * + * Only use this if you absolutely need to make a completely custom logger. + * Normally if you want to make light adaptations to the default logger + * behavior, you would instead call {@link createRootLogger}. + * + * @public + */ +export function setRootLogger(newLogger: winston.Logger) { + rootLogger = newLogger; +} diff --git a/packages/backend-app-api/src/logging/index.ts b/packages/backend-common/src/logging/index.ts similarity index 80% rename from packages/backend-app-api/src/logging/index.ts rename to packages/backend-common/src/logging/index.ts index ff2315c51b..ed49b25b55 100644 --- a/packages/backend-app-api/src/logging/index.ts +++ b/packages/backend-common/src/logging/index.ts @@ -14,12 +14,5 @@ * limitations under the License. */ -export * from './formats'; -export { - createRootLogger, - getRootLogger, - setRootLogger, - redactWinstonLogLine, -} from './rootLogger'; -export * from './voidLogger'; +export { getRootLogger, getVoidLogger, setRootLogger } from './globalLoggers'; export { loggerToWinstonLogger } from './loggerToWinstonLogger'; diff --git a/packages/backend-app-api/src/logging/loggerToWinstonLogger.ts b/packages/backend-common/src/logging/loggerToWinstonLogger.ts similarity index 100% rename from packages/backend-app-api/src/logging/loggerToWinstonLogger.ts rename to packages/backend-common/src/logging/loggerToWinstonLogger.ts diff --git a/packages/backend-common/src/tokens/ServerTokenManager.test.ts b/packages/backend-common/src/tokens/ServerTokenManager.test.ts index 3e5f0ba69a..3c487e9b9b 100644 --- a/packages/backend-common/src/tokens/ServerTokenManager.test.ts +++ b/packages/backend-common/src/tokens/ServerTokenManager.test.ts @@ -16,7 +16,7 @@ import { ConfigReader } from '@backstage/config'; import * as jose from 'jose'; -import { getVoidLogger } from '../logging/voidLogger'; +import { getVoidLogger } from '../logging'; import { ServerTokenManager } from './ServerTokenManager'; import { TokenManager } from './types';