@pristine-ts/common 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/cjs/contexts/event-context.js +5 -5
- package/dist/lib/cjs/contexts/event-context.js.map +1 -1
- package/dist/lib/cjs/decorators/decorators.js +1 -0
- package/dist/lib/cjs/decorators/decorators.js.map +1 -1
- package/dist/lib/cjs/decorators/traced.decorator.js +101 -0
- package/dist/lib/cjs/decorators/traced.decorator.js.map +1 -0
- package/dist/lib/cjs/enums/enums.js +1 -0
- package/dist/lib/cjs/enums/enums.js.map +1 -1
- package/dist/lib/cjs/enums/span-keyname.enum.js +34 -0
- package/dist/lib/cjs/enums/span-keyname.enum.js.map +1 -0
- package/dist/lib/cjs/errors/bad-request.error.js +15 -0
- package/dist/lib/cjs/errors/bad-request.error.js.map +1 -0
- package/dist/lib/cjs/errors/config.error.js +20 -0
- package/dist/lib/cjs/errors/config.error.js.map +1 -0
- package/dist/lib/cjs/errors/conflict.error.js +15 -0
- package/dist/lib/cjs/errors/conflict.error.js.map +1 -0
- package/dist/lib/cjs/errors/errors.js +14 -1
- package/dist/lib/cjs/errors/errors.js.map +1 -1
- package/dist/lib/cjs/errors/exit-code.enum.js +50 -0
- package/dist/lib/cjs/errors/exit-code.enum.js.map +1 -0
- package/dist/lib/cjs/errors/forbidden.error.js +15 -0
- package/dist/lib/cjs/errors/forbidden.error.js.map +1 -0
- package/dist/lib/cjs/errors/internal.error.js +19 -0
- package/dist/lib/cjs/errors/internal.error.js.map +1 -0
- package/dist/lib/cjs/errors/not-found.error.js +15 -0
- package/dist/lib/cjs/errors/not-found.error.js.map +1 -0
- package/dist/lib/cjs/errors/pristine-error-code.enum.js +37 -0
- package/dist/lib/cjs/errors/pristine-error-code.enum.js.map +1 -0
- package/dist/lib/cjs/errors/pristine-error-kind.enum.js +29 -0
- package/dist/lib/cjs/errors/pristine-error-kind.enum.js.map +1 -0
- package/dist/lib/cjs/errors/pristine-error-options.interface.js +3 -0
- package/dist/lib/cjs/errors/pristine-error-options.interface.js.map +1 -0
- package/dist/lib/cjs/errors/pristine.error.js +109 -0
- package/dist/lib/cjs/errors/pristine.error.js.map +1 -0
- package/dist/lib/cjs/errors/unauthorized.error.js +15 -0
- package/dist/lib/cjs/errors/unauthorized.error.js.map +1 -0
- package/dist/lib/cjs/errors/usage.error.js +18 -0
- package/dist/lib/cjs/errors/usage.error.js.map +1 -0
- package/dist/lib/cjs/errors/validation.error.js +15 -0
- package/dist/lib/cjs/errors/validation.error.js.map +1 -0
- package/dist/lib/cjs/interfaces/interfaces.js +1 -0
- package/dist/lib/cjs/interfaces/interfaces.js.map +1 -1
- package/dist/lib/cjs/interfaces/tracing-manager.interface.js +3 -0
- package/dist/lib/cjs/interfaces/tracing-manager.interface.js.map +1 -0
- package/dist/lib/cjs/managers/event-context.manager.js +9 -0
- package/dist/lib/cjs/managers/event-context.manager.js.map +1 -1
- package/dist/lib/cjs/models/models.js +4 -0
- package/dist/lib/cjs/models/models.js.map +1 -1
- package/dist/lib/cjs/models/span-event.model.js +28 -0
- package/dist/lib/cjs/models/span-event.model.js.map +1 -0
- package/dist/lib/cjs/models/span-lifecycle-owner.interface.js +3 -0
- package/dist/lib/cjs/models/span-lifecycle-owner.interface.js.map +1 -0
- package/dist/lib/cjs/models/span.model.js +79 -0
- package/dist/lib/cjs/models/span.model.js.map +1 -0
- package/dist/lib/cjs/models/trace.model.js +46 -0
- package/dist/lib/cjs/models/trace.model.js.map +1 -0
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/esm/contexts/event-context.js +5 -5
- package/dist/lib/esm/contexts/event-context.js.map +1 -1
- package/dist/lib/esm/decorators/decorators.js +1 -0
- package/dist/lib/esm/decorators/decorators.js.map +1 -1
- package/dist/lib/esm/decorators/traced.decorator.js +98 -0
- package/dist/lib/esm/decorators/traced.decorator.js.map +1 -0
- package/dist/lib/esm/enums/enums.js +1 -0
- package/dist/lib/esm/enums/enums.js.map +1 -1
- package/dist/lib/esm/enums/span-keyname.enum.js +31 -0
- package/dist/lib/esm/enums/span-keyname.enum.js.map +1 -0
- package/dist/lib/esm/errors/bad-request.error.js +11 -0
- package/dist/lib/esm/errors/bad-request.error.js.map +1 -0
- package/dist/lib/esm/errors/config.error.js +16 -0
- package/dist/lib/esm/errors/config.error.js.map +1 -0
- package/dist/lib/esm/errors/conflict.error.js +11 -0
- package/dist/lib/esm/errors/conflict.error.js.map +1 -0
- package/dist/lib/esm/errors/errors.js +14 -1
- package/dist/lib/esm/errors/errors.js.map +1 -1
- package/dist/lib/esm/errors/exit-code.enum.js +47 -0
- package/dist/lib/esm/errors/exit-code.enum.js.map +1 -0
- package/dist/lib/esm/errors/forbidden.error.js +11 -0
- package/dist/lib/esm/errors/forbidden.error.js.map +1 -0
- package/dist/lib/esm/errors/internal.error.js +15 -0
- package/dist/lib/esm/errors/internal.error.js.map +1 -0
- package/dist/lib/esm/errors/not-found.error.js +11 -0
- package/dist/lib/esm/errors/not-found.error.js.map +1 -0
- package/dist/lib/esm/errors/pristine-error-code.enum.js +34 -0
- package/dist/lib/esm/errors/pristine-error-code.enum.js.map +1 -0
- package/dist/lib/esm/errors/pristine-error-kind.enum.js +26 -0
- package/dist/lib/esm/errors/pristine-error-kind.enum.js.map +1 -0
- package/dist/lib/esm/errors/pristine-error-options.interface.js +2 -0
- package/dist/lib/esm/errors/pristine-error-options.interface.js.map +1 -0
- package/dist/lib/esm/errors/pristine.error.js +105 -0
- package/dist/lib/esm/errors/pristine.error.js.map +1 -0
- package/dist/lib/esm/errors/unauthorized.error.js +11 -0
- package/dist/lib/esm/errors/unauthorized.error.js.map +1 -0
- package/dist/lib/esm/errors/usage.error.js +14 -0
- package/dist/lib/esm/errors/usage.error.js.map +1 -0
- package/dist/lib/esm/errors/validation.error.js +11 -0
- package/dist/lib/esm/errors/validation.error.js.map +1 -0
- package/dist/lib/esm/interfaces/interfaces.js +1 -0
- package/dist/lib/esm/interfaces/interfaces.js.map +1 -1
- package/dist/lib/esm/interfaces/tracing-manager.interface.js +2 -0
- package/dist/lib/esm/interfaces/tracing-manager.interface.js.map +1 -0
- package/dist/lib/esm/managers/event-context.manager.js +9 -0
- package/dist/lib/esm/managers/event-context.manager.js.map +1 -1
- package/dist/lib/esm/models/models.js +4 -0
- package/dist/lib/esm/models/models.js.map +1 -1
- package/dist/lib/esm/models/span-event.model.js +24 -0
- package/dist/lib/esm/models/span-event.model.js.map +1 -0
- package/dist/lib/esm/models/span-lifecycle-owner.interface.js +2 -0
- package/dist/lib/esm/models/span-lifecycle-owner.interface.js.map +1 -0
- package/dist/lib/esm/models/span.model.js +75 -0
- package/dist/lib/esm/models/span.model.js.map +1 -0
- package/dist/lib/esm/models/trace.model.js +42 -0
- package/dist/lib/esm/models/trace.model.js.map +1 -0
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/contexts/event-context.d.ts +24 -9
- package/dist/types/decorators/decorators.d.ts +1 -0
- package/dist/types/decorators/traced.decorator.d.ts +40 -0
- package/dist/types/enums/enums.d.ts +1 -0
- package/dist/types/enums/span-keyname.enum.d.ts +29 -0
- package/dist/types/errors/bad-request.error.d.ts +8 -0
- package/dist/types/errors/config.error.d.ts +13 -0
- package/dist/types/errors/conflict.error.d.ts +8 -0
- package/dist/types/errors/errors.d.ts +14 -1
- package/dist/types/errors/exit-code.enum.d.ts +45 -0
- package/dist/types/errors/forbidden.error.d.ts +8 -0
- package/dist/types/errors/internal.error.d.ts +12 -0
- package/dist/types/errors/not-found.error.d.ts +8 -0
- package/dist/types/errors/pristine-error-code.enum.d.ts +32 -0
- package/dist/types/errors/pristine-error-kind.enum.d.ts +24 -0
- package/dist/types/errors/pristine-error-options.interface.d.ts +59 -0
- package/dist/types/errors/pristine.error.d.ts +78 -0
- package/dist/types/errors/unauthorized.error.d.ts +8 -0
- package/dist/types/errors/usage.error.d.ts +11 -0
- package/dist/types/errors/validation.error.d.ts +8 -0
- package/dist/types/interfaces/interfaces.d.ts +1 -0
- package/dist/types/interfaces/module.interface.d.ts +26 -0
- package/dist/types/interfaces/tracing-manager.interface.d.ts +78 -0
- package/dist/types/managers/event-context.manager.d.ts +4 -0
- package/dist/types/models/models.d.ts +4 -0
- package/dist/types/models/span-event.model.d.ts +30 -0
- package/dist/types/models/span-lifecycle-owner.interface.d.ts +11 -0
- package/dist/types/models/span.model.d.ts +82 -0
- package/dist/types/models/trace.model.d.ts +53 -0
- package/package.json +2 -2
- package/dist/lib/cjs/errors/loggable.error.js +0 -19
- package/dist/lib/cjs/errors/loggable.error.js.map +0 -1
- package/dist/lib/esm/errors/loggable.error.js +0 -15
- package/dist/lib/esm/errors/loggable.error.js.map +0 -1
- package/dist/types/errors/loggable.error.d.ts +0 -8
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnauthorizedError = void 0;
|
|
4
|
+
const exit_code_enum_1 = require("./exit-code.enum");
|
|
5
|
+
const pristine_error_1 = require("./pristine.error");
|
|
6
|
+
const pristine_error_code_enum_1 = require("./pristine-error-code.enum");
|
|
7
|
+
const pristine_error_kind_enum_1 = require("./pristine-error-kind.enum");
|
|
8
|
+
/** 401. Caller is not authenticated. CLI exit `ExitCode.NoPermission` (77). */
|
|
9
|
+
class UnauthorizedError extends pristine_error_1.PristineError {
|
|
10
|
+
constructor(message = "Unauthorized", options = {}) {
|
|
11
|
+
super(message, Object.assign({ code: pristine_error_code_enum_1.PristineErrorCode.Unauthorized, httpStatus: 401, exitCode: exit_code_enum_1.ExitCode.NoPermission, kind: pristine_error_kind_enum_1.PristineErrorKind.UserError }, options));
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.UnauthorizedError = UnauthorizedError;
|
|
15
|
+
//# sourceMappingURL=unauthorized.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unauthorized.error.js","sourceRoot":"","sources":["../../../../src/errors/unauthorized.error.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAC1C,qDAA+C;AAC/C,yEAA6D;AAC7D,yEAA6D;AAK7D,+EAA+E;AAC/E,MAAa,iBAAkB,SAAQ,8BAAa;IAClD,YAAY,UAAkB,cAAc,EAAE,UAA2B,EAAE;QACzE,KAAK,CAAC,OAAO,kBACX,IAAI,EAAE,4CAAiB,CAAC,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,yBAAQ,CAAC,YAAY,EACtF,IAAI,EAAE,4CAAiB,CAAC,SAAS,IAC9B,OAAO,EACV,CAAC;IACL,CAAC;CACF;AARD,8CAQC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UsageError = void 0;
|
|
4
|
+
const exit_code_enum_1 = require("./exit-code.enum");
|
|
5
|
+
const pristine_error_1 = require("./pristine.error");
|
|
6
|
+
const pristine_error_code_enum_1 = require("./pristine-error-code.enum");
|
|
7
|
+
const pristine_error_kind_enum_1 = require("./pristine-error-kind.enum");
|
|
8
|
+
/**
|
|
9
|
+
* CLI-only — bad command-line usage (wrong flag, missing required arg, unknown command).
|
|
10
|
+
* No `httpStatus`. CLI exit `ExitCode.Usage` (64).
|
|
11
|
+
*/
|
|
12
|
+
class UsageError extends pristine_error_1.PristineError {
|
|
13
|
+
constructor(message, options = {}) {
|
|
14
|
+
super(message, Object.assign({ code: pristine_error_code_enum_1.PristineErrorCode.UsageError, exitCode: exit_code_enum_1.ExitCode.Usage, kind: pristine_error_kind_enum_1.PristineErrorKind.UserError }, options));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.UsageError = UsageError;
|
|
18
|
+
//# sourceMappingURL=usage.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.error.js","sourceRoot":"","sources":["../../../../src/errors/usage.error.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAC1C,qDAA+C;AAC/C,yEAA6D;AAC7D,yEAA6D;AAK7D;;;GAGG;AACH,MAAa,UAAW,SAAQ,8BAAa;IAC3C,YAAY,OAAe,EAAE,UAA2B,EAAE;QACxD,KAAK,CAAC,OAAO,kBACX,IAAI,EAAE,4CAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,yBAAQ,CAAC,KAAK,EAC5D,IAAI,EAAE,4CAAiB,CAAC,SAAS,IAC9B,OAAO,EACV,CAAC;IACL,CAAC;CACF;AARD,gCAQC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ValidationError = void 0;
|
|
4
|
+
const exit_code_enum_1 = require("./exit-code.enum");
|
|
5
|
+
const pristine_error_1 = require("./pristine.error");
|
|
6
|
+
const pristine_error_code_enum_1 = require("./pristine-error-code.enum");
|
|
7
|
+
const pristine_error_kind_enum_1 = require("./pristine-error-kind.enum");
|
|
8
|
+
/** 422. Input parsed but failed semantic validation. CLI exit `ExitCode.DataError` (65). */
|
|
9
|
+
class ValidationError extends pristine_error_1.PristineError {
|
|
10
|
+
constructor(message, options = {}) {
|
|
11
|
+
super(message, Object.assign({ code: pristine_error_code_enum_1.PristineErrorCode.ValidationFailed, httpStatus: 422, exitCode: exit_code_enum_1.ExitCode.DataError, kind: pristine_error_kind_enum_1.PristineErrorKind.UserError }, options));
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ValidationError = ValidationError;
|
|
15
|
+
//# sourceMappingURL=validation.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.error.js","sourceRoot":"","sources":["../../../../src/errors/validation.error.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAC1C,qDAA+C;AAC/C,yEAA6D;AAC7D,yEAA6D;AAK7D,4FAA4F;AAC5F,MAAa,eAAgB,SAAQ,8BAAa;IAChD,YAAY,OAAe,EAAE,UAA2B,EAAE;QACxD,KAAK,CAAC,OAAO,kBACX,IAAI,EAAE,4CAAiB,CAAC,gBAAgB,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,yBAAQ,CAAC,SAAS,EACvF,IAAI,EAAE,4CAAiB,CAAC,SAAS,IAC9B,OAAO,EACV,CAAC;IACL,CAAC;CACF;AARD,0CAQC"}
|
|
@@ -25,5 +25,6 @@ __exportStar(require("./module-scoped-registration.interface"), exports);
|
|
|
25
25
|
__exportStar(require("./resolver.interface"), exports);
|
|
26
26
|
__exportStar(require("./tagged-registration.interface"), exports);
|
|
27
27
|
__exportStar(require("./token-provider-registration.interface"), exports);
|
|
28
|
+
__exportStar(require("./tracing-manager.interface"), exports);
|
|
28
29
|
__exportStar(require("./value-provider-registration.interface"), exports);
|
|
29
30
|
//# sourceMappingURL=interfaces.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/interfaces/interfaces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0EAAwD;AACxD,4DAA0C;AAC1C,6EAA2D;AAC3D,4EAA0D;AAC1D,uDAAqC;AACrC,qDAAmC;AACnC,yEAAuD;AACvD,uDAAqC;AACrC,kEAAgD;AAChD,0EAAwD;AACxD,0EAAwD"}
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/interfaces/interfaces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0EAAwD;AACxD,4DAA0C;AAC1C,6EAA2D;AAC3D,4EAA0D;AAC1D,uDAAqC;AACrC,qDAAmC;AACnC,yEAAuD;AACvD,uDAAqC;AACrC,kEAAgD;AAChD,0EAAwD;AACxD,8DAA4C;AAC5C,0EAAwD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracing-manager.interface.js","sourceRoot":"","sources":["../../../../src/interfaces/tracing-manager.interface.ts"],"names":[],"mappings":""}
|
|
@@ -56,6 +56,11 @@ let EventContextManager = EventContextManager_1 = class EventContextManager {
|
|
|
56
56
|
var _a;
|
|
57
57
|
return (_a = this.current()) === null || _a === void 0 ? void 0 : _a.container;
|
|
58
58
|
}
|
|
59
|
+
/** Convenience: the `TracingManager` that owns this event's trace, or `undefined`. */
|
|
60
|
+
tracingManager() {
|
|
61
|
+
var _a;
|
|
62
|
+
return (_a = this.current()) === null || _a === void 0 ? void 0 : _a.tracingManager;
|
|
63
|
+
}
|
|
59
64
|
/**
|
|
60
65
|
* Returns a wrapped version of `fn` that restores the current context on call. Use
|
|
61
66
|
* when you need to spawn work that escapes the natural async chain (e.g. a callback
|
|
@@ -91,6 +96,10 @@ let EventContextManager = EventContextManager_1 = class EventContextManager {
|
|
|
91
96
|
var _a;
|
|
92
97
|
return (_a = EventContextManager_1.current()) === null || _a === void 0 ? void 0 : _a.container;
|
|
93
98
|
}
|
|
99
|
+
static tracingManager() {
|
|
100
|
+
var _a;
|
|
101
|
+
return (_a = EventContextManager_1.current()) === null || _a === void 0 ? void 0 : _a.tracingManager;
|
|
102
|
+
}
|
|
94
103
|
static bind(fn) {
|
|
95
104
|
const ctx = EventContextManager_1.current();
|
|
96
105
|
if (ctx === undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-context.manager.js","sourceRoot":"","sources":["../../../../src/managers/event-context.manager.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,6CAA8C;AAC9C,uCAAyD;
|
|
1
|
+
{"version":3,"file":"event-context.manager.js","sourceRoot":"","sources":["../../../../src/managers/event-context.manager.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,6CAA8C;AAC9C,uCAAyD;AAIzD;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEI,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAU9B,GAAG,CAAI,GAAiB,EAAE,EAAwB;QAChD,OAAO,qBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED;iDAC6C;IAC7C,OAAO;QACL,OAAO,qBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,wEAAwE;IACxE,OAAO;;QACL,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC;IACjC,CAAC;IAED,wEAAwE;IACxE,OAAO;;QACL,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC;IACjC,CAAC;IAED,qEAAqE;IACrE,SAAS;;QACP,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,SAAS,CAAC;IACnC,CAAC;IAED,sFAAsF;IACtF,cAAc;;QACZ,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,cAAc,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,IAAI,CAAoC,EAAK;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,qBAAmB,CAAC,GAAG,CAAC;QACpC,OAAO,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;IACpE,CAAC;IAED,kFAAkF;IAClF,+EAA+E;IAC/E,+EAA+E;IAC/E,uBAAuB;IAEvB,MAAM,CAAC,OAAO;QACZ,OAAO,qBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,OAAO;;QACZ,OAAO,MAAA,qBAAmB,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,OAAO;;QACZ,OAAO,MAAA,qBAAmB,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,SAAS;;QACd,OAAO,MAAA,qBAAmB,CAAC,OAAO,EAAE,0CAAE,SAAS,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,cAAc;;QACnB,OAAO,MAAA,qBAAmB,CAAC,OAAO,EAAE,0CAAE,cAAc,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,IAAI,CAAoC,EAAK;QAClD,MAAM,GAAG,GAAG,qBAAmB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,qBAAmB,CAAC,GAAG,CAAC;QACpC,OAAO,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;IACpE,CAAC;;AAtFU,kDAAmB;AACN,uBAAG,GAAG,IAAI,+BAAiB,EAAgB,AAAxC,CAAyC;8BADzD,mBAAmB;IAD/B,IAAA,qBAAU,GAAE;GACA,mBAAmB,CAuF/B"}
|
|
@@ -16,4 +16,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./request"), exports);
|
|
18
18
|
__exportStar(require("./response"), exports);
|
|
19
|
+
__exportStar(require("./span-event.model"), exports);
|
|
20
|
+
__exportStar(require("./span-lifecycle-owner.interface"), exports);
|
|
21
|
+
__exportStar(require("./span.model"), exports);
|
|
22
|
+
__exportStar(require("./trace.model"), exports);
|
|
19
23
|
//# sourceMappingURL=models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/models/models.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/models/models.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B;AAC3B,qDAAmC;AACnC,mEAAiD;AACjD,+CAA6B;AAC7B,gDAA8B"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SpanEvent = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A named, timestamped marker attached to a `Span`. Represents a noteworthy moment
|
|
6
|
+
* inside the span's lifetime that doesn't warrant a child span of its own — e.g.
|
|
7
|
+
* "validation passed", "rate limit check ok", "found 50 rows in DB".
|
|
8
|
+
*
|
|
9
|
+
* Modeled after OpenTelemetry's "span events" concept: a `Span` carries `events: SpanEvent[]`
|
|
10
|
+
* alongside its `children: Span[]`. Renderers (the console/file tracer output, etc.) interleave
|
|
11
|
+
* events with spans by timestamp to produce a chronological trail of what happened during the span.
|
|
12
|
+
*
|
|
13
|
+
* Use `TracingManager.addEventToCurrentSpan(message, attributes?)` to add one — it finds
|
|
14
|
+
* the most-recently-started in-progress span and attaches the event there.
|
|
15
|
+
*/
|
|
16
|
+
class SpanEvent {
|
|
17
|
+
constructor(message, attributes) {
|
|
18
|
+
this.message = message;
|
|
19
|
+
/**
|
|
20
|
+
* The timestamp in milliseconds at which the event was created. Used to interleave
|
|
21
|
+
* events with sibling spans when rendering a sorted trail.
|
|
22
|
+
*/
|
|
23
|
+
this.timestamp = Date.now();
|
|
24
|
+
this.attributes = attributes;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SpanEvent = SpanEvent;
|
|
28
|
+
//# sourceMappingURL=span-event.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"span-event.model.js","sourceRoot":"","sources":["../../../../src/models/span-event.model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;GAWG;AACH,MAAa,SAAS;IAapB,YAA4B,OAAe,EAAE,UAAsC;QAAvD,YAAO,GAAP,OAAO,CAAQ;QAZ3C;;;WAGG;QACa,cAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAS7C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAhBD,8BAgBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"span-lifecycle-owner.interface.js","sourceRoot":"","sources":["../../../../src/models/span-lifecycle-owner.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Span = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
/**
|
|
6
|
+
* This model represents a span.
|
|
7
|
+
*/
|
|
8
|
+
class Span {
|
|
9
|
+
/**
|
|
10
|
+
* This model represents a span.
|
|
11
|
+
* @param keyname The keyname of the span.
|
|
12
|
+
* @param id The unique id of the span.
|
|
13
|
+
* @param context The context to associate with the span.
|
|
14
|
+
*/
|
|
15
|
+
constructor(keyname, id, context) {
|
|
16
|
+
this.keyname = keyname;
|
|
17
|
+
/**
|
|
18
|
+
* The timestamp in milliseconds at which the span was started.
|
|
19
|
+
*/
|
|
20
|
+
this.startDate = Date.now();
|
|
21
|
+
/**
|
|
22
|
+
* The children spans.
|
|
23
|
+
*/
|
|
24
|
+
this.children = [];
|
|
25
|
+
/**
|
|
26
|
+
* Named, timestamped markers attached to this span. Use these for noteworthy moments
|
|
27
|
+
* inside the span's lifetime that don't warrant their own child span — e.g.
|
|
28
|
+
* "validation passed", "found 50 rows in DB". Empty by default; populated by
|
|
29
|
+
* `TracingManager.addEventToCurrentSpan(...)`.
|
|
30
|
+
*/
|
|
31
|
+
this.events = [];
|
|
32
|
+
/**
|
|
33
|
+
* The context associated with the span.
|
|
34
|
+
*/
|
|
35
|
+
this.context = {};
|
|
36
|
+
/**
|
|
37
|
+
* Whether or not the span is in progress, meaning it has not ended.
|
|
38
|
+
*/
|
|
39
|
+
this.inProgress = true;
|
|
40
|
+
this.id = id !== null && id !== void 0 ? id : (0, crypto_1.randomUUID)();
|
|
41
|
+
this.context = context !== null && context !== void 0 ? context : {};
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* This method returns the duration of the span in milliseconds.
|
|
45
|
+
*/
|
|
46
|
+
getDuration() {
|
|
47
|
+
var _a;
|
|
48
|
+
return ((_a = this.endDate) !== null && _a !== void 0 ? _a : Date.now()) - this.startDate;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* This method ends the span.
|
|
52
|
+
*/
|
|
53
|
+
end() {
|
|
54
|
+
var _a;
|
|
55
|
+
(_a = this.tracingManager) === null || _a === void 0 ? void 0 : _a.endSpan(this);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* This method sets the trace for the span and all of its children.
|
|
59
|
+
* @param trace The trace the span should be attached to.
|
|
60
|
+
*/
|
|
61
|
+
setTrace(trace) {
|
|
62
|
+
this.trace = trace;
|
|
63
|
+
this.children.forEach(childSpan => childSpan.setTrace(trace));
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* This method adds a child span to the current span. It only adds it if it's not already part of the children.
|
|
67
|
+
* @param span The span to add as a child.
|
|
68
|
+
*/
|
|
69
|
+
addChild(span) {
|
|
70
|
+
const existingChildSpan = this.children.find(childSpan => childSpan.id === span.id);
|
|
71
|
+
if (existingChildSpan) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
span.parentSpan = this;
|
|
75
|
+
this.children.push(span);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.Span = Span;
|
|
79
|
+
//# sourceMappingURL=span.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"span.model.js","sourceRoot":"","sources":["../../../../src/models/span.model.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAKlC;;GAEG;AACH,MAAa,IAAI;IAuDf;;;;;OAKG;IACH,YAA0B,OAAe,EAAE,EAAW,EAAE,OAAmC;QAAjE,YAAO,GAAP,OAAO,CAAQ;QA5CzC;;WAEG;QACI,cAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAYtC;;WAEG;QACI,aAAQ,GAAW,EAAE,CAAC;QAE7B;;;;;WAKG;QACI,WAAM,GAAgB,EAAE,CAAC;QAEhC;;WAEG;QACI,YAAO,GAA8B,EAAE,CAAC;QAE/C;;WAEG;QACI,eAAU,GAAG,IAAI,CAAC;QASvB,IAAI,CAAC,EAAE,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,IAAA,mBAAU,GAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,WAAW;;QAChB,OAAO,CAAC,MAAA,IAAI,CAAC,OAAO,mCAAI,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,GAAG;;QACR,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,KAAY;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,IAAU;QACxB,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;QAEpF,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACF;AAxGD,oBAwGC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Trace = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
/**
|
|
6
|
+
* This model represents a trace.
|
|
7
|
+
*/
|
|
8
|
+
class Trace {
|
|
9
|
+
/**
|
|
10
|
+
* This model represents a trace.
|
|
11
|
+
* @param id The unique id of the trace.
|
|
12
|
+
* @param context The context associated with the trace.
|
|
13
|
+
*/
|
|
14
|
+
constructor(id, context) {
|
|
15
|
+
/**
|
|
16
|
+
* The timestamp in milliseconds at which the trace was started.
|
|
17
|
+
*/
|
|
18
|
+
this.startDate = Date.now();
|
|
19
|
+
/**
|
|
20
|
+
* Index of all spans in this trace by keyname, populated by `TracingManager.addSpan`.
|
|
21
|
+
* Lives on the Trace (not on a particular TracingManager instance) so any TracingManager
|
|
22
|
+
* reading the active trace through `EventContext.trace` sees the same index — required
|
|
23
|
+
* for cross-container span lookup (kernel-resolved manager vs per-event resolved manager).
|
|
24
|
+
*/
|
|
25
|
+
this.spansByKeyname = {};
|
|
26
|
+
/**
|
|
27
|
+
* The context associated with the trace.
|
|
28
|
+
*/
|
|
29
|
+
this.context = {};
|
|
30
|
+
/**
|
|
31
|
+
* Whether or not the trace was ended.
|
|
32
|
+
*/
|
|
33
|
+
this.hasEnded = false;
|
|
34
|
+
this.id = id !== null && id !== void 0 ? id : (0, crypto_1.randomUUID)();
|
|
35
|
+
this.context = context !== null && context !== void 0 ? context : {};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* This returns the duration of the trace in miliseconds.
|
|
39
|
+
*/
|
|
40
|
+
getDuration() {
|
|
41
|
+
var _a;
|
|
42
|
+
return ((_a = this.endDate) !== null && _a !== void 0 ? _a : Date.now()) - this.startDate;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.Trace = Trace;
|
|
46
|
+
//# sourceMappingURL=trace.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.model.js","sourceRoot":"","sources":["../../../../src/models/trace.model.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAGlC;;GAEG;AACH,MAAa,KAAK;IAuChB;;;;OAIG;IACH,YAAmB,EAAW,EAAE,OAAmC;QAtCnE;;WAEG;QACI,cAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAYtC;;;;;WAKG;QACI,mBAAc,GAAkC,EAAE,CAAC;QAE1D;;WAEG;QACI,YAAO,GAA+B,EAAE,CAAC;QAEhD;;WAEG;QACI,aAAQ,GAAY,KAAK,CAAC;QAQ/B,IAAI,CAAC,EAAE,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,IAAA,mBAAU,GAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,WAAW;;QAChB,OAAO,CAAC,MAAA,IAAI,CAAC,OAAO,mCAAI,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;IACvD,CAAC;CACF;AAvDD,sBAuDC"}
|