@effect/opentelemetry 4.0.0-beta.9 → 4.0.0-beta.91
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/Logger.d.ts +62 -11
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +88 -25
- package/dist/Logger.js.map +1 -1
- package/dist/Metrics.d.ts +38 -14
- package/dist/Metrics.d.ts.map +1 -1
- package/dist/Metrics.js +23 -8
- package/dist/Metrics.js.map +1 -1
- package/dist/NodeSdk.d.ts +84 -12
- package/dist/NodeSdk.d.ts.map +1 -1
- package/dist/NodeSdk.js +28 -5
- package/dist/NodeSdk.js.map +1 -1
- package/dist/Resource.d.ts +57 -13
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +48 -13
- package/dist/Resource.js.map +1 -1
- package/dist/Tracer.d.ts +108 -51
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +122 -69
- package/dist/Tracer.js.map +1 -1
- package/dist/WebSdk.d.ts +80 -11
- package/dist/WebSdk.d.ts.map +1 -1
- package/dist/WebSdk.js +25 -4
- package/dist/WebSdk.js.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.js +7 -7
- package/dist/internal/attributes.js +5 -0
- package/dist/internal/attributes.js.map +1 -1
- package/dist/internal/metrics.js +5 -5
- package/dist/internal/metrics.js.map +1 -1
- package/package.json +20 -15
- package/src/Logger.ts +94 -25
- package/src/Metrics.ts +39 -15
- package/src/NodeSdk.ts +84 -12
- package/src/Resource.ts +58 -14
- package/src/Tracer.ts +155 -99
- package/src/WebSdk.ts +80 -11
- package/src/index.ts +7 -7
- package/src/internal/attributes.ts +7 -0
- package/src/internal/metrics.ts +6 -6
package/dist/Tracer.js
CHANGED
|
@@ -1,47 +1,75 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Bridges Effect tracing into OpenTelemetry by installing an Effect `Tracer`
|
|
3
|
+
* that creates OpenTelemetry spans, records attributes, events, links, errors,
|
|
4
|
+
* and status, and keeps OpenTelemetry context active while traced effects run.
|
|
5
|
+
* Use this module when an application already has an OpenTelemetry
|
|
6
|
+
* `TracerProvider`, or when the Node and Web SDK layers should expose Effect
|
|
7
|
+
* spans to OTLP, console, or other OpenTelemetry-compatible exporters.
|
|
8
|
+
*
|
|
9
|
+
* The layer constructors wire Effect's tracer service to either the global
|
|
10
|
+
* OpenTelemetry tracer provider or an explicitly provided `OtelTracer`. This
|
|
11
|
+
* module does not create exporters or span processors by itself, so spans are
|
|
12
|
+
* exported only when the provider has been configured by the application or by
|
|
13
|
+
* the Node/Web SDK layers. Parentage is taken from Effect spans first and can
|
|
14
|
+
* also attach to the active OpenTelemetry context, while `makeExternalSpan` and
|
|
15
|
+
* `withSpanContext` are the entry points for continuing an incoming remote
|
|
16
|
+
* trace. Preserve `traceFlags` and `traceState` when building external spans;
|
|
17
|
+
* otherwise sampling defaults to sampled and trace state cannot be propagated.
|
|
18
|
+
*
|
|
19
|
+
* @since 4.0.0
|
|
3
20
|
*/
|
|
4
21
|
import * as Otel from "@opentelemetry/api";
|
|
5
22
|
import * as OtelSemConv from "@opentelemetry/semantic-conventions";
|
|
6
23
|
import * as Cause from "effect/Cause";
|
|
24
|
+
import * as Context from "effect/Context";
|
|
7
25
|
import * as Effect from "effect/Effect";
|
|
8
26
|
import * as Exit from "effect/Exit";
|
|
9
27
|
import { constTrue, dual } from "effect/Function";
|
|
10
28
|
import * as Layer from "effect/Layer";
|
|
29
|
+
import * as Option from "effect/Option";
|
|
11
30
|
import * as Predicate from "effect/Predicate";
|
|
12
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
13
31
|
import * as Tracer from "effect/Tracer";
|
|
14
|
-
import { recordToAttributes, unknownToAttributeValue } from "./internal/attributes.js";
|
|
32
|
+
import { nanosToHrTime, recordToAttributes, unknownToAttributeValue } from "./internal/attributes.js";
|
|
15
33
|
import { Resource } from "./Resource.js";
|
|
16
34
|
// =============================================================================
|
|
17
35
|
// Service Definitions
|
|
18
36
|
// =============================================================================
|
|
19
37
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
38
|
+
* Context service containing the OpenTelemetry `Tracer` used to create spans for Effect tracing.
|
|
39
|
+
*
|
|
40
|
+
* @category services
|
|
41
|
+
* @since 4.0.0
|
|
22
42
|
*/
|
|
23
|
-
export class OtelTracer extends /*#__PURE__*/
|
|
43
|
+
export class OtelTracer extends /*#__PURE__*/Context.Service()("@effect/opentelemetry/Tracer") {}
|
|
24
44
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
45
|
+
* Context service containing the OpenTelemetry `TracerProvider` used to obtain tracers.
|
|
46
|
+
*
|
|
47
|
+
* @category services
|
|
48
|
+
* @since 4.0.0
|
|
27
49
|
*/
|
|
28
|
-
export class OtelTracerProvider extends /*#__PURE__*/
|
|
50
|
+
export class OtelTracerProvider extends /*#__PURE__*/Context.Service()("@effect/opentelemetry/Tracer/OtelTracerProvider") {}
|
|
29
51
|
/**
|
|
30
|
-
*
|
|
31
|
-
*
|
|
52
|
+
* Context service containing OpenTelemetry trace flags used when constructing external span contexts.
|
|
53
|
+
*
|
|
54
|
+
* @category services
|
|
55
|
+
* @since 4.0.0
|
|
32
56
|
*/
|
|
33
|
-
export class OtelTraceFlags extends /*#__PURE__*/
|
|
57
|
+
export class OtelTraceFlags extends /*#__PURE__*/Context.Service()("@effect/opentelemetry/Tracer/OtelTraceFlags") {}
|
|
34
58
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
59
|
+
* Context service containing OpenTelemetry trace state used when constructing external span contexts.
|
|
60
|
+
*
|
|
61
|
+
* @category services
|
|
62
|
+
* @since 4.0.0
|
|
37
63
|
*/
|
|
38
|
-
export class OtelTraceState extends /*#__PURE__*/
|
|
64
|
+
export class OtelTraceState extends /*#__PURE__*/Context.Service()("@effect/opentelemetry/Tracer/OtelTraceState") {}
|
|
39
65
|
// =============================================================================
|
|
40
66
|
// Constructors
|
|
41
67
|
// =============================================================================
|
|
42
68
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
69
|
+
* Creates an Effect `Tracer` implementation backed by the configured OpenTelemetry tracer.
|
|
70
|
+
*
|
|
71
|
+
* @category constructors
|
|
72
|
+
* @since 4.0.0
|
|
45
73
|
*/
|
|
46
74
|
export const make = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.service(OtelTracer), tracer => Tracer.make({
|
|
47
75
|
span(options) {
|
|
@@ -56,24 +84,28 @@ export const make = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.service(OtelTrac
|
|
|
56
84
|
}
|
|
57
85
|
}));
|
|
58
86
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
87
|
+
* Creates an Effect external span from an OpenTelemetry span context, preserving trace flags and trace state when provided.
|
|
88
|
+
*
|
|
89
|
+
* @category constructors
|
|
90
|
+
* @since 4.0.0
|
|
61
91
|
*/
|
|
62
92
|
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
|
-
//
|
|
93
|
+
const annotations = Context.mutate(Context.empty(), annotations => {
|
|
94
|
+
let next = annotations;
|
|
95
|
+
if (options.traceFlags !== undefined) {
|
|
96
|
+
next = Context.add(next, OtelTraceFlags, options.traceFlags);
|
|
73
97
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
98
|
+
if (typeof options.traceState === "string") {
|
|
99
|
+
try {
|
|
100
|
+
next = Context.add(next, OtelTraceState, Otel.createTraceState(options.traceState));
|
|
101
|
+
} catch {
|
|
102
|
+
//
|
|
103
|
+
}
|
|
104
|
+
} else if (options.traceState) {
|
|
105
|
+
next = Context.add(next, OtelTraceState, options.traceState);
|
|
106
|
+
}
|
|
107
|
+
return next;
|
|
108
|
+
});
|
|
77
109
|
return {
|
|
78
110
|
_tag: "ExternalSpan",
|
|
79
111
|
traceId: options.traceId,
|
|
@@ -86,13 +118,17 @@ export const makeExternalSpan = options => {
|
|
|
86
118
|
// Layers
|
|
87
119
|
// =============================================================================
|
|
88
120
|
/**
|
|
89
|
-
*
|
|
90
|
-
*
|
|
121
|
+
* Layer that provides the current global OpenTelemetry tracer provider.
|
|
122
|
+
*
|
|
123
|
+
* @category layers
|
|
124
|
+
* @since 4.0.0
|
|
91
125
|
*/
|
|
92
126
|
export const layerGlobalProvider = /*#__PURE__*/Layer.sync(OtelTracerProvider, () => Otel.trace.getTracerProvider());
|
|
93
127
|
/**
|
|
94
|
-
*
|
|
95
|
-
*
|
|
128
|
+
* Layer that creates an OpenTelemetry tracer from the provided tracer provider and resource metadata.
|
|
129
|
+
*
|
|
130
|
+
* @category layers
|
|
131
|
+
* @since 4.0.0
|
|
96
132
|
*/
|
|
97
133
|
export const layerTracer = /*#__PURE__*/Layer.effect(OtelTracer, /*#__PURE__*/Effect.gen(function* () {
|
|
98
134
|
const resource = yield* Resource;
|
|
@@ -100,23 +136,40 @@ export const layerTracer = /*#__PURE__*/Layer.effect(OtelTracer, /*#__PURE__*/Ef
|
|
|
100
136
|
return provider.getTracer(resource.attributes[OtelSemConv.ATTR_SERVICE_NAME], resource.attributes[OtelSemConv.ATTR_SERVICE_VERSION]);
|
|
101
137
|
}));
|
|
102
138
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
139
|
+
* Layer that creates an OpenTelemetry tracer from the global tracer provider and the current resource.
|
|
140
|
+
*
|
|
141
|
+
* @category layers
|
|
142
|
+
* @since 4.0.0
|
|
105
143
|
*/
|
|
106
144
|
export const layerGlobalTracer = /*#__PURE__*/layerTracer.pipe(/*#__PURE__*/Layer.provide(layerGlobalProvider));
|
|
107
145
|
/**
|
|
108
|
-
*
|
|
109
|
-
*
|
|
146
|
+
* Layer that installs an Effect tracer backed by the global OpenTelemetry tracer provider.
|
|
147
|
+
*
|
|
148
|
+
* @category layers
|
|
149
|
+
* @since 4.0.0
|
|
110
150
|
*/
|
|
111
151
|
export const layerGlobal = /*#__PURE__*/Layer.effect(Tracer.Tracer, make).pipe(/*#__PURE__*/Layer.provideMerge(layerGlobalTracer));
|
|
112
152
|
/**
|
|
113
|
-
*
|
|
114
|
-
*
|
|
153
|
+
* Layer that installs the Effect tracer using an `OtelTracer` already provided in the environment.
|
|
154
|
+
*
|
|
155
|
+
* @category layers
|
|
156
|
+
* @since 4.0.0
|
|
115
157
|
*/
|
|
116
158
|
export const layerWithoutOtelTracer = /*#__PURE__*/Layer.effect(Tracer.Tracer, make);
|
|
117
159
|
/**
|
|
118
|
-
*
|
|
119
|
-
*
|
|
160
|
+
* Layer that creates an OpenTelemetry tracer from a provider and resource, then installs it as the Effect tracer.
|
|
161
|
+
*
|
|
162
|
+
* **When to use**
|
|
163
|
+
*
|
|
164
|
+
* Use when you already provide an `OtelTracerProvider` and a `Resource`, and
|
|
165
|
+
* want Effect spans backed by a tracer derived from them.
|
|
166
|
+
*
|
|
167
|
+
* @see {@link layerTracer} for creating only the OpenTelemetry tracer service
|
|
168
|
+
* @see {@link layerGlobal} for installing the Effect tracer from the global provider
|
|
169
|
+
* @see {@link layerWithoutOtelTracer} for installing an already-provided `OtelTracer`
|
|
170
|
+
*
|
|
171
|
+
* @category layers
|
|
172
|
+
* @since 4.0.0
|
|
120
173
|
*/
|
|
121
174
|
export const layer = /*#__PURE__*/layerWithoutOtelTracer.pipe(/*#__PURE__*/Layer.provideMerge(layerTracer));
|
|
122
175
|
// =============================================================================
|
|
@@ -125,16 +178,17 @@ export const layer = /*#__PURE__*/layerWithoutOtelTracer.pipe(/*#__PURE__*/Layer
|
|
|
125
178
|
const bigint1e6 = /*#__PURE__*/BigInt(1_000_000);
|
|
126
179
|
const bigint1e9 = /*#__PURE__*/BigInt(1_000_000_000);
|
|
127
180
|
/**
|
|
128
|
-
*
|
|
181
|
+
* Gets the current OpenTelemetry span.
|
|
129
182
|
*
|
|
130
|
-
*
|
|
131
|
-
* `NodeSdk.layer`, etc.) and the lightweight OTLP module (`OtlpTracer.layer`).
|
|
183
|
+
* **Details**
|
|
132
184
|
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
185
|
+
* This accessor works with both the official OpenTelemetry API, such as
|
|
186
|
+
* `Tracer.layer` and `NodeSdk.layer`, and the lightweight OTLP module, such as
|
|
187
|
+
* `OtlpTracer.layer`. When using OTLP, the returned span is a wrapper that
|
|
188
|
+
* conforms to the OpenTelemetry `Span` interface.
|
|
135
189
|
*
|
|
136
|
-
* @since 1.0.0
|
|
137
190
|
* @category accessors
|
|
191
|
+
* @since 4.0.0
|
|
138
192
|
*/
|
|
139
193
|
export const currentOtelSpan = /*#__PURE__*/Effect.clockWith(clock => Effect.map(Effect.currentSpan, span => OtelSpanTypeId in span ? span.span : makeOtelSpan(span, clock)));
|
|
140
194
|
const makeOtelSpan = (span, clock) => {
|
|
@@ -219,13 +273,15 @@ const convertOtelTimeInput = (input, clock) => {
|
|
|
219
273
|
return BigInt(seconds) * bigint1e9 + BigInt(nanos);
|
|
220
274
|
};
|
|
221
275
|
/**
|
|
222
|
-
*
|
|
276
|
+
* Sets an effect's parent span from the given OpenTelemetry `SpanContext`.
|
|
223
277
|
*
|
|
224
|
-
*
|
|
225
|
-
* attach to a parent span.
|
|
278
|
+
* **When to use**
|
|
226
279
|
*
|
|
227
|
-
*
|
|
228
|
-
*
|
|
280
|
+
* Use when you need an effect to continue a trace from a parent span context
|
|
281
|
+
* produced by OpenTelemetry instrumentation outside Effect.
|
|
282
|
+
*
|
|
283
|
+
* @category propagation
|
|
284
|
+
* @since 4.0.0
|
|
229
285
|
*/
|
|
230
286
|
export const withSpanContext = /*#__PURE__*/dual(2, (self, spanContext) => Effect.withParentSpan(self, makeExternalSpan(spanContext)));
|
|
231
287
|
// =============================================================================
|
|
@@ -261,7 +317,7 @@ export class OtelSpan {
|
|
|
261
317
|
this.links = options.links;
|
|
262
318
|
this.kind = options.kind;
|
|
263
319
|
const active = contextApi.active();
|
|
264
|
-
this.parent = options.
|
|
320
|
+
this.parent = options.root !== true ? Option.orElse(options.parent, () => getOtelParent(traceApi, active, options.annotations)) : options.parent;
|
|
265
321
|
this.span = tracer.startSpan(options.name, {
|
|
266
322
|
startTime: nanosToHrTime(options.startTime),
|
|
267
323
|
links: options.links.length > 0 ? options.links.map(link => ({
|
|
@@ -269,7 +325,7 @@ export class OtelSpan {
|
|
|
269
325
|
attributes: recordToAttributes(link.attributes)
|
|
270
326
|
})) : undefined,
|
|
271
327
|
kind: kindMap[this.kind]
|
|
272
|
-
}, this.parent ? populateContext(active, this.parent, options.annotations) : Otel.trace.deleteSpan(active));
|
|
328
|
+
}, Option.isSome(this.parent) ? populateContext(active, this.parent.value, options.annotations) : Otel.trace.deleteSpan(active));
|
|
273
329
|
const spanContext = this.span.spanContext();
|
|
274
330
|
this.spanId = spanContext.spanId;
|
|
275
331
|
this.traceId = spanContext.traceId;
|
|
@@ -336,18 +392,15 @@ export class OtelSpan {
|
|
|
336
392
|
}
|
|
337
393
|
}
|
|
338
394
|
const isSampled = traceFlags => (traceFlags & Otel.TraceFlags.SAMPLED) === Otel.TraceFlags.SAMPLED;
|
|
339
|
-
const nanosToHrTime = timestamp => {
|
|
340
|
-
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)];
|
|
341
|
-
};
|
|
342
395
|
const getOtelParent = (tracer, context, annotations) => {
|
|
343
|
-
const
|
|
344
|
-
|
|
345
|
-
return
|
|
396
|
+
const otelParent = tracer.getSpan(context)?.spanContext();
|
|
397
|
+
if (!otelParent) return Option.none();
|
|
398
|
+
return Option.some(Tracer.externalSpan({
|
|
346
399
|
spanId: otelParent.spanId,
|
|
347
400
|
traceId: otelParent.traceId,
|
|
348
401
|
sampled: (otelParent.traceFlags & 1) === 1,
|
|
349
402
|
annotations
|
|
350
|
-
})
|
|
403
|
+
}));
|
|
351
404
|
};
|
|
352
405
|
const makeSpanContext = (span, annotations) => {
|
|
353
406
|
const traceFlags = makeTraceFlags(span, annotations);
|
|
@@ -365,27 +418,27 @@ const makeTraceFlags = (span, annotations) => {
|
|
|
365
418
|
if (Predicate.isNotUndefined(annotations)) {
|
|
366
419
|
traceFlags = extractTraceService(span, annotations, OtelTraceFlags);
|
|
367
420
|
if (Predicate.isUndefined(traceFlags)) {
|
|
368
|
-
traceFlags =
|
|
421
|
+
traceFlags = Context.getOrUndefined(span.annotations, OtelTraceFlags);
|
|
369
422
|
}
|
|
370
423
|
}
|
|
371
|
-
return traceFlags ?? Otel.TraceFlags.SAMPLED;
|
|
424
|
+
return traceFlags ?? (span.sampled ? Otel.TraceFlags.SAMPLED : Otel.TraceFlags.NONE);
|
|
372
425
|
};
|
|
373
426
|
const makeTraceState = (span, annotations) => {
|
|
374
427
|
let traceState;
|
|
375
428
|
if (Predicate.isNotUndefined(annotations)) {
|
|
376
429
|
traceState = extractTraceService(span, annotations, OtelTraceState);
|
|
377
430
|
if (Predicate.isUndefined(traceState)) {
|
|
378
|
-
traceState =
|
|
431
|
+
traceState = Context.getOrUndefined(span.annotations, OtelTraceState);
|
|
379
432
|
}
|
|
380
433
|
}
|
|
381
434
|
return traceState;
|
|
382
435
|
};
|
|
383
436
|
const extractTraceService = (parent, annotations, service) => {
|
|
384
|
-
const instance =
|
|
437
|
+
const instance = Context.getOrUndefined(annotations, service);
|
|
385
438
|
if (Predicate.isNotUndefined(instance)) {
|
|
386
439
|
return instance;
|
|
387
440
|
}
|
|
388
|
-
return
|
|
441
|
+
return Context.getOrUndefined(parent.annotations, service);
|
|
389
442
|
};
|
|
390
443
|
const populateContext = (context, span, annotations) => span instanceof OtelSpan ? Otel.trace.setSpan(context, span.span) : Otel.trace.setSpanContext(context, makeSpanContext(span, annotations));
|
|
391
444
|
//# sourceMappingURL=Tracer.js.map
|
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","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","nanosToHrTime","makeSpanContext","deleteSpan","set","push","hrTime","code","OK","hasInterruptsOnly","pretty","errors","timestamp","Number","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","Context","Effect","Exit","constTrue","dual","Layer","Option","Predicate","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/dist/WebSdk.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Browser OpenTelemetry setup for Effect applications.
|
|
3
|
+
*
|
|
4
|
+
* This module exports a `Configuration` type and layers for installing
|
|
5
|
+
* tracing, metrics, and logging in browser runtimes. The main `layer` builds
|
|
6
|
+
* the shared OpenTelemetry resource from explicit service metadata, then
|
|
7
|
+
* enables only the signal types that have processors or readers configured.
|
|
8
|
+
* `layerTracerProvider` creates a scoped `WebTracerProvider`.
|
|
9
|
+
*
|
|
10
|
+
* @since 4.0.0
|
|
3
11
|
*/
|
|
4
12
|
import type * as Otel from "@opentelemetry/api";
|
|
5
13
|
import type { LoggerProviderConfig, LogRecordProcessor } from "@opentelemetry/sdk-logs";
|
|
@@ -13,8 +21,10 @@ import * as Metrics from "./Metrics.ts";
|
|
|
13
21
|
import * as Resource from "./Resource.ts";
|
|
14
22
|
import * as Tracer from "./Tracer.ts";
|
|
15
23
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
24
|
+
* Configuration for the Web OpenTelemetry layer, including resource metadata and optional tracing, metrics, and logging settings.
|
|
25
|
+
*
|
|
26
|
+
* @category models
|
|
27
|
+
* @since 4.0.0
|
|
18
28
|
*/
|
|
19
29
|
export interface Configuration {
|
|
20
30
|
readonly spanProcessor?: SpanProcessor | ReadonlyArray<SpanProcessor> | undefined;
|
|
@@ -31,23 +41,82 @@ export interface Configuration {
|
|
|
31
41
|
};
|
|
32
42
|
}
|
|
33
43
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
44
|
+
* Creates a scoped Web OpenTelemetry tracer provider from one or more span processors and shuts it down when the layer is released.
|
|
45
|
+
*
|
|
46
|
+
* @category layers
|
|
47
|
+
* @since 4.0.0
|
|
36
48
|
*/
|
|
37
49
|
export declare const layerTracerProvider: (processor: SpanProcessor | NonEmptyReadonlyArray<SpanProcessor>, config?: Omit<TracerConfig, "resource">) => Layer.Layer<Tracer.OtelTracerProvider, never, Resource.Resource>;
|
|
38
50
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
51
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
52
|
+
*
|
|
53
|
+
* **When to use**
|
|
54
|
+
*
|
|
55
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
56
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
57
|
+
*
|
|
58
|
+
* **Details**
|
|
59
|
+
*
|
|
60
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
61
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
62
|
+
* when the corresponding processors or readers are non-empty.
|
|
63
|
+
*
|
|
64
|
+
* **Gotchas**
|
|
65
|
+
*
|
|
66
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
67
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
68
|
+
* treated as not configured.
|
|
69
|
+
*
|
|
70
|
+
* @category layers
|
|
71
|
+
* @since 4.0.0
|
|
41
72
|
*/
|
|
42
73
|
export declare const layer: {
|
|
43
74
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
75
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
76
|
+
*
|
|
77
|
+
* **When to use**
|
|
78
|
+
*
|
|
79
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
80
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
81
|
+
*
|
|
82
|
+
* **Details**
|
|
83
|
+
*
|
|
84
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
85
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
86
|
+
* when the corresponding processors or readers are non-empty.
|
|
87
|
+
*
|
|
88
|
+
* **Gotchas**
|
|
89
|
+
*
|
|
90
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
91
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
92
|
+
* treated as not configured.
|
|
93
|
+
*
|
|
94
|
+
* @category layers
|
|
95
|
+
* @since 4.0.0
|
|
46
96
|
*/
|
|
47
97
|
(evaluate: LazyArg<Configuration>): Layer.Layer<Resource.Resource>;
|
|
48
98
|
/**
|
|
49
|
-
*
|
|
50
|
-
*
|
|
99
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
100
|
+
*
|
|
101
|
+
* **When to use**
|
|
102
|
+
*
|
|
103
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
104
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
105
|
+
*
|
|
106
|
+
* **Details**
|
|
107
|
+
*
|
|
108
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
109
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
110
|
+
* when the corresponding processors or readers are non-empty.
|
|
111
|
+
*
|
|
112
|
+
* **Gotchas**
|
|
113
|
+
*
|
|
114
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
115
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
116
|
+
* treated as not configured.
|
|
117
|
+
*
|
|
118
|
+
* @category layers
|
|
119
|
+
* @since 4.0.0
|
|
51
120
|
*/
|
|
52
121
|
<E, R>(evaluate: Effect.Effect<Configuration, E, R>): Layer.Layer<Resource.Resource, E, R>;
|
|
53
122
|
};
|
package/dist/WebSdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSdk.d.ts","sourceRoot":"","sources":["../src/WebSdk.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"WebSdk.d.ts","sourceRoot":"","sources":["../src/WebSdk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAEhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC,GAAG,SAAS,CAAA;IACjF,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IAC9E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAA;IACtE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAA;IAChG,QAAQ,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,GAAG,SAAS,CAAA;IAClF,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtD,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;QAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;QAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAA;KACtC,CAAA;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,WAAW,aAAa,GAAG,qBAAqB,CAAC,aAAa,CAAC,EAC/D,SAAS,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,KACtC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAoB/D,CAAA;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,KAAK,EAAE;IAClB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAClE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAoCzF,CAAA"}
|
package/dist/WebSdk.js
CHANGED
|
@@ -8,8 +8,10 @@ import * as Metrics from "./Metrics.js";
|
|
|
8
8
|
import * as Resource from "./Resource.js";
|
|
9
9
|
import * as Tracer from "./Tracer.js";
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* Creates a scoped Web OpenTelemetry tracer provider from one or more span processors and shuts it down when the layer is released.
|
|
12
|
+
*
|
|
13
|
+
* @category layers
|
|
14
|
+
* @since 4.0.0
|
|
13
15
|
*/
|
|
14
16
|
export const layerTracerProvider = (processor, config) => Layer.effect(Tracer.OtelTracerProvider, Effect.gen(function* () {
|
|
15
17
|
const resource = yield* Resource.Resource;
|
|
@@ -23,8 +25,27 @@ export const layerTracerProvider = (processor, config) => Layer.effect(Tracer.Ot
|
|
|
23
25
|
}), provider => Effect.ignore(Effect.promise(() => provider.forceFlush().then(() => provider.shutdown()))));
|
|
24
26
|
}));
|
|
25
27
|
/**
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
29
|
+
*
|
|
30
|
+
* **When to use**
|
|
31
|
+
*
|
|
32
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
33
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
34
|
+
*
|
|
35
|
+
* **Details**
|
|
36
|
+
*
|
|
37
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
38
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
39
|
+
* when the corresponding processors or readers are non-empty.
|
|
40
|
+
*
|
|
41
|
+
* **Gotchas**
|
|
42
|
+
*
|
|
43
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
44
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
45
|
+
* treated as not configured.
|
|
46
|
+
*
|
|
47
|
+
* @category layers
|
|
48
|
+
* @since 4.0.0
|
|
28
49
|
*/
|
|
29
50
|
export const layer = evaluate => Layer.unwrap(Effect.gen(function* () {
|
|
30
51
|
const config = yield* Effect.isEffect(evaluate) ? evaluate : Effect.sync(evaluate);
|
package/dist/WebSdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSdk.js","names":["WebTracerProvider","Effect","constant","Layer","isNonEmpty","Logger","Metrics","Resource","Tracer","layerTracerProvider","processor","config","effect","OtelTracerProvider","gen","resource","acquireRelease","sync","provider","undefined","spanProcessors","Array","isArray","ignore","promise","forceFlush","then","shutdown","layer","evaluate","unwrap","isEffect","ResourceLive","TracerLive","spanProcessor","provide","tracerConfig","empty","LoggerLive","logRecordProcessor","mergeWithExisting","loggerMergeWithExisting","layerLoggerProvider","loggerProviderConfig","MetricsLive","metricReader","temporality","metricTemporality","mergeAll","pipe","provideMerge"],"sources":["../src/WebSdk.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"WebSdk.js","names":["WebTracerProvider","Effect","constant","Layer","isNonEmpty","Logger","Metrics","Resource","Tracer","layerTracerProvider","processor","config","effect","OtelTracerProvider","gen","resource","acquireRelease","sync","provider","undefined","spanProcessors","Array","isArray","ignore","promise","forceFlush","then","shutdown","layer","evaluate","unwrap","isEffect","ResourceLive","TracerLive","spanProcessor","provide","tracerConfig","empty","LoggerLive","logRecordProcessor","mergeWithExisting","loggerMergeWithExisting","layerLoggerProvider","loggerProviderConfig","MetricsLive","metricReader","temporality","metricTemporality","mergeAll","pipe","provideMerge"],"sources":["../src/WebSdk.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @since
|
|
2
|
+
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* @since
|
|
5
|
+
* @since 4.0.0
|
|
6
6
|
*/
|
|
7
7
|
export * as Logger from "./Logger.ts";
|
|
8
8
|
/**
|
|
9
|
-
* @since
|
|
9
|
+
* @since 4.0.0
|
|
10
10
|
*/
|
|
11
11
|
export * as Metrics from "./Metrics.ts";
|
|
12
12
|
/**
|
|
13
|
-
* @since
|
|
13
|
+
* @since 4.0.0
|
|
14
14
|
*/
|
|
15
15
|
export * as NodeSdk from "./NodeSdk.ts";
|
|
16
16
|
/**
|
|
17
|
-
* @since
|
|
17
|
+
* @since 4.0.0
|
|
18
18
|
*/
|
|
19
19
|
export * as Resource from "./Resource.ts";
|
|
20
20
|
/**
|
|
21
|
-
* @since
|
|
21
|
+
* @since 4.0.0
|
|
22
22
|
*/
|
|
23
23
|
export * as Tracer from "./Tracer.ts";
|
|
24
24
|
/**
|
|
25
|
-
* @since
|
|
25
|
+
* @since 4.0.0
|
|
26
26
|
*/
|
|
27
27
|
export * as WebSdk from "./WebSdk.ts";
|
|
28
28
|
//# sourceMappingURL=index.d.ts.map
|