@alt-javascript/logger-darkly
v1.0.1
Published
An listener for updating the LoggerCategoryCache from a Launch Darkly variation
Downloads
7
Maintainers
Readme
A Listener For Updating The LoggerCategoryCache From A Launch Darkly Variation
Introduction
An "Arctor" implementation for listening for and updating the LoggerCategoryCache from a Launch Darkly variation in server-side node.js.
Usage
To use the module, follow the example in the included below file, which plays nicely with all the other @alt-javascript modules.
The Scanner, takes a LoggerCategoryCacheVariation
which is injected with the global root context LoggerCategoryCache
instance (each logger has a handle to it, though we could get it directly from global.boot.contexts.root.loggercategoryCache
)
that will act on flagged LaunchDarkly JSON config and replace the internal cache object within it's see(clearly)
function.
const LaunchDarkly = require('launchdarkly-node-server-sdk');
const ScannerDarkly = require('@alt-javascript/scanner-darkly');
const {config} = require("@alt-javascript/config");
const {boot} = require("@alt-javascript/boot");
const {LoggerFactory} = require('@alt-javascript/logger');
boot({config});
const LoggerCategoryCacheVariation = require('@alt-javascript/scanner-darkly'); // this uses booted logging config, so is required after boot().
const logger = LoggerFactory.getLogger('@alt-javascript/scanner-darkly/scan');
const ldlogger = LoggerFactory.getLogger('LaunchDarkly');
const SDK_KEY = config.get('scanner.darkly.sdk-key');
const scannerDarkly = new ScannerDarkly(
new LoggerCategoryCacheVariation('logging-levels', {"key": "[email protected]"}, {"/":"error"},logger.cache),
SDK_KEY,
{logger: ldlogger});
scannerDarkly.init();
// ... later, on process exit.
scannerDarkly.destroy();