msal
Version:
Microsoft Authentication Library for js
50 lines • 2.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var TelemetryConstants_1 = require("./TelemetryConstants");
var TelemetryConstants_2 = require("./TelemetryConstants");
var TelemetryUtils_1 = require("./TelemetryUtils");
var CryptoUtils_1 = require("../utils/CryptoUtils");
var TelemetryEvent = /** @class */ (function () {
function TelemetryEvent(eventName, correlationId) {
var _a;
this.startTimestamp = Date.now();
this.eventId = CryptoUtils_1.CryptoUtils.createNewGuid();
this.event = (_a = {},
_a[TelemetryUtils_1.prependEventNamePrefix(TelemetryConstants_2.EVENT_NAME_KEY)] = eventName,
_a[TelemetryUtils_1.prependEventNamePrefix(TelemetryConstants_2.START_TIME_KEY)] = this.startTimestamp,
_a[TelemetryUtils_1.prependEventNamePrefix(TelemetryConstants_2.ELAPSED_TIME_KEY)] = -1,
_a["" + TelemetryConstants_1.TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey] = correlationId,
_a);
}
TelemetryEvent.prototype.setElapsedTime = function (time) {
this.event[TelemetryUtils_1.prependEventNamePrefix(TelemetryConstants_2.ELAPSED_TIME_KEY)] = time;
};
TelemetryEvent.prototype.stop = function () {
// Set duration of event
this.setElapsedTime(+Date.now() - +this.startTimestamp);
};
Object.defineProperty(TelemetryEvent.prototype, "telemetryCorrelationId", {
get: function () {
return this.event["" + TelemetryConstants_1.TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey];
},
set: function (value) {
this.event["" + TelemetryConstants_1.TELEMETRY_BLOB_EVENT_NAMES.MsalCorrelationIdConstStrKey] = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(TelemetryEvent.prototype, "eventName", {
get: function () {
return this.event[TelemetryUtils_1.prependEventNamePrefix(TelemetryConstants_2.EVENT_NAME_KEY)];
},
enumerable: true,
configurable: true
});
TelemetryEvent.prototype.get = function () {
return tslib_1.__assign({}, this.event, { eventId: this.eventId });
};
return TelemetryEvent;
}());
exports.default = TelemetryEvent;
//# sourceMappingURL=TelemetryEvent.js.map