@dodgeball/trust-sdk-client
Version:
Dodgeball Client SDK
91 lines (90 loc) • 3.24 kB
JavaScript
export var LogLevel;
(function (LogLevel) {
LogLevel["TRACE"] = "TRACE";
LogLevel["INFO"] = "INFO";
LogLevel["ERROR"] = "ERROR";
LogLevel["NONE"] = "NONE";
})(LogLevel || (LogLevel = {}));
export var Severity;
(function (Severity) {
Severity[Severity["TRACE"] = 0] = "TRACE";
Severity[Severity["INFO"] = 1] = "INFO";
Severity[Severity["ERROR"] = 2] = "ERROR";
Severity[Severity["NONE"] = 3] = "NONE";
})(Severity || (Severity = {}));
var LogEntry = (function () {
function LogEntry(message, severity, error) {
if (severity === void 0) { severity = Severity.INFO; }
if (error === void 0) { error = null; }
this.severity = Severity.INFO;
this.message = "";
this.date = new Date();
this.message = message;
this.severity = severity;
this.error = error;
}
LogEntry.prototype.setParameters = function (parameters) {
this.parameters = parameters;
return this;
};
LogEntry.prototype.setParameter = function (key, value) {
var _a;
this.parameters = (_a = this.parameters) !== null && _a !== void 0 ? _a : {};
this.parameters[key] = value;
return this;
};
LogEntry.prototype.setSeverity = function (severity) {
this.severity = severity;
return this;
};
LogEntry.prototype.setError = function (error) {
this.error = error;
return this;
};
LogEntry.prototype.log = function () {
try {
Logger.log(this);
}
catch (e) {
}
};
return LogEntry;
}());
export { LogEntry };
var Logger = (function () {
function Logger() {
}
Logger.info = function (message, parameters) {
return new LogEntry(message, Severity.INFO).setParameters(parameters);
};
Logger.trace = function (message, parameters) {
return new LogEntry(message, Severity.TRACE).setParameters(parameters);
};
Logger.error = function (message, error) {
return new LogEntry(message, Severity.ERROR).setError(error);
};
Logger.log = function (logEvent) {
if (logEvent.severity.valueOf() >= Logger.filterLevel.valueOf()) {
var logResults = "Dodgeball SDK:\n Severity: ".concat(Severity[logEvent.severity], "\n Date: ").concat(logEvent.date, "\n Message: ").concat(logEvent.message);
var parametersString = "";
try {
if (logEvent.parameters) {
parametersString = "\n ".concat(JSON.stringify(logEvent.parameters, null, 2));
}
}
catch (e) {
parametersString = "Unable to represent parameters as a string";
}
logResults = "".concat(logResults, "\n Parameters: ").concat(parametersString);
if (logEvent.severity === Severity.ERROR) {
console.log(logResults, logEvent.error);
}
else {
console.log(logResults);
}
}
};
Logger.filterLevel = Severity.TRACE;
return Logger;
}());
export { Logger };