@effect/opentelemetry 4.0.0-beta.31 → 4.0.0-beta.32
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/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +22 -19
- package/dist/Tracer.js.map +1 -1
- package/package.json +2 -2
- package/src/Tracer.ts +33 -30
package/dist/Tracer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.d.ts","sourceRoot":"","sources":["../src/Tracer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE1C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"Tracer.d.ts","sourceRoot":"","sources":["../src/Tracer.ts"],"names":[],"mappings":"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"}
|
package/dist/Tracer.js
CHANGED
|
@@ -8,6 +8,7 @@ import * as Effect from "effect/Effect";
|
|
|
8
8
|
import * as Exit from "effect/Exit";
|
|
9
9
|
import { constTrue, dual } from "effect/Function";
|
|
10
10
|
import * as Layer from "effect/Layer";
|
|
11
|
+
import * as Option from "effect/Option";
|
|
11
12
|
import * as Predicate from "effect/Predicate";
|
|
12
13
|
import * as ServiceMap from "effect/ServiceMap";
|
|
13
14
|
import * as Tracer from "effect/Tracer";
|
|
@@ -60,20 +61,22 @@ export const make = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.service(OtelTrac
|
|
|
60
61
|
* @category Constructors
|
|
61
62
|
*/
|
|
62
63
|
export const makeExternalSpan = options => {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
if (typeof options.traceState === "string") {
|
|
68
|
-
try {
|
|
69
|
-
const traceState = Otel.createTraceState(options.traceState);
|
|
70
|
-
annotations = ServiceMap.add(annotations, OtelTraceState, traceState);
|
|
71
|
-
} catch {
|
|
72
|
-
//
|
|
64
|
+
const annotations = ServiceMap.mutate(ServiceMap.empty(), annotations => {
|
|
65
|
+
let next = annotations;
|
|
66
|
+
if (options.traceFlags !== undefined) {
|
|
67
|
+
next = ServiceMap.add(next, OtelTraceFlags, options.traceFlags);
|
|
73
68
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
69
|
+
if (typeof options.traceState === "string") {
|
|
70
|
+
try {
|
|
71
|
+
next = ServiceMap.add(next, OtelTraceState, Otel.createTraceState(options.traceState));
|
|
72
|
+
} catch {
|
|
73
|
+
//
|
|
74
|
+
}
|
|
75
|
+
} else if (options.traceState) {
|
|
76
|
+
next = ServiceMap.add(next, OtelTraceState, options.traceState);
|
|
77
|
+
}
|
|
78
|
+
return next;
|
|
79
|
+
});
|
|
77
80
|
return {
|
|
78
81
|
_tag: "ExternalSpan",
|
|
79
82
|
traceId: options.traceId,
|
|
@@ -261,7 +264,7 @@ export class OtelSpan {
|
|
|
261
264
|
this.links = options.links;
|
|
262
265
|
this.kind = options.kind;
|
|
263
266
|
const active = contextApi.active();
|
|
264
|
-
this.parent = options.
|
|
267
|
+
this.parent = options.root !== true ? Option.orElse(options.parent, () => getOtelParent(traceApi, active, options.annotations)) : options.parent;
|
|
265
268
|
this.span = tracer.startSpan(options.name, {
|
|
266
269
|
startTime: nanosToHrTime(options.startTime),
|
|
267
270
|
links: options.links.length > 0 ? options.links.map(link => ({
|
|
@@ -269,7 +272,7 @@ export class OtelSpan {
|
|
|
269
272
|
attributes: recordToAttributes(link.attributes)
|
|
270
273
|
})) : undefined,
|
|
271
274
|
kind: kindMap[this.kind]
|
|
272
|
-
}, this.parent ? populateContext(active, this.parent, options.annotations) : Otel.trace.deleteSpan(active));
|
|
275
|
+
}, Option.isSome(this.parent) ? populateContext(active, this.parent.value, options.annotations) : Otel.trace.deleteSpan(active));
|
|
273
276
|
const spanContext = this.span.spanContext();
|
|
274
277
|
this.spanId = spanContext.spanId;
|
|
275
278
|
this.traceId = spanContext.traceId;
|
|
@@ -337,14 +340,14 @@ export class OtelSpan {
|
|
|
337
340
|
}
|
|
338
341
|
const isSampled = traceFlags => (traceFlags & Otel.TraceFlags.SAMPLED) === Otel.TraceFlags.SAMPLED;
|
|
339
342
|
const getOtelParent = (tracer, context, annotations) => {
|
|
340
|
-
const
|
|
341
|
-
|
|
342
|
-
return
|
|
343
|
+
const otelParent = tracer.getSpan(context)?.spanContext();
|
|
344
|
+
if (!otelParent) return Option.none();
|
|
345
|
+
return Option.some(Tracer.externalSpan({
|
|
343
346
|
spanId: otelParent.spanId,
|
|
344
347
|
traceId: otelParent.traceId,
|
|
345
348
|
sampled: (otelParent.traceFlags & 1) === 1,
|
|
346
349
|
annotations
|
|
347
|
-
})
|
|
350
|
+
}));
|
|
348
351
|
};
|
|
349
352
|
const makeSpanContext = (span, annotations) => {
|
|
350
353
|
const traceFlags = makeTraceFlags(span, annotations);
|
package/dist/Tracer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.js","names":["Otel","OtelSemConv","Cause","Effect","Exit","constTrue","dual","Layer","Predicate","ServiceMap","Tracer","nanosToHrTime","recordToAttributes","unknownToAttributeValue","Resource","OtelTracer","Service","OtelTracerProvider","OtelTraceFlags","OtelTraceState","make","map","service","tracer","span","options","OtelSpan","context","trace","primitive","fiber","currentSpan","undefined","with","populateContext","active","makeExternalSpan","annotations","empty","traceFlags","add","traceState","createTraceState","_tag","traceId","spanId","sampled","isNotUndefined","isSampled","layerGlobalProvider","sync","getTracerProvider","layerTracer","effect","gen","resource","provider","getTracer","attributes","ATTR_SERVICE_NAME","ATTR_SERVICE_VERSION","layerGlobalTracer","pipe","provide","layerGlobal","provideMerge","layerWithoutOtelTracer","layer","bigint1e6","BigInt","bigint1e9","currentOtelSpan","clockWith","clock","OtelSpanTypeId","makeOtelSpan","spanContext","TraceFlags","SAMPLED","NONE","isRemote","exit","void","self","setAttribute","key","value","attribute","setAttributes","Object","entries","addEvent","name","startTime","arguments","length","event","convertOtelTimeInput","addLink","link","addLinks","links","setStatus","status","SpanStatusCode","ERROR","die","message","updateName","end","endTime","time","isRecording","recordException","exception","timeInput","cause","fail","error","prettyErrors","stack","input","currentTimeNanosUnsafe","Math","round","Date","getTime","seconds","nanos","withSpanContext","withParentSpan","kindMap","SpanKind","INTERNAL","CLIENT","SERVER","PRODUCER","CONSUMER","kind","Map","parent","constructor","contextApi","traceApi","root","getOtelParent","startSpan","makeSpanContext","deleteSpan","set","push","hrTime","code","OK","hasInterruptsOnly","pretty","errors","getSpan","otelParent","externalSpan","makeTraceFlags","makeTraceState","extractTraceService","isUndefined","getOrUndefined","instance","setSpan","setSpanContext"],"sources":["../src/Tracer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Tracer.js","names":["Otel","OtelSemConv","Cause","Effect","Exit","constTrue","dual","Layer","Option","Predicate","ServiceMap","Tracer","nanosToHrTime","recordToAttributes","unknownToAttributeValue","Resource","OtelTracer","Service","OtelTracerProvider","OtelTraceFlags","OtelTraceState","make","map","service","tracer","span","options","OtelSpan","context","trace","primitive","fiber","currentSpan","undefined","with","populateContext","active","makeExternalSpan","annotations","mutate","empty","next","traceFlags","add","traceState","createTraceState","_tag","traceId","spanId","sampled","isNotUndefined","isSampled","layerGlobalProvider","sync","getTracerProvider","layerTracer","effect","gen","resource","provider","getTracer","attributes","ATTR_SERVICE_NAME","ATTR_SERVICE_VERSION","layerGlobalTracer","pipe","provide","layerGlobal","provideMerge","layerWithoutOtelTracer","layer","bigint1e6","BigInt","bigint1e9","currentOtelSpan","clockWith","clock","OtelSpanTypeId","makeOtelSpan","spanContext","TraceFlags","SAMPLED","NONE","isRemote","exit","void","self","setAttribute","key","value","attribute","setAttributes","Object","entries","addEvent","name","startTime","arguments","length","event","convertOtelTimeInput","addLink","link","addLinks","links","setStatus","status","SpanStatusCode","ERROR","die","message","updateName","end","endTime","time","isRecording","recordException","exception","timeInput","cause","fail","error","prettyErrors","stack","input","currentTimeNanosUnsafe","Math","round","Date","getTime","seconds","nanos","withSpanContext","withParentSpan","kindMap","SpanKind","INTERNAL","CLIENT","SERVER","PRODUCER","CONSUMER","kind","Map","parent","constructor","contextApi","traceApi","root","orElse","getOtelParent","startSpan","makeSpanContext","isSome","deleteSpan","set","push","hrTime","code","OK","hasInterruptsOnly","pretty","errors","otelParent","getSpan","none","some","externalSpan","makeTraceFlags","makeTraceState","extractTraceService","isUndefined","getOrUndefined","instance","setSpan","setSpanContext"],"sources":["../src/Tracer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/opentelemetry",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.0.0-beta.
|
|
4
|
+
"version": "4.0.0-beta.32",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "OpenTelemetry integration for Effect",
|
|
7
7
|
"homepage": "https://effect.website",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"@opentelemetry/sdk-trace-node": "^2.0.0",
|
|
63
63
|
"@opentelemetry/sdk-trace-web": "^2.0.0",
|
|
64
64
|
"@opentelemetry/semantic-conventions": "^1.33.0",
|
|
65
|
-
"effect": "^4.0.0-beta.
|
|
65
|
+
"effect": "^4.0.0-beta.32"
|
|
66
66
|
},
|
|
67
67
|
"peerDependenciesMeta": {
|
|
68
68
|
"@opentelemetry/api": {
|
package/src/Tracer.ts
CHANGED
|
@@ -9,6 +9,7 @@ import * as Effect from "effect/Effect"
|
|
|
9
9
|
import * as Exit from "effect/Exit"
|
|
10
10
|
import { constTrue, dual } from "effect/Function"
|
|
11
11
|
import * as Layer from "effect/Layer"
|
|
12
|
+
import * as Option from "effect/Option"
|
|
12
13
|
import * as Predicate from "effect/Predicate"
|
|
13
14
|
import * as ServiceMap from "effect/ServiceMap"
|
|
14
15
|
import * as Tracer from "effect/Tracer"
|
|
@@ -100,22 +101,24 @@ export const makeExternalSpan = (options: {
|
|
|
100
101
|
readonly traceFlags?: number | undefined
|
|
101
102
|
readonly traceState?: string | Otel.TraceState | undefined
|
|
102
103
|
}): Tracer.ExternalSpan => {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
104
|
+
const annotations = ServiceMap.mutate(ServiceMap.empty(), (annotations) => {
|
|
105
|
+
let next = annotations
|
|
106
|
+
if (options.traceFlags !== undefined) {
|
|
107
|
+
next = ServiceMap.add(next, OtelTraceFlags, options.traceFlags)
|
|
108
|
+
}
|
|
108
109
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
110
|
+
if (typeof options.traceState === "string") {
|
|
111
|
+
try {
|
|
112
|
+
next = ServiceMap.add(next, OtelTraceState, Otel.createTraceState(options.traceState))
|
|
113
|
+
} catch {
|
|
114
|
+
//
|
|
115
|
+
}
|
|
116
|
+
} else if (options.traceState) {
|
|
117
|
+
next = ServiceMap.add(next, OtelTraceState, options.traceState)
|
|
115
118
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
+
|
|
120
|
+
return next
|
|
121
|
+
})
|
|
119
122
|
|
|
120
123
|
return {
|
|
121
124
|
_tag: "ExternalSpan",
|
|
@@ -363,7 +366,7 @@ export class OtelSpan implements Tracer.Span {
|
|
|
363
366
|
readonly traceId: string
|
|
364
367
|
readonly attributes = new Map<string, unknown>()
|
|
365
368
|
readonly sampled: boolean
|
|
366
|
-
readonly parent: Tracer.AnySpan
|
|
369
|
+
readonly parent: Option.Option<Tracer.AnySpan>
|
|
367
370
|
status: Tracer.SpanStatus
|
|
368
371
|
|
|
369
372
|
constructor(
|
|
@@ -378,9 +381,9 @@ export class OtelSpan implements Tracer.Span {
|
|
|
378
381
|
this.links = options.links
|
|
379
382
|
this.kind = options.kind
|
|
380
383
|
const active = contextApi.active()
|
|
381
|
-
this.parent = options.
|
|
382
|
-
getOtelParent(traceApi, active, options.annotations)
|
|
383
|
-
|
|
384
|
+
this.parent = options.root !== true
|
|
385
|
+
? Option.orElse(options.parent, () => getOtelParent(traceApi, active, options.annotations))
|
|
386
|
+
: options.parent
|
|
384
387
|
this.span = tracer.startSpan(
|
|
385
388
|
options.name,
|
|
386
389
|
{
|
|
@@ -393,7 +396,9 @@ export class OtelSpan implements Tracer.Span {
|
|
|
393
396
|
: undefined as any,
|
|
394
397
|
kind: kindMap[this.kind]
|
|
395
398
|
},
|
|
396
|
-
|
|
399
|
+
Option.isSome(this.parent) ?
|
|
400
|
+
populateContext(active, this.parent.value, options.annotations) :
|
|
401
|
+
Otel.trace.deleteSpan(active)
|
|
397
402
|
)
|
|
398
403
|
const spanContext = this.span.spanContext()
|
|
399
404
|
this.spanId = spanContext.spanId
|
|
@@ -473,17 +478,15 @@ const getOtelParent = (
|
|
|
473
478
|
tracer: Otel.TraceAPI,
|
|
474
479
|
context: Otel.Context,
|
|
475
480
|
annotations: ServiceMap.ServiceMap<never>
|
|
476
|
-
): Tracer.AnySpan
|
|
477
|
-
const
|
|
478
|
-
|
|
479
|
-
return
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
})
|
|
486
|
-
: undefined
|
|
481
|
+
): Option.Option<Tracer.AnySpan> => {
|
|
482
|
+
const otelParent = tracer.getSpan(context)?.spanContext()
|
|
483
|
+
if (!otelParent) return Option.none()
|
|
484
|
+
return Option.some(Tracer.externalSpan({
|
|
485
|
+
spanId: otelParent.spanId,
|
|
486
|
+
traceId: otelParent.traceId,
|
|
487
|
+
sampled: (otelParent.traceFlags & 1) === 1,
|
|
488
|
+
annotations
|
|
489
|
+
}))
|
|
487
490
|
}
|
|
488
491
|
|
|
489
492
|
const makeSpanContext = (
|