barracuda-client-api
Version:
API Client to connect to Barracuda Enterprise Service Bus
139 lines (138 loc) • 5.01 kB
JavaScript
;
/* tslint:disable */
Object.defineProperty(exports, "__esModule", { value: true });
exports.setLoggers = exports.useConsoleLogging = exports.useConsoleLoggingWithAdvanced = exports.logSilly = exports.logVerbose = exports.logWarn = exports.logInfo = exports.logDebug = exports.logError = exports.isSilly = exports.isVerbose = exports.isWarn = exports.isDebug = exports.isInfo = exports.shouldLogErrors = exports.loglevel = exports.logLevelByString = exports.GenerateLogLevelMap = exports.LogLevelKeys = exports.loglevels = void 0;
var loglevels;
(function (loglevels) {
loglevels[loglevels["none"] = 0] = "none";
loglevels[loglevels["error"] = 1] = "error";
loglevels[loglevels["warn"] = 2] = "warn";
loglevels[loglevels["info"] = 3] = "info";
loglevels[loglevels["http"] = 4] = "http";
loglevels[loglevels["debug"] = 5] = "debug";
loglevels[loglevels["verbose"] = 6] = "verbose";
loglevels[loglevels["silly"] = 7] = "silly";
})(loglevels = exports.loglevels || (exports.loglevels = {}));
let logLevelKeys = [];
function LogLevelKeys() {
if (logLevelKeys.length === 0) {
logLevelKeys = Object.keys(loglevels)
.filter(v => !(parseInt(v, 10) >= 0));
}
return logLevelKeys;
}
exports.LogLevelKeys = LogLevelKeys;
function GenerateLogLevelMap() {
return (LogLevelKeys())
.reduce((previousValue, currentValue) => {
previousValue[currentValue] = loglevels[currentValue];
previousValue[currentValue.toLocaleUpperCase()] = loglevels[currentValue];
previousValue[currentValue.toLocaleLowerCase()] = loglevels[currentValue];
return previousValue;
}, {});
}
exports.GenerateLogLevelMap = GenerateLogLevelMap;
exports.logLevelByString = GenerateLogLevelMap();
function loglevel(ll) {
return exports.logLevelByString[ll === null || ll === void 0 ? void 0 : ll.toLowerCase()];
}
exports.loglevel = loglevel;
function shouldLogErrors(level) {
return level >= loglevels.error;
}
exports.shouldLogErrors = shouldLogErrors;
function isInfo(level) {
return level >= loglevels.info;
}
exports.isInfo = isInfo;
function isDebug(level) {
return level >= loglevels.debug;
}
exports.isDebug = isDebug;
function isWarn(level) {
return level >= loglevels.warn;
}
exports.isWarn = isWarn;
function isVerbose(level) {
return level >= loglevels.verbose;
}
exports.isVerbose = isVerbose;
function isSilly(level) {
return level >= loglevels.silly;
}
exports.isSilly = isSilly;
let pid;
function checkPid() {
if (!pid) {
if (process && process.pid) {
pid = ` [${process.pid}]`;
}
else {
pid = '';
}
}
}
function TsT() {
return new Date().toISOString();
// 2020-08-25T18:41:37.119Z
// return new Date().toISOString()
// .substr(11);
}
function changeLoggingArgs(type, data) {
checkPid();
if (typeof data[0] === 'string') {
data[0] = `[${TsT()}]${pid} [${type}] ${data[0]}`;
}
else {
data = [`[${TsT()}]${pid} [${type}]`, ...data];
}
return data;
}
function useConsole(args, output) {
if (Array.isArray(args)) {
output(...args);
}
else {
output(args);
}
}
function useConsoleLoggingWithAdvanced() {
exports.logError = (...data) => useConsole(changeLoggingArgs('ERROR', data), console.error);
exports.logDebug = (...data) => useConsole(changeLoggingArgs('DEBUG', data), console.debug);
exports.logInfo = (...data) => useConsole(changeLoggingArgs('INFO', data), console.info);
exports.logWarn = (...data) => useConsole(changeLoggingArgs('WARN', data), console.warn);
exports.logVerbose = (...data) => useConsole(changeLoggingArgs('TRACE', data), console.debug);
exports.logSilly = (...data) => useConsole(changeLoggingArgs('SILLY', data), console.trace);
}
exports.useConsoleLoggingWithAdvanced = useConsoleLoggingWithAdvanced;
function useConsoleLogging() {
exports.logError = (...data) => useConsole(data, console.error);
exports.logDebug = (...data) => useConsole(data, console.debug);
exports.logInfo = (...data) => useConsole(data, console.info);
exports.logWarn = (...data) => useConsole(data, console.warn);
exports.logVerbose = (...data) => useConsole(data, console.debug);
exports.logSilly = (...data) => useConsole(data, console.trace);
}
exports.useConsoleLogging = useConsoleLogging;
useConsoleLoggingWithAdvanced();
function setLoggers(infoLogger, debugLogger, warnLogger, errorLogger, verboseLogger, sillyLogger) {
if (infoLogger) {
exports.logInfo = infoLogger;
}
if (debugLogger) {
exports.logDebug = debugLogger;
}
if (warnLogger) {
exports.logWarn = warnLogger;
}
if (errorLogger) {
exports.logError = errorLogger;
}
if (verboseLogger) {
exports.logVerbose = verboseLogger;
}
if (sillyLogger) {
exports.logSilly = sillyLogger;
}
}
exports.setLoggers = setLoggers;