backtrace-node
Version:
Backtrace error reporting tool
108 lines • 3.98 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var BacktraceResultStatus;
(function (BacktraceResultStatus) {
/**
* Set when sampling method decide to skip report
*/
BacktraceResultStatus[BacktraceResultStatus["SamplingHit"] = 0] = "SamplingHit";
/**
* Set when client limit is reached
*/
BacktraceResultStatus[BacktraceResultStatus["LimitReached"] = 1] = "LimitReached";
/**
* Set when error occurs while sending diagnostic data
*/
BacktraceResultStatus[BacktraceResultStatus["ServerError"] = 2] = "ServerError";
/**
* Set when data were send to API
*/
BacktraceResultStatus[BacktraceResultStatus["Ok"] = 4] = "Ok";
/**
* Data were send to API and waiting for server result
*/
BacktraceResultStatus[BacktraceResultStatus["InProcessing"] = 8] = "InProcessing";
})(BacktraceResultStatus = exports.BacktraceResultStatus || (exports.BacktraceResultStatus = {}));
/**
* Send method result
*/
var BacktraceResult = /** @class */ (function () {
function BacktraceResult(report, message, status, err, data) {
this.report = report;
this.message = message;
this.status = status;
this.err = err;
this._objectId = '';
this._rxId = '';
if (!data) {
return;
}
this._rxId = data._rxid;
this._objectId = data.object;
this.message = data.message ? data.message : message;
}
BacktraceResult.Processing = function (report) {
return new BacktraceResult(report, 'Data were send to API and waiting for server result', BacktraceResultStatus.InProcessing);
};
BacktraceResult.Ok = function (report, result) {
return new BacktraceResult(report, 'Report is available on the Backtrace server', BacktraceResultStatus.Ok, undefined, result);
};
/**
* Set result when client rate limit reached
* @param report Executed report
* @returns BacktraceResult with limit reached information
*/
BacktraceResult.OnLimitReached = function (report) {
return new BacktraceResult(report, 'Client report limit reached', BacktraceResultStatus.LimitReached);
};
BacktraceResult.OnSamplingHit = function (report) {
return new BacktraceResult(report, 'Sampling hit', BacktraceResultStatus.SamplingHit);
};
/**
* Set result when error occurs while sending data to API
* @param report Executed report
* @param error Error
* @returns BacktraceResult with exception information
*/
BacktraceResult.OnError = function (report, err) {
return new BacktraceResult(report, err.message, BacktraceResultStatus.ServerError, err);
};
Object.defineProperty(BacktraceResult.prototype, "ObjectId", {
get: function () {
return !this._objectId ? this._objectId : this._rxId;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BacktraceResult.prototype, "Report", {
get: function () {
return this.report;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BacktraceResult.prototype, "Message", {
get: function () {
return this.message;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BacktraceResult.prototype, "Error", {
get: function () {
return this.err;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BacktraceResult.prototype, "Status", {
get: function () {
return this.status;
},
enumerable: true,
configurable: true
});
return BacktraceResult;
}());
exports.BacktraceResult = BacktraceResult;
//# sourceMappingURL=backtraceResult.js.map
;