@interopio/otel 0.1.8 → 0.1.11
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/builder.js +5 -1
- package/dist/builder.js.map +1 -1
- package/dist/container.js +14 -11
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/traces/bufferingTracesManager.d.ts +62 -0
- package/dist/traces/bufferingTracesManager.js +300 -0
- package/dist/traces/bufferingTracesManager.js.map +1 -0
- package/dist/traces/bufferingTracingState.d.ts +74 -0
- package/dist/traces/bufferingTracingState.js +120 -0
- package/dist/traces/bufferingTracingState.js.map +1 -0
- package/dist/traces/nullTracesManager.js +2 -2
- package/dist/traces/nullTracesManager.js.map +1 -1
- package/dist/traces/nullTracingState.d.ts +2 -1
- package/dist/traces/nullTracingState.js +2 -1
- package/dist/traces/nullTracingState.js.map +1 -1
- package/dist/traces/traces.d.ts +12 -7
- package/dist/traces/traces.js +48 -1
- package/dist/traces/traces.js.map +1 -1
- package/insights.d.ts +275 -4
- package/package.json +1 -1
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createRecordedSpan = createRecordedSpan;
|
|
4
|
+
function randomHex(bytes) {
|
|
5
|
+
let out = "";
|
|
6
|
+
for (let i = 0; i < bytes * 2; i++) {
|
|
7
|
+
out += Math.floor(Math.random() * 16).toString(16);
|
|
8
|
+
}
|
|
9
|
+
return out;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Creates a fresh {@link RecordedSpan} with a synthetic W3C traceparent.
|
|
13
|
+
*/
|
|
14
|
+
function createRecordedSpan(source, filteringContext, explicitPropagationInfo, options, startTime) {
|
|
15
|
+
return {
|
|
16
|
+
source,
|
|
17
|
+
filteringContext,
|
|
18
|
+
explicitPropagationInfo,
|
|
19
|
+
options,
|
|
20
|
+
startTime,
|
|
21
|
+
events: [],
|
|
22
|
+
addedData: [],
|
|
23
|
+
exceptions: [],
|
|
24
|
+
children: [],
|
|
25
|
+
syntheticPropagationInfo: {
|
|
26
|
+
traceparent: `00-${randomHex(16)}-${randomHex(8)}-01`,
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A no-op-for-OTEL TracingState that records everything into a {@link RecordedSpan}
|
|
32
|
+
* instead of writing to a live span. Verbosity/level filtering is intentionally
|
|
33
|
+
* NOT applied here (the real level isn't known until settings are loaded) — every
|
|
34
|
+
* addData call is recorded and filtered when replayed by the real TracingState.
|
|
35
|
+
*/
|
|
36
|
+
class BufferingTracingState {
|
|
37
|
+
constructor(node, disablePropagation) {
|
|
38
|
+
this.node = node;
|
|
39
|
+
this.disablePropagation = disablePropagation;
|
|
40
|
+
this.hasEnded = false;
|
|
41
|
+
// The buffer is only ever populated when recording is desired, so it always
|
|
42
|
+
// reports as recording — otherwise instrumented code would skip gathering the
|
|
43
|
+
// attributes we want to replay.
|
|
44
|
+
this.enabled = true;
|
|
45
|
+
// Cosmetic during buffering: real verbosity filtering happens at replay.
|
|
46
|
+
this.level = "LOWEST";
|
|
47
|
+
}
|
|
48
|
+
get source() {
|
|
49
|
+
return this.node.source;
|
|
50
|
+
}
|
|
51
|
+
set source(value) {
|
|
52
|
+
this.node.source = value;
|
|
53
|
+
}
|
|
54
|
+
get startTime() {
|
|
55
|
+
return this.node.startTime;
|
|
56
|
+
}
|
|
57
|
+
get endTime() {
|
|
58
|
+
return this.node.endTime;
|
|
59
|
+
}
|
|
60
|
+
get id() {
|
|
61
|
+
var _a;
|
|
62
|
+
return (_a = this.node.syntheticPropagationInfo.traceparent) === null || _a === void 0 ? void 0 : _a.split("-")[2];
|
|
63
|
+
}
|
|
64
|
+
get traceId() {
|
|
65
|
+
var _a;
|
|
66
|
+
return (_a = this.node.syntheticPropagationInfo.traceparent) === null || _a === void 0 ? void 0 : _a.split("-")[1];
|
|
67
|
+
}
|
|
68
|
+
set status(status) {
|
|
69
|
+
this.node.status = Object.assign({}, status);
|
|
70
|
+
}
|
|
71
|
+
get status() {
|
|
72
|
+
var _a;
|
|
73
|
+
return (_a = this.node.status) !== null && _a !== void 0 ? _a : { code: 0 /* SpanStatusCode.UNSET */ };
|
|
74
|
+
}
|
|
75
|
+
end() {
|
|
76
|
+
void this.endSpan();
|
|
77
|
+
}
|
|
78
|
+
endSpan(endTime, allowDoubleEnd) {
|
|
79
|
+
if (this.hasEnded && !allowDoubleEnd) {
|
|
80
|
+
return Promise.resolve();
|
|
81
|
+
}
|
|
82
|
+
if (!this.hasEnded) {
|
|
83
|
+
this.hasEnded = true;
|
|
84
|
+
this.node.endTime = endTime !== null && endTime !== void 0 ? endTime : new Date();
|
|
85
|
+
}
|
|
86
|
+
return Promise.resolve();
|
|
87
|
+
}
|
|
88
|
+
addEvent(name, attributesOrStartTime, startTime) {
|
|
89
|
+
this.node.events.push({ name, attributesOrStartTime, startTime });
|
|
90
|
+
return this;
|
|
91
|
+
}
|
|
92
|
+
recordException(exception, time) {
|
|
93
|
+
this.node.exceptions.push({ exception, time });
|
|
94
|
+
}
|
|
95
|
+
isRecording() {
|
|
96
|
+
return !this.hasEnded;
|
|
97
|
+
}
|
|
98
|
+
updateName(name) {
|
|
99
|
+
this.node.updatedName = name;
|
|
100
|
+
this.node.source = name;
|
|
101
|
+
return this;
|
|
102
|
+
}
|
|
103
|
+
spanContext() {
|
|
104
|
+
return undefined;
|
|
105
|
+
}
|
|
106
|
+
addData(level, data) {
|
|
107
|
+
const resolved = typeof data === "function" ? data() : data;
|
|
108
|
+
this.node.addedData.push({ level, data: resolved });
|
|
109
|
+
}
|
|
110
|
+
getPropagationInfo() {
|
|
111
|
+
return this.node.syntheticPropagationInfo;
|
|
112
|
+
}
|
|
113
|
+
injectPropagationInfo(carrier) {
|
|
114
|
+
if (!this.disablePropagation) {
|
|
115
|
+
carrier.__interopIOTracePropagationInfo = this.node.syntheticPropagationInfo;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.default = BufferingTracingState;
|
|
120
|
+
//# sourceMappingURL=bufferingTracingState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bufferingTracingState.js","sourceRoot":"","sources":["../../src/traces/bufferingTracingState.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ class NullTracesManager extends nullManager_1.NullManager {
|
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
45
|
get currentTracingState() {
|
|
46
|
-
return new nullTracingState_1.default("nullTracingState", null, true);
|
|
46
|
+
return new nullTracingState_1.default("nullTracingState", null, true, null);
|
|
47
47
|
}
|
|
48
48
|
set currentTracingState(ts) {
|
|
49
49
|
}
|
|
@@ -83,7 +83,7 @@ class NullTracesManager extends nullManager_1.NullManager {
|
|
|
83
83
|
// extractedPI = Traces.currentTracingState?.getPropagationInfo() || null;
|
|
84
84
|
// }
|
|
85
85
|
// const nts = new NullTracingState(source, extractedPI);
|
|
86
|
-
const nts = new nullTracingState_1.default(source, null, true);
|
|
86
|
+
const nts = new nullTracingState_1.default(source, null, true, null);
|
|
87
87
|
traces_1.default.currentTracingState = nts;
|
|
88
88
|
try {
|
|
89
89
|
return actualCallback(nts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nullTracesManager.js","sourceRoot":"","sources":["../../src/traces/nullTracesManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0EAAkD;AAClD,sDAA8B;AAE9B,gDAA6C;AAC7C,4DAAwD;AACxD,MAAa,iBAAkB,SAAQ,yBAAsC;IAE3E,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,IAAK,EAAgC,CAAC;IAC7D,CAAC;IACD,IAAW,QAAQ,CAAC,KAAgC;QAClD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,YAAoB,SAAgD,EAAE,YAA6C,EAAU,MAAqC;QAChK,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,oBAAoB,MAAK,KAAK,EAAE,CAAC;YACjD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,4CAA4C,IAAA,8BAAa,EAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,KAAK,EAAE,CAAC;QAJU,cAAS,GAAT,SAAS,CAAuC;QAAyD,WAAM,GAAN,MAAM,CAA+B;IAKlK,CAAC;IAEY,gBAAgB,CAC3B,MAAc,EACd,0BAGQ,EACR,iBAGQ,EACR,QACkC;;YAClC,OAAO,IAAI,CAAC,kBAAkB,CAC5B,MAAM,EACN,MAAM,GAAG,QAAQ,EACjB,0BAA0B,EAC1B,iBAAiB,EACjB,QAAQ,CAAC,CAAC;QACd,CAAC;KAAA;IAEY,kBAAkB,CAC7B,MAAc,EACd,SAEQ,EACR,0BAGQ,EACR,iBAGQ,EACR,QACkC;;YAElC,OAAO,IAAI,CAAC,QAAQ,CAClB,MAAM,EACN,0BAA0B,EAC1B,IAAI,EACJ,iBAAsD,EACtD,QAAQ,CAAC,CAAC;QACd,CAAC;KAAA;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,0BAAgB,CAAC,kBAAkB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"nullTracesManager.js","sourceRoot":"","sources":["../../src/traces/nullTracesManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,9 @@ export default class NullTracingState implements IOInsights.TracingState {
|
|
|
4
4
|
source: string;
|
|
5
5
|
private propagationInfo;
|
|
6
6
|
private disablePropagation;
|
|
7
|
+
matchingFilter: IOInsights.SpanFilter | undefined | null;
|
|
7
8
|
private currentSpanStatus;
|
|
8
|
-
constructor(source: string, propagationInfo: IOInsights.PropagationInfo | null, disablePropagation: boolean);
|
|
9
|
+
constructor(source: string, propagationInfo: IOInsights.PropagationInfo | null, disablePropagation: boolean, matchingFilter: IOInsights.SpanFilter | undefined | null);
|
|
9
10
|
level: "OFF";
|
|
10
11
|
endSpan(): Promise<void>;
|
|
11
12
|
get enabled(): boolean;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
class NullTracingState {
|
|
4
|
-
constructor(source, propagationInfo, disablePropagation) {
|
|
4
|
+
constructor(source, propagationInfo, disablePropagation, matchingFilter) {
|
|
5
5
|
this.source = source;
|
|
6
6
|
this.propagationInfo = propagationInfo;
|
|
7
7
|
this.disablePropagation = disablePropagation;
|
|
8
|
+
this.matchingFilter = matchingFilter;
|
|
8
9
|
this.currentSpanStatus = { code: 0 /*SpanStatusCode.UNSET*/ };
|
|
9
10
|
this.level = "OFF";
|
|
10
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nullTracingState.js","sourceRoot":"","sources":["../../src/traces/nullTracingState.ts"],"names":[],"mappings":";;AAQA,MAAqB,gBAAgB;IAInC,YACS,MAAc,EACb,eAAkD,EAClD,kBAA2B;
|
|
1
|
+
{"version":3,"file":"nullTracingState.js","sourceRoot":"","sources":["../../src/traces/nullTracingState.ts"],"names":[],"mappings":";;AAQA,MAAqB,gBAAgB;IAInC,YACS,MAAc,EACb,eAAkD,EAClD,kBAA2B,EAC5B,cAAwD;QAHxD,WAAM,GAAN,MAAM,CAAQ;QACb,oBAAe,GAAf,eAAe,CAAmC;QAClD,uBAAkB,GAAlB,kBAAkB,CAAS;QAC5B,mBAAc,GAAd,cAAc,CAA0C;QANzD,sBAAiB,GAAe,EAAE,IAAI,EAAE,CAAQ,CAAC,wBAAwB,EAAE,CAAC;QAQpF,UAAK,GAAG,KAAc,CAAC;IAF6C,CAAC;IAI9D,OAAO;QACZ,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAW,EAAE;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAW,MAAM,CAAC,MAAkB;QAClC,IAAI,CAAC,iBAAiB,qBAAQ,MAAM,CAAE,CAAC;IACzC,CAAC;IACD,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAEM,QAAQ,CACb,IAAY,EACZ,qBAA8C,EAC9C,SAAqB;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;IACM,eAAe,CAAC,SAAoB,EAAE,IAAgB,IAAG,CAAC;IAC1D,WAAW;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IACM,UAAU,CAAC,IAAY;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IACM,WAAW;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,OAAO,CAAC,KAAuE,EAAE,IAA6B;IACrH,CAAC;IAEM,GAAG,KAAU,CAAC;IAEd,kBAAkB;QACvB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;QACZ,wEAAwE;QACxE,+BAA+B;QAC/B,yDAAyD;QACzD,0BAA0B;IAC5B,CAAC;IAEM,qBAAqB,CAAC,OAA0C;QACrE,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACrD,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC,eAAe,CAAC;QACjE,CAAC;IACH,CAAC;CACF;AAzED,mCAyEC"}
|
package/dist/traces/traces.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TracingState } from "..";
|
|
1
2
|
import { IOInsights } from "../../insights";
|
|
2
3
|
/**
|
|
3
4
|
* Null-safe singleton class that can be invoked even if you haven't initialized
|
|
@@ -10,6 +11,11 @@ export default class Traces {
|
|
|
10
11
|
static get currentTracingState(): IOInsights.TracingState;
|
|
11
12
|
static set currentTracingState(value: IOInsights.TracingState | null);
|
|
12
13
|
static removePropagationInfo(propagationInfoCarrier: IOInsights.PropagationInfo | IOInsights.PropagationInfoCarrier | null | undefined): IOInsights.PropagationInfo | IOInsights.PropagationInfoCarrier | null | undefined;
|
|
14
|
+
static readPropagationInfo(propagationInfoCarrier: {
|
|
15
|
+
traceId: string;
|
|
16
|
+
spanId: string;
|
|
17
|
+
traceFlags?: number;
|
|
18
|
+
}, tracestate?: string, forceTracing?: boolean): IOInsights.PropagationInfo | null;
|
|
13
19
|
static extractPropagationInfo(propagationInfoCarrier: IOInsights.PropagationInfo | IOInsights.PropagationInfoCarrier | null | undefined, deleteProperty?: boolean | undefined): IOInsights.PropagationInfo | null;
|
|
14
20
|
withSequenceSpanEx<T>(source: string, traceName: string | null, callback: IOInsights.WithSpanCallback<T>): Promise<T>;
|
|
15
21
|
withSequenceSpanEx<T>(source: string, traceName: string | null, filteringContext: IOInsights.FilteringContext | null, callback: IOInsights.WithSpanCallback<T>): Promise<T>;
|
|
@@ -24,12 +30,11 @@ export default class Traces {
|
|
|
24
30
|
static isAsyncFunction(value: any): boolean;
|
|
25
31
|
static withTypedSpanWrapper<T extends Function>(source: string, wrappedFunction: T): T;
|
|
26
32
|
static withTypedSpanWrapper<T extends Function>(source: string, decoratorOptions: IOInsights.WithSpanDecoratorOptions | null, wrappedFunction: T): T;
|
|
27
|
-
static withSpans<T>(tracingMap: TracingMap<T>, objectToTrace: T): T;
|
|
33
|
+
static withSpans<T>(tracingMap: IOInsights.TracingMap<T>, objectToTrace: T): T;
|
|
34
|
+
static openSpan<T>(source: string, context: IOInsights.FilteringContext | null, propagationInfo?: IOInsights.PropagationInfo | IOInsights.PropagationInfoCarrier | null, options?: IOInsights.WithSpanOptions | null): ({
|
|
35
|
+
ts: TracingState;
|
|
36
|
+
resolve: (arg: T) => void;
|
|
37
|
+
reject: (reason?: any) => void;
|
|
38
|
+
});
|
|
28
39
|
}
|
|
29
|
-
export type TracingMap<T> = {
|
|
30
|
-
[propertyName in keyof Partial<T>]: ({
|
|
31
|
-
source: string;
|
|
32
|
-
decoratorOptions?: IOInsights.WithSpanDecoratorOptions;
|
|
33
|
-
} | string);
|
|
34
|
-
};
|
|
35
40
|
export declare const withSpan: typeof Traces.withSpan;
|
package/dist/traces/traces.js
CHANGED
|
@@ -36,7 +36,7 @@ class Traces {
|
|
|
36
36
|
}
|
|
37
37
|
static get currentTracingState() {
|
|
38
38
|
var _a;
|
|
39
|
-
return ((_a = Traces.instance) === null || _a === void 0 ? void 0 : _a.currentTracingState) || new nullTracingState_1.default("unknown", null, true);
|
|
39
|
+
return ((_a = Traces.instance) === null || _a === void 0 ? void 0 : _a.currentTracingState) || new nullTracingState_1.default("unknown", null, true, null);
|
|
40
40
|
}
|
|
41
41
|
static set currentTracingState(value) {
|
|
42
42
|
if (Traces.instance) {
|
|
@@ -47,6 +47,36 @@ class Traces {
|
|
|
47
47
|
Traces.extractPropagationInfo(propagationInfoCarrier, true);
|
|
48
48
|
return propagationInfoCarrier;
|
|
49
49
|
}
|
|
50
|
+
static readPropagationInfo(propagationInfoCarrier, tracestate, forceTracing) {
|
|
51
|
+
const { traceId, spanId, traceFlags } = propagationInfoCarrier;
|
|
52
|
+
function padHex(num) {
|
|
53
|
+
if (!num) {
|
|
54
|
+
return "00";
|
|
55
|
+
}
|
|
56
|
+
return ('0' + num.toString(16)).slice(-2); //9A
|
|
57
|
+
}
|
|
58
|
+
// https://www.w3.org/TR/trace-context/#traceparent-header
|
|
59
|
+
const traceparent = `00-${traceId}-${spanId}-${padHex(traceFlags !== null && traceFlags !== void 0 ? traceFlags : 0)}`.toLowerCase();
|
|
60
|
+
const match = traceparent.match(/^00-([0-9a-f]{32})-([0-9a-f]{16})-[0-9a-f]{2}$/);
|
|
61
|
+
if (match &&
|
|
62
|
+
match[1].split("").some(x => x != "0") &&
|
|
63
|
+
match[2].split("").some(x => x != "0") &&
|
|
64
|
+
(!traceFlags || traceFlags < 256)) {
|
|
65
|
+
const toReturn = {
|
|
66
|
+
traceparent,
|
|
67
|
+
};
|
|
68
|
+
if (tracestate) {
|
|
69
|
+
toReturn.tracestate = tracestate;
|
|
70
|
+
}
|
|
71
|
+
if (forceTracing) {
|
|
72
|
+
toReturn.forceTracing = forceTracing;
|
|
73
|
+
}
|
|
74
|
+
return toReturn;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
50
80
|
static extractPropagationInfo(propagationInfoCarrier, deleteProperty) {
|
|
51
81
|
if (propagationInfoCarrier === null || propagationInfoCarrier === void 0 ? void 0 : propagationInfoCarrier.traceparent) {
|
|
52
82
|
return propagationInfoCarrier;
|
|
@@ -148,6 +178,23 @@ class Traces {
|
|
|
148
178
|
}
|
|
149
179
|
return objectToTrace;
|
|
150
180
|
}
|
|
181
|
+
static openSpan(source, context, propagationInfo, options) {
|
|
182
|
+
let resolve = () => { };
|
|
183
|
+
let reject = () => { };
|
|
184
|
+
let ts = new nullTracingState_1.default(source, Traces.extractPropagationInfo(propagationInfo), false, null);
|
|
185
|
+
Traces.withSpan(source, context !== null && context !== void 0 ? context : {}, propagationInfo !== null && propagationInfo !== void 0 ? propagationInfo : null, options !== null && options !== void 0 ? options : null, (_ts) => {
|
|
186
|
+
ts = _ts;
|
|
187
|
+
return new Promise((rs, rj) => {
|
|
188
|
+
resolve = rs;
|
|
189
|
+
reject = rj;
|
|
190
|
+
});
|
|
191
|
+
});
|
|
192
|
+
return {
|
|
193
|
+
ts,
|
|
194
|
+
resolve,
|
|
195
|
+
reject
|
|
196
|
+
};
|
|
197
|
+
}
|
|
151
198
|
}
|
|
152
199
|
exports.default = Traces;
|
|
153
200
|
exports.withSpan = Traces.withSpan;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traces.js","sourceRoot":"","sources":["../../src/traces/traces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,kDAAqE;AACrE,2DAAwD;AACxD,0EAAkD;AAIlD;;;GAGG;AACH,MAAqB,MAAM;IAElB,MAAM,KAAK,QAAQ;;QACxB,IAAI,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,mBAAmB,0CAAE,MAAM,EAAE,CAAC;YAC5C,OAAO,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,mBAAmB,0CAAE,MAAM,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,CAAC,SAAS,GAAG,IAAI,qCAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,CAAC;IACM,MAAM,KAAK,QAAQ,CAAC,KAA+B;QACxD,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEM,MAAM,KAAK,mBAAmB;;QACnC,OAAO,CAAA,MAAA,MAAM,CAAC,QAAQ,0CAAE,mBAAmB,KAAI,IAAI,0BAAgB,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"traces.js","sourceRoot":"","sources":["../../src/traces/traces.ts"],"names":[],"mappings":"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"}
|