@backstage/backend-defaults
Version:
Backend defaults used by Backstage backend apps
38 lines (34 loc) • 1.58 kB
JavaScript
;
var backendPluginApi = require('@backstage/backend-plugin-api');
var winston = require('winston');
var createConfigSecretEnumerator = require('../rootConfig/createConfigSecretEnumerator.cjs.js');
var WinstonLogger = require('./WinstonLogger.cjs.js');
var config = require('./config.cjs.js');
const rootLoggerServiceFactory = backendPluginApi.createServiceFactory({
service: backendPluginApi.coreServices.rootLogger,
deps: {
config: backendPluginApi.coreServices.rootConfig
},
async factory({ config: config$1 }) {
const rootLoggerConfig = config.getRootLoggerConfig(config$1);
const logger = WinstonLogger.WinstonLogger.create({
meta: {
service: "backstage",
...rootLoggerConfig.meta
},
level: process.env.LOG_LEVEL || rootLoggerConfig.level || "info",
format: process.env.NODE_ENV === "production" ? winston.format.json() : WinstonLogger.WinstonLogger.colorFormat(),
transports: [new winston.transports.Console()]
});
const secretEnumerator = await createConfigSecretEnumerator.createConfigSecretEnumerator({ logger });
logger.addRedactions(secretEnumerator(config$1));
config$1.subscribe?.(() => logger.addRedactions(secretEnumerator(config$1)));
logger.setLevelOverrides(rootLoggerConfig.overrides ?? []);
config$1.subscribe?.(
() => logger.setLevelOverrides(config.getRootLoggerConfig(config$1).overrides ?? [])
);
return logger;
}
});
exports.rootLoggerServiceFactory = rootLoggerServiceFactory;
//# sourceMappingURL=rootLoggerServiceFactory.cjs.js.map