@zowe/imperative
Version:
framework for building configurable CLIs
136 lines • 5.53 kB
TypeScript
import { IConfigLogging } from "../../logger/src/doc/IConfigLogging";
import { IImperativeConfig } from "./doc/IImperativeConfig";
/**
* Helper class to construct default config, log4js config, and define
* log4js configuration document.
* @export
* @class LoggingConfigurer
*/
export declare class LoggingConfigurer {
/**
* Configure all log4js loggers based on imperative config
* @static
* @param {string} home - home directory
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @returns {IConfigLogging} - compiled logging config for Logger.init();
* @memberof LoggingConfigurer
*/
static configureLogger(home: string, imperativeConfig: IImperativeConfig): IConfigLogging;
/**
* Configures log4js imperative appender from imperative config
* @private
* @static
* @param {string} home - home directory
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {IConfigLogging} loggingConfig - log4js config
* @param {string} key - keys within log4js appenders (like the appenders "imperative" key or categories "imperative" key)
* @memberof LoggingConfigurer
*/
private static configureImperativeLogger;
/**
* Configures log4js app appender from imperative config
* @private
* @static
* @param {string} home - home directory
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {IConfigLogging} loggingConfig - log4js config
* @param {string} key - keys within log4js appenders (like the appenders "imperative" key or categories "imperative" key)
* @memberof LoggingConfigurer
*/
private static configureAppLogger;
/**
* Configures log4js console appender from imperative config
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {IConfigLogging} loggingConfig - log4js config
* @param {string} key - keys within log4js appenders (like the appenders "imperative" key or categories "imperative" key)
* @memberof LoggingConfigurer
*/
/**
* Configures log4js appenders from imperative config
* @private
* @static
* @param {string} home - home directory
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {IConfigLogging} loggingConfig - log4js config
* @param {string} entryKey - keys within log4js appenders (like the appenders "imperative" key or categories "imperative" key)
* @param {string} configKey - keys within IImperativeLogsConfig (like imperativeLogging)
* @memberof LoggingConfigurer
*/
private static configureLoggerByKey;
/**
* Common method to configure log4js appenders via imperative config
* @private
* @static
* @param {string} home - home directory
* @param {IImperativeLoggingConfig} impLogConfig
* @param {IConfigLogging} loggingConfig - imperative main config
* @param {string} entryKey - imperative key
* @param {string} configKey -log4js key
* @returns {IImperativeConfig} - populated config
* @memberof LoggingConfigurer
*/
private static configureLoggerByKeyHelper;
/**
* Build minimum imperative config for default supplied loggers
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @returns {IImperativeConfig} - populated config
* @memberof LoggingConfigurer
*/
private static buildLoggingDefaults;
/**
* Build minimum imperative config for default imperative logger
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {string} name - log4js name
* @returns {IImperativeConfig} - populated config
* @memberof LoggingConfigurer
*/
private static buildImperativeLoggingDefaults;
/**
* Build minimum app config for default app logger
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {string} name - log4js name
* @returns {IImperativeConfig} - populated config
* @memberof LoggingConfigurer
*/
private static buildAppLoggingDefaults;
/**
* Build minimum console config for default console logger
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {string} name - imperative main config
* @memberof LoggingConfigurer
*/
/**
* This method overrides any configuration of reserved loggers.
* Build minimum console config for default console logger
* @private
* @static
* @param {IImperativeConfig} imperativeConfig - imperative main config
* @param {string} key - imperative main config
* @param {string} apiName - imperative main config
* @param {string} [category=apiName] - imperative main config
* @returns {IImperativeConfig} - populated config
* @memberof LoggingConfigurer
*/
private static buildLoggingDefaultsByKey;
/**
* Normalize input file path for logs in the case that a user provides
* redundant or missing file delimiters.
* @private
* @static
* @param {string} file - normalized file
* @returns {string} - normalized dir
* @memberof LoggingConfigurer
*/
private static normalizeDir;
}
//# sourceMappingURL=LoggingConfigurer.d.ts.map