@effect/opentelemetry 0.60.0 → 4.0.0-beta.0
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/LICENSE +1 -1
- package/dist/{dts/Logger.d.ts → Logger.d.ts} +19 -13
- package/dist/Logger.d.ts.map +1 -0
- package/dist/Logger.js +76 -0
- package/dist/Logger.js.map +1 -0
- package/dist/Metrics.d.ts +76 -0
- package/dist/Metrics.d.ts.map +1 -0
- package/dist/Metrics.js +59 -0
- package/dist/Metrics.js.map +1 -0
- package/dist/{dts/NodeSdk.d.ts → NodeSdk.d.ts} +12 -9
- package/dist/NodeSdk.d.ts.map +1 -0
- package/dist/{esm/NodeSdk.js → NodeSdk.js} +23 -14
- package/dist/NodeSdk.js.map +1 -0
- package/dist/{dts/Resource.d.ts → Resource.d.ts} +10 -13
- package/dist/Resource.d.ts.map +1 -0
- package/dist/{esm/Resource.js → Resource.js} +12 -13
- package/dist/Resource.js.map +1 -0
- package/dist/Tracer.d.ts +129 -0
- package/dist/Tracer.d.ts.map +1 -0
- package/dist/Tracer.js +391 -0
- package/dist/Tracer.js.map +1 -0
- package/dist/{dts/WebSdk.d.ts → WebSdk.d.ts} +12 -9
- package/dist/WebSdk.d.ts.map +1 -0
- package/dist/WebSdk.js +41 -0
- package/dist/WebSdk.js.map +1 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{esm/index.js → index.js} +4 -20
- package/dist/index.js.map +1 -0
- package/dist/internal/attributes.d.ts +2 -0
- package/dist/internal/attributes.d.ts.map +1 -0
- package/dist/internal/attributes.js +19 -0
- package/dist/internal/attributes.js.map +1 -0
- package/dist/{dts/internal → internal}/metrics.d.ts.map +1 -1
- package/dist/internal/metrics.js +406 -0
- package/dist/internal/metrics.js.map +1 -0
- package/dist/internal/utilities.d.ts +2 -0
- package/dist/internal/utilities.d.ts.map +1 -0
- package/dist/internal/utilities.js +3 -0
- package/dist/internal/utilities.js.map +1 -0
- package/package.json +70 -118
- package/src/Logger.ts +52 -55
- package/src/Metrics.ts +92 -18
- package/src/NodeSdk.ts +67 -64
- package/src/Resource.ts +16 -24
- package/src/Tracer.ts +469 -78
- package/src/WebSdk.ts +59 -51
- package/src/index.ts +7 -26
- package/src/internal/attributes.ts +21 -0
- package/src/internal/metrics.ts +381 -250
- package/src/internal/utilities.ts +5 -0
- package/Logger/package.json +0 -6
- package/Metrics/package.json +0 -6
- package/NodeSdk/package.json +0 -6
- package/Otlp/package.json +0 -6
- package/OtlpLogger/package.json +0 -6
- package/OtlpMetrics/package.json +0 -6
- package/OtlpResource/package.json +0 -6
- package/OtlpTracer/package.json +0 -6
- package/Resource/package.json +0 -6
- package/Tracer/package.json +0 -6
- package/WebSdk/package.json +0 -6
- package/dist/cjs/Logger.js +0 -85
- package/dist/cjs/Logger.js.map +0 -1
- package/dist/cjs/Metrics.js +0 -24
- package/dist/cjs/Metrics.js.map +0 -1
- package/dist/cjs/NodeSdk.js +0 -53
- package/dist/cjs/NodeSdk.js.map +0 -1
- package/dist/cjs/Otlp.js +0 -46
- package/dist/cjs/Otlp.js.map +0 -1
- package/dist/cjs/OtlpLogger.js +0 -158
- package/dist/cjs/OtlpLogger.js.map +0 -1
- package/dist/cjs/OtlpMetrics.js +0 -354
- package/dist/cjs/OtlpMetrics.js.map +0 -1
- package/dist/cjs/OtlpResource.js +0 -136
- package/dist/cjs/OtlpResource.js.map +0 -1
- package/dist/cjs/OtlpTracer.js +0 -229
- package/dist/cjs/OtlpTracer.js.map +0 -1
- package/dist/cjs/Resource.js +0 -75
- package/dist/cjs/Resource.js.map +0 -1
- package/dist/cjs/Tracer.js +0 -87
- package/dist/cjs/Tracer.js.map +0 -1
- package/dist/cjs/WebSdk.js +0 -42
- package/dist/cjs/WebSdk.js.map +0 -1
- package/dist/cjs/index.js +0 -30
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/internal/metrics.js +0 -288
- package/dist/cjs/internal/metrics.js.map +0 -1
- package/dist/cjs/internal/otlpExporter.js +0 -81
- package/dist/cjs/internal/otlpExporter.js.map +0 -1
- package/dist/cjs/internal/tracer.js +0 -299
- package/dist/cjs/internal/tracer.js.map +0 -1
- package/dist/cjs/internal/utils.js +0 -34
- package/dist/cjs/internal/utils.js.map +0 -1
- package/dist/dts/Logger.d.ts.map +0 -1
- package/dist/dts/Metrics.d.ts +0 -29
- package/dist/dts/Metrics.d.ts.map +0 -1
- package/dist/dts/NodeSdk.d.ts.map +0 -1
- package/dist/dts/Otlp.d.ts +0 -31
- package/dist/dts/Otlp.d.ts.map +0 -1
- package/dist/dts/OtlpLogger.d.ts +0 -46
- package/dist/dts/OtlpLogger.d.ts.map +0 -1
- package/dist/dts/OtlpMetrics.d.ts +0 -40
- package/dist/dts/OtlpMetrics.d.ts.map +0 -1
- package/dist/dts/OtlpResource.d.ts +0 -104
- package/dist/dts/OtlpResource.d.ts.map +0 -1
- package/dist/dts/OtlpTracer.d.ts +0 -49
- package/dist/dts/OtlpTracer.d.ts.map +0 -1
- package/dist/dts/Resource.d.ts.map +0 -1
- package/dist/dts/Tracer.d.ts +0 -143
- package/dist/dts/Tracer.d.ts.map +0 -1
- package/dist/dts/WebSdk.d.ts.map +0 -1
- package/dist/dts/index.d.ts +0 -45
- package/dist/dts/index.d.ts.map +0 -1
- package/dist/dts/internal/otlpExporter.d.ts +0 -2
- package/dist/dts/internal/otlpExporter.d.ts.map +0 -1
- package/dist/dts/internal/tracer.d.ts +0 -2
- package/dist/dts/internal/tracer.d.ts.map +0 -1
- package/dist/dts/internal/utils.d.ts +0 -2
- package/dist/dts/internal/utils.d.ts.map +0 -1
- package/dist/esm/Logger.js +0 -75
- package/dist/esm/Logger.js.map +0 -1
- package/dist/esm/Metrics.js +0 -17
- package/dist/esm/Metrics.js.map +0 -1
- package/dist/esm/NodeSdk.js.map +0 -1
- package/dist/esm/Otlp.js +0 -38
- package/dist/esm/Otlp.js.map +0 -1
- package/dist/esm/OtlpLogger.js +0 -150
- package/dist/esm/OtlpLogger.js.map +0 -1
- package/dist/esm/OtlpMetrics.js +0 -346
- package/dist/esm/OtlpMetrics.js.map +0 -1
- package/dist/esm/OtlpResource.js +0 -124
- package/dist/esm/OtlpResource.js.map +0 -1
- package/dist/esm/OtlpTracer.js +0 -221
- package/dist/esm/OtlpTracer.js.map +0 -1
- package/dist/esm/Resource.js.map +0 -1
- package/dist/esm/Tracer.js +0 -80
- package/dist/esm/Tracer.js.map +0 -1
- package/dist/esm/WebSdk.js +0 -33
- package/dist/esm/WebSdk.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/internal/metrics.js +0 -278
- package/dist/esm/internal/metrics.js.map +0 -1
- package/dist/esm/internal/otlpExporter.js +0 -74
- package/dist/esm/internal/otlpExporter.js.map +0 -1
- package/dist/esm/internal/tracer.js +0 -290
- package/dist/esm/internal/tracer.js.map +0 -1
- package/dist/esm/internal/utils.js +0 -23
- package/dist/esm/internal/utils.js.map +0 -1
- package/dist/esm/package.json +0 -4
- package/index/package.json +0 -6
- package/src/Otlp.ts +0 -66
- package/src/OtlpLogger.ts +0 -258
- package/src/OtlpMetrics.ts +0 -571
- package/src/OtlpResource.ts +0 -232
- package/src/OtlpTracer.ts +0 -349
- package/src/internal/otlpExporter.ts +0 -124
- package/src/internal/tracer.ts +0 -437
- package/src/internal/utils.ts +0 -31
- /package/dist/{dts/internal → internal}/metrics.d.ts +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","names":["ValueType","AggregationTemporality","DataPointType","InstrumentType","Arr","Effect","Layer","Metric","MetricKeyType","MetricState","Option","Resource","sdkName","MetricProducerImpl","resource","constructor","startTimes","Map","startTimeFor","name","hrTime","has","get","set","collect","_options","snapshot","unsafeSnapshot","hrTimeNow","currentHrTime","metricData","metricDataByName","addMetricData","data","push","descriptor","i","len","length","metricKey","metricState","attributes","reduce","tags","acc","label","key","value","descriptorFromKey","startTime","isCounterState","dataPoint","endTime","Number","count","dataPoints","dataPointType","SUM","isMonotonic","type","COUNTER","aggregationTemporality","CUMULATIVE","isGaugeState","GAUGE","isHistogramState","size","buckets","boundaries","allocate","counts","prev","boundary","min","max","sum","HISTOGRAM","isFrequencyState","freqKey","occurrences","isSummaryState","quantile","quantiles","toString","_tag","countDataPoint","sumDataPoint","descriptorMeta","unit","valueType","INT","DOUBLE","Promise","resolve","resourceMetrics","scopeMetrics","scope","metrics","errors","suffix","description","getOrElse","advice","time_unit","instrumentTypeFromKey","keyType","bigint","isHistogramKey","isGaugeKey","OBSERVABLE_GAUGE","isFrequencyKey","isCounterKey","incremental","UP_DOWN_COUNTER","now","Date","Math","floor","makeProducer","map","registerProducer","self","metricReader","options","acquireRelease","sync","reader","readers","Array","isArray","forEach","setMetricProducer","promise","all","shutdown","pipe","ignoreLogged","interruptible","timeoutOption","shutdownTimeout","layer","evaluate","scopedDiscard","flatMap","producer"],"sources":["../../../src/internal/metrics.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import * as Headers from "@effect/platform/Headers";
|
|
2
|
-
import * as HttpClient from "@effect/platform/HttpClient";
|
|
3
|
-
import * as HttpClientError from "@effect/platform/HttpClientError";
|
|
4
|
-
import * as HttpClientRequest from "@effect/platform/HttpClientRequest";
|
|
5
|
-
import * as Duration from "effect/Duration";
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as FiberSet from "effect/FiberSet";
|
|
8
|
-
import * as Num from "effect/Number";
|
|
9
|
-
import * as Option from "effect/Option";
|
|
10
|
-
import * as Schedule from "effect/Schedule";
|
|
11
|
-
import * as Scope from "effect/Scope";
|
|
12
|
-
const policy = /*#__PURE__*/Schedule.forever.pipe(Schedule.passthrough, /*#__PURE__*/Schedule.addDelay(error => {
|
|
13
|
-
if (HttpClientError.isHttpClientError(error) && error._tag === "ResponseError" && error.response.status === 429) {
|
|
14
|
-
const retryAfter = Option.fromNullable(error.response.headers["retry-after"]).pipe(Option.flatMap(Num.parse), Option.getOrElse(() => 5));
|
|
15
|
-
return Duration.seconds(retryAfter);
|
|
16
|
-
}
|
|
17
|
-
return Duration.seconds(1);
|
|
18
|
-
}));
|
|
19
|
-
/** @internal */
|
|
20
|
-
export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
21
|
-
const clock = yield* Effect.clock;
|
|
22
|
-
const scope = yield* Effect.scope;
|
|
23
|
-
const exportInterval = Duration.decode(options.exportInterval);
|
|
24
|
-
let disabledUntil = undefined;
|
|
25
|
-
const client = HttpClient.filterStatusOk(yield* HttpClient.HttpClient).pipe(HttpClient.retryTransient({
|
|
26
|
-
schedule: policy,
|
|
27
|
-
times: 3
|
|
28
|
-
}));
|
|
29
|
-
let headers = Headers.unsafeFromRecord({
|
|
30
|
-
"user-agent": `effect-opentelemetry-${options.label}/0.0.0`
|
|
31
|
-
});
|
|
32
|
-
if (options.headers) {
|
|
33
|
-
headers = Headers.merge(Headers.fromInput(options.headers), headers);
|
|
34
|
-
}
|
|
35
|
-
const request = HttpClientRequest.post(options.url, {
|
|
36
|
-
headers
|
|
37
|
-
});
|
|
38
|
-
let buffer = [];
|
|
39
|
-
const runExport = Effect.suspend(() => {
|
|
40
|
-
if (disabledUntil !== undefined && clock.unsafeCurrentTimeMillis() < disabledUntil) {
|
|
41
|
-
return Effect.void;
|
|
42
|
-
} else if (disabledUntil !== undefined) {
|
|
43
|
-
disabledUntil = undefined;
|
|
44
|
-
}
|
|
45
|
-
const items = buffer;
|
|
46
|
-
if (options.maxBatchSize !== "disabled") {
|
|
47
|
-
if (buffer.length === 0) {
|
|
48
|
-
return Effect.void;
|
|
49
|
-
}
|
|
50
|
-
buffer = [];
|
|
51
|
-
}
|
|
52
|
-
return client.execute(HttpClientRequest.bodyUnsafeJson(request, options.body(items))).pipe(Effect.asVoid, Effect.withTracerEnabled(false));
|
|
53
|
-
}).pipe(Effect.catchAllCause(cause => {
|
|
54
|
-
if (disabledUntil !== undefined) return Effect.void;
|
|
55
|
-
disabledUntil = clock.unsafeCurrentTimeMillis() + Duration.toMillis("1 minute");
|
|
56
|
-
return Effect.logDebug(`Disabling ${options.label} for 60 seconds`, cause);
|
|
57
|
-
}));
|
|
58
|
-
yield* Scope.addFinalizer(scope, runExport.pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(options.shutdownTimeout)));
|
|
59
|
-
yield* Effect.sleep(exportInterval).pipe(Effect.zipRight(runExport), Effect.forever, Effect.annotateLogs({
|
|
60
|
-
package: "@effect/opentelemetry",
|
|
61
|
-
module: options.label
|
|
62
|
-
}), Effect.forkIn(scope), Effect.interruptible);
|
|
63
|
-
const runFork = yield* FiberSet.makeRuntime().pipe(Effect.interruptible);
|
|
64
|
-
return {
|
|
65
|
-
push(data) {
|
|
66
|
-
if (disabledUntil !== undefined) return;
|
|
67
|
-
buffer.push(data);
|
|
68
|
-
if (options.maxBatchSize !== "disabled" && buffer.length >= options.maxBatchSize) {
|
|
69
|
-
runFork(runExport);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
});
|
|
74
|
-
//# sourceMappingURL=otlpExporter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"otlpExporter.js","names":["Headers","HttpClient","HttpClientError","HttpClientRequest","Duration","Effect","FiberSet","Num","Option","Schedule","Scope","policy","forever","pipe","passthrough","addDelay","error","isHttpClientError","_tag","response","status","retryAfter","fromNullable","headers","flatMap","parse","getOrElse","seconds","make","fnUntraced","options","clock","scope","exportInterval","decode","disabledUntil","undefined","client","filterStatusOk","retryTransient","schedule","times","unsafeFromRecord","label","merge","fromInput","request","post","url","buffer","runExport","suspend","unsafeCurrentTimeMillis","void","items","maxBatchSize","length","execute","bodyUnsafeJson","body","asVoid","withTracerEnabled","catchAllCause","cause","toMillis","logDebug","addFinalizer","ignore","interruptible","timeoutOption","shutdownTimeout","sleep","zipRight","annotateLogs","package","module","forkIn","runFork","makeRuntime","push","data"],"sources":["../../../src/internal/otlpExporter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,290 +0,0 @@
|
|
|
1
|
-
import * as OtelApi from "@opentelemetry/api";
|
|
2
|
-
import * as OtelSemConv from "@opentelemetry/semantic-conventions";
|
|
3
|
-
import * as Cause from "effect/Cause";
|
|
4
|
-
import * as Context from "effect/Context";
|
|
5
|
-
import * as Effect from "effect/Effect";
|
|
6
|
-
import * as Exit from "effect/Exit";
|
|
7
|
-
import { constTrue, dual } from "effect/Function";
|
|
8
|
-
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Option from "effect/Option";
|
|
10
|
-
import * as EffectTracer from "effect/Tracer";
|
|
11
|
-
import { Resource } from "../Resource.js";
|
|
12
|
-
import { nanosToHrTime, recordToAttributes, unknownToAttributeValue } from "./utils.js";
|
|
13
|
-
const OtelSpanTypeId = /*#__PURE__*/Symbol.for("@effect/opentelemetry/Tracer/OtelSpan");
|
|
14
|
-
const kindMap = {
|
|
15
|
-
"internal": OtelApi.SpanKind.INTERNAL,
|
|
16
|
-
"client": OtelApi.SpanKind.CLIENT,
|
|
17
|
-
"server": OtelApi.SpanKind.SERVER,
|
|
18
|
-
"producer": OtelApi.SpanKind.PRODUCER,
|
|
19
|
-
"consumer": OtelApi.SpanKind.CONSUMER
|
|
20
|
-
};
|
|
21
|
-
const getOtelParent = (tracer, otelContext, context) => {
|
|
22
|
-
const active = tracer.getSpan(otelContext);
|
|
23
|
-
const otelParent = active ? active.spanContext() : undefined;
|
|
24
|
-
return otelParent ? Option.some(EffectTracer.externalSpan({
|
|
25
|
-
spanId: otelParent.spanId,
|
|
26
|
-
traceId: otelParent.traceId,
|
|
27
|
-
sampled: (otelParent.traceFlags & 1) === 1,
|
|
28
|
-
context
|
|
29
|
-
})) : Option.none();
|
|
30
|
-
};
|
|
31
|
-
/** @internal */
|
|
32
|
-
export class OtelSpan {
|
|
33
|
-
name;
|
|
34
|
-
context;
|
|
35
|
-
links;
|
|
36
|
-
kind;
|
|
37
|
-
[OtelSpanTypeId];
|
|
38
|
-
_tag = "Span";
|
|
39
|
-
span;
|
|
40
|
-
spanId;
|
|
41
|
-
traceId;
|
|
42
|
-
attributes = /*#__PURE__*/new Map();
|
|
43
|
-
sampled;
|
|
44
|
-
parent;
|
|
45
|
-
status;
|
|
46
|
-
constructor(contextApi, traceApi, tracer, name, effectParent, context, links, startTime, kind, options) {
|
|
47
|
-
this.name = name;
|
|
48
|
-
this.context = context;
|
|
49
|
-
this.links = links;
|
|
50
|
-
this.kind = kind;
|
|
51
|
-
this[OtelSpanTypeId] = OtelSpanTypeId;
|
|
52
|
-
const active = contextApi.active();
|
|
53
|
-
this.parent = effectParent._tag === "Some" ? effectParent : options?.root !== true ? getOtelParent(traceApi, active, context) : Option.none();
|
|
54
|
-
this.span = tracer.startSpan(name, {
|
|
55
|
-
startTime: nanosToHrTime(startTime),
|
|
56
|
-
links: links.length > 0 ? links.map(link => ({
|
|
57
|
-
context: makeSpanContext(link.span),
|
|
58
|
-
attributes: recordToAttributes(link.attributes)
|
|
59
|
-
})) : undefined,
|
|
60
|
-
kind: kindMap[this.kind]
|
|
61
|
-
}, this.parent._tag === "Some" ? populateContext(active, this.parent.value, context) : OtelApi.trace.deleteSpan(active));
|
|
62
|
-
const spanContext = this.span.spanContext();
|
|
63
|
-
this.spanId = spanContext.spanId;
|
|
64
|
-
this.traceId = spanContext.traceId;
|
|
65
|
-
this.status = {
|
|
66
|
-
_tag: "Started",
|
|
67
|
-
startTime
|
|
68
|
-
};
|
|
69
|
-
this.sampled = (spanContext.traceFlags & OtelApi.TraceFlags.SAMPLED) === OtelApi.TraceFlags.SAMPLED;
|
|
70
|
-
}
|
|
71
|
-
attribute(key, value) {
|
|
72
|
-
this.span.setAttribute(key, unknownToAttributeValue(value));
|
|
73
|
-
this.attributes.set(key, value);
|
|
74
|
-
}
|
|
75
|
-
addLinks(links) {
|
|
76
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
77
|
-
this.links.push(...links);
|
|
78
|
-
this.span.addLinks(links.map(link => ({
|
|
79
|
-
context: makeSpanContext(link.span),
|
|
80
|
-
attributes: recordToAttributes(link.attributes)
|
|
81
|
-
})));
|
|
82
|
-
}
|
|
83
|
-
end(endTime, exit) {
|
|
84
|
-
const hrTime = nanosToHrTime(endTime);
|
|
85
|
-
this.status = {
|
|
86
|
-
_tag: "Ended",
|
|
87
|
-
endTime,
|
|
88
|
-
exit,
|
|
89
|
-
startTime: this.status.startTime
|
|
90
|
-
};
|
|
91
|
-
if (exit._tag === "Success") {
|
|
92
|
-
this.span.setStatus({
|
|
93
|
-
code: OtelApi.SpanStatusCode.OK
|
|
94
|
-
});
|
|
95
|
-
} else {
|
|
96
|
-
if (Cause.isInterruptedOnly(exit.cause)) {
|
|
97
|
-
this.span.setStatus({
|
|
98
|
-
code: OtelApi.SpanStatusCode.OK,
|
|
99
|
-
message: Cause.pretty(exit.cause)
|
|
100
|
-
});
|
|
101
|
-
this.span.setAttribute("span.label", "⚠︎ Interrupted");
|
|
102
|
-
this.span.setAttribute("status.interrupted", true);
|
|
103
|
-
} else {
|
|
104
|
-
const firstError = Cause.prettyErrors(exit.cause)[0];
|
|
105
|
-
if (firstError) {
|
|
106
|
-
firstError.stack = Cause.pretty(exit.cause, {
|
|
107
|
-
renderErrorCause: true
|
|
108
|
-
});
|
|
109
|
-
this.span.recordException(firstError, hrTime);
|
|
110
|
-
this.span.setStatus({
|
|
111
|
-
code: OtelApi.SpanStatusCode.ERROR,
|
|
112
|
-
message: firstError.message
|
|
113
|
-
});
|
|
114
|
-
} else {
|
|
115
|
-
// empty cause means no error
|
|
116
|
-
this.span.setStatus({
|
|
117
|
-
code: OtelApi.SpanStatusCode.OK
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
this.span.end(hrTime);
|
|
123
|
-
}
|
|
124
|
-
event(name, startTime, attributes) {
|
|
125
|
-
this.span.addEvent(name, attributes ? recordToAttributes(attributes) : undefined, nanosToHrTime(startTime));
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
/** @internal */
|
|
129
|
-
export const TracerProvider = /*#__PURE__*/Context.GenericTag("@effect/opentelemetry/Tracer/OtelTracerProvider");
|
|
130
|
-
/** @internal */
|
|
131
|
-
export const Tracer = /*#__PURE__*/Context.GenericTag("@effect/opentelemetry/Tracer/OtelTracer");
|
|
132
|
-
/** @internal */
|
|
133
|
-
export const make = /*#__PURE__*/Effect.map(Tracer, tracer => EffectTracer.make({
|
|
134
|
-
span(name, parent, context, links, startTime, kind, options) {
|
|
135
|
-
return new OtelSpan(OtelApi.context, OtelApi.trace, tracer, name, parent, context, links.slice(), startTime, kind, options);
|
|
136
|
-
},
|
|
137
|
-
context(execution, fiber) {
|
|
138
|
-
const currentSpan = fiber.currentSpan;
|
|
139
|
-
if (currentSpan === undefined) {
|
|
140
|
-
return execution();
|
|
141
|
-
}
|
|
142
|
-
return OtelApi.context.with(populateContext(OtelApi.context.active(), currentSpan), execution);
|
|
143
|
-
}
|
|
144
|
-
}));
|
|
145
|
-
/** @internal */
|
|
146
|
-
export const traceFlagsTag = /*#__PURE__*/Context.GenericTag("@effect/opentelemetry/Tracer/OtelTraceFlags");
|
|
147
|
-
/** @internal */
|
|
148
|
-
export const traceStateTag = /*#__PURE__*/Context.GenericTag("@effect/opentelemetry/Tracer/OtelTraceState");
|
|
149
|
-
/** @internal */
|
|
150
|
-
export const makeExternalSpan = options => {
|
|
151
|
-
let context = Context.empty();
|
|
152
|
-
if (options.traceFlags !== undefined) {
|
|
153
|
-
context = Context.add(context, traceFlagsTag, options.traceFlags);
|
|
154
|
-
}
|
|
155
|
-
if (typeof options.traceState === "string") {
|
|
156
|
-
context = Option.match(createTraceState(options.traceState), {
|
|
157
|
-
onNone: () => context,
|
|
158
|
-
onSome: traceState => Context.add(context, traceStateTag, traceState)
|
|
159
|
-
});
|
|
160
|
-
} else if (options.traceState) {
|
|
161
|
-
context = Context.add(context, traceStateTag, options.traceState);
|
|
162
|
-
}
|
|
163
|
-
return {
|
|
164
|
-
_tag: "ExternalSpan",
|
|
165
|
-
traceId: options.traceId,
|
|
166
|
-
spanId: options.spanId,
|
|
167
|
-
sampled: options.traceFlags !== undefined ? (options.traceFlags & OtelApi.TraceFlags.SAMPLED) === OtelApi.TraceFlags.SAMPLED : true,
|
|
168
|
-
context
|
|
169
|
-
};
|
|
170
|
-
};
|
|
171
|
-
const makeOtelSpan = (span, clock) => {
|
|
172
|
-
const spanContext = {
|
|
173
|
-
traceId: span.traceId,
|
|
174
|
-
spanId: span.spanId,
|
|
175
|
-
traceFlags: span.sampled ? OtelApi.TraceFlags.SAMPLED : OtelApi.TraceFlags.NONE,
|
|
176
|
-
isRemote: false
|
|
177
|
-
};
|
|
178
|
-
let exit = Exit.void;
|
|
179
|
-
const self = {
|
|
180
|
-
spanContext: () => spanContext,
|
|
181
|
-
setAttribute(key, value) {
|
|
182
|
-
span.attribute(key, value);
|
|
183
|
-
return self;
|
|
184
|
-
},
|
|
185
|
-
setAttributes(attributes) {
|
|
186
|
-
for (const [key, value] of Object.entries(attributes)) {
|
|
187
|
-
span.attribute(key, value);
|
|
188
|
-
}
|
|
189
|
-
return self;
|
|
190
|
-
},
|
|
191
|
-
addEvent(name) {
|
|
192
|
-
let attributes = undefined;
|
|
193
|
-
let startTime = undefined;
|
|
194
|
-
if (arguments.length === 3) {
|
|
195
|
-
attributes = arguments[1];
|
|
196
|
-
startTime = arguments[2];
|
|
197
|
-
} else {
|
|
198
|
-
startTime = arguments[1];
|
|
199
|
-
}
|
|
200
|
-
span.event(name, convertOtelTimeInput(startTime, clock), attributes);
|
|
201
|
-
return self;
|
|
202
|
-
},
|
|
203
|
-
addLink(link) {
|
|
204
|
-
span.addLinks([{
|
|
205
|
-
_tag: "SpanLink",
|
|
206
|
-
span: makeExternalSpan(link.context),
|
|
207
|
-
attributes: link.attributes ?? {}
|
|
208
|
-
}]);
|
|
209
|
-
return self;
|
|
210
|
-
},
|
|
211
|
-
addLinks(links) {
|
|
212
|
-
span.addLinks(links.map(link => ({
|
|
213
|
-
_tag: "SpanLink",
|
|
214
|
-
span: makeExternalSpan(link.context),
|
|
215
|
-
attributes: link.attributes ?? {}
|
|
216
|
-
})));
|
|
217
|
-
return self;
|
|
218
|
-
},
|
|
219
|
-
setStatus(status) {
|
|
220
|
-
exit = OtelApi.SpanStatusCode.ERROR ? Exit.die(status.message ?? "Unknown error") : Exit.void;
|
|
221
|
-
return self;
|
|
222
|
-
},
|
|
223
|
-
updateName: () => self,
|
|
224
|
-
end(endTime) {
|
|
225
|
-
const time = convertOtelTimeInput(endTime, clock);
|
|
226
|
-
span.end(time, exit);
|
|
227
|
-
return self;
|
|
228
|
-
},
|
|
229
|
-
isRecording: constTrue,
|
|
230
|
-
recordException(exception, timeInput) {
|
|
231
|
-
const time = convertOtelTimeInput(timeInput, clock);
|
|
232
|
-
const cause = Cause.fail(exception);
|
|
233
|
-
const error = Cause.prettyErrors(cause)[0];
|
|
234
|
-
span.event(error.message, time, {
|
|
235
|
-
"exception.type": error.name,
|
|
236
|
-
"exception.message": error.message,
|
|
237
|
-
"exception.stacktrace": error.stack ?? ""
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
};
|
|
241
|
-
return self;
|
|
242
|
-
};
|
|
243
|
-
const bigint1e6 = /*#__PURE__*/BigInt(1_000_000);
|
|
244
|
-
const bigint1e9 = /*#__PURE__*/BigInt(1_000_000_000);
|
|
245
|
-
const convertOtelTimeInput = (input, clock) => {
|
|
246
|
-
if (input === undefined) {
|
|
247
|
-
return clock.unsafeCurrentTimeNanos();
|
|
248
|
-
} else if (typeof input === "number") {
|
|
249
|
-
return BigInt(Math.round(input * 1_000_000));
|
|
250
|
-
} else if (input instanceof Date) {
|
|
251
|
-
return BigInt(input.getTime()) * bigint1e6;
|
|
252
|
-
}
|
|
253
|
-
const [seconds, nanos] = input;
|
|
254
|
-
return BigInt(seconds) * bigint1e9 + BigInt(nanos);
|
|
255
|
-
};
|
|
256
|
-
/** @internal */
|
|
257
|
-
export const currentOtelSpan = /*#__PURE__*/Effect.clockWith(clock => Effect.map(Effect.currentSpan, span => {
|
|
258
|
-
if (OtelSpanTypeId in span) {
|
|
259
|
-
return span.span;
|
|
260
|
-
}
|
|
261
|
-
return makeOtelSpan(span, clock);
|
|
262
|
-
}));
|
|
263
|
-
/** @internal */
|
|
264
|
-
export const layerGlobalProvider = /*#__PURE__*/Layer.sync(TracerProvider, () => OtelApi.trace.getTracerProvider());
|
|
265
|
-
/** @internal */
|
|
266
|
-
export const layerTracer = /*#__PURE__*/Layer.effect(Tracer, /*#__PURE__*/Effect.flatMap(/*#__PURE__*/Effect.zip(Resource, TracerProvider), ([resource, provider]) => Effect.sync(() => provider.getTracer(resource.attributes[OtelSemConv.ATTR_SERVICE_NAME], resource.attributes[OtelSemConv.ATTR_SERVICE_VERSION]))));
|
|
267
|
-
/** @internal */
|
|
268
|
-
export const layerGlobalTracer = /*#__PURE__*/layerTracer.pipe(/*#__PURE__*/Layer.provide(layerGlobalProvider));
|
|
269
|
-
/** @internal */
|
|
270
|
-
export const layerGlobal = /*#__PURE__*/Layer.unwrapEffect(Effect.map(make, Layer.setTracer)).pipe(/*#__PURE__*/Layer.provideMerge(layerGlobalTracer));
|
|
271
|
-
/** @internal */
|
|
272
|
-
export const layerWithoutOtelTracer = /*#__PURE__*/Layer.unwrapEffect(/*#__PURE__*/Effect.map(make, Layer.setTracer));
|
|
273
|
-
/** @internal */
|
|
274
|
-
export const layer = /*#__PURE__*/layerWithoutOtelTracer.pipe(/*#__PURE__*/Layer.provideMerge(layerTracer));
|
|
275
|
-
// -------------------------------------------------------------------------------------
|
|
276
|
-
// utils
|
|
277
|
-
// -------------------------------------------------------------------------------------
|
|
278
|
-
const createTraceState = /*#__PURE__*/Option.liftThrowable(OtelApi.createTraceState);
|
|
279
|
-
const populateContext = (otelContext, span, context) => span instanceof OtelSpan ? OtelApi.trace.setSpan(otelContext, span.span) : OtelApi.trace.setSpanContext(otelContext, makeSpanContext(span, context));
|
|
280
|
-
const makeSpanContext = (span, context) => ({
|
|
281
|
-
spanId: span.spanId,
|
|
282
|
-
traceId: span.traceId,
|
|
283
|
-
isRemote: span._tag === "ExternalSpan",
|
|
284
|
-
traceFlags: Option.getOrElse(context ? extractTraceTag(span, context, traceFlagsTag) : Context.getOption(span.context, traceFlagsTag), () => OtelApi.TraceFlags.SAMPLED),
|
|
285
|
-
traceState: Option.getOrUndefined(context ? extractTraceTag(span, context, traceStateTag) : Context.getOption(span.context, traceStateTag))
|
|
286
|
-
});
|
|
287
|
-
const extractTraceTag = (parent, context, tag) => Option.orElse(Context.getOption(context, tag), () => Context.getOption(parent.context, tag));
|
|
288
|
-
/** @internal */
|
|
289
|
-
export const withSpanContext = /*#__PURE__*/dual(2, (effect, spanContext) => Effect.withParentSpan(effect, makeExternalSpan(spanContext)));
|
|
290
|
-
//# sourceMappingURL=tracer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.js","names":["OtelApi","OtelSemConv","Cause","Context","Effect","Exit","constTrue","dual","Layer","Option","EffectTracer","Resource","nanosToHrTime","recordToAttributes","unknownToAttributeValue","OtelSpanTypeId","Symbol","for","kindMap","SpanKind","INTERNAL","CLIENT","SERVER","PRODUCER","CONSUMER","getOtelParent","tracer","otelContext","context","active","getSpan","otelParent","spanContext","undefined","some","externalSpan","spanId","traceId","sampled","traceFlags","none","OtelSpan","name","links","kind","_tag","span","attributes","Map","parent","status","constructor","contextApi","traceApi","effectParent","startTime","options","root","startSpan","length","map","link","makeSpanContext","populateContext","value","trace","deleteSpan","TraceFlags","SAMPLED","attribute","key","setAttribute","set","addLinks","push","end","endTime","exit","hrTime","setStatus","code","SpanStatusCode","OK","isInterruptedOnly","cause","message","pretty","firstError","prettyErrors","stack","renderErrorCause","recordException","ERROR","event","addEvent","TracerProvider","GenericTag","Tracer","make","slice","execution","fiber","currentSpan","with","traceFlagsTag","traceStateTag","makeExternalSpan","empty","add","traceState","match","createTraceState","onNone","onSome","makeOtelSpan","clock","NONE","isRemote","void","self","setAttributes","Object","entries","arguments","convertOtelTimeInput","addLink","die","updateName","time","isRecording","exception","timeInput","fail","error","bigint1e6","BigInt","bigint1e9","input","unsafeCurrentTimeNanos","Math","round","Date","getTime","seconds","nanos","currentOtelSpan","clockWith","layerGlobalProvider","sync","getTracerProvider","layerTracer","effect","flatMap","zip","resource","provider","getTracer","ATTR_SERVICE_NAME","ATTR_SERVICE_VERSION","layerGlobalTracer","pipe","provide","layerGlobal","unwrapEffect","setTracer","provideMerge","layerWithoutOtelTracer","layer","liftThrowable","setSpan","setSpanContext","getOrElse","extractTraceTag","getOption","getOrUndefined","tag","orElse","withSpanContext","withParentSpan"],"sources":["../../../src/internal/tracer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import * as Inspectable from "effect/Inspectable";
|
|
2
|
-
const bigint1e9 = 1000000000n;
|
|
3
|
-
/** @internal */
|
|
4
|
-
export const nanosToHrTime = timestamp => {
|
|
5
|
-
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)];
|
|
6
|
-
};
|
|
7
|
-
/** @internal */
|
|
8
|
-
export const recordToAttributes = value => Object.entries(value).reduce((acc, [key, value]) => {
|
|
9
|
-
acc[key] = unknownToAttributeValue(value);
|
|
10
|
-
return acc;
|
|
11
|
-
}, {});
|
|
12
|
-
/** @internal */
|
|
13
|
-
export const unknownToAttributeValue = value => {
|
|
14
|
-
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
15
|
-
return value;
|
|
16
|
-
} else if (typeof value === "bigint") {
|
|
17
|
-
return value.toString();
|
|
18
|
-
}
|
|
19
|
-
return Inspectable.toStringUnknown(value);
|
|
20
|
-
};
|
|
21
|
-
/** @internal */
|
|
22
|
-
export const isNonEmpty = a => a !== undefined && !(Array.isArray(a) && a.length === 0);
|
|
23
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["Inspectable","bigint1e9","nanosToHrTime","timestamp","Number","recordToAttributes","value","Object","entries","reduce","acc","key","unknownToAttributeValue","toString","toStringUnknown","isNonEmpty","a","undefined","Array","isArray","length"],"sources":["../../../src/internal/utils.ts"],"sourcesContent":[null],"mappings":"AAEA,OAAO,KAAKA,WAAW,MAAM,oBAAoB;AAEjD,MAAMC,SAAS,GAAG,WAAc;AAEhC;AACA,OAAO,MAAMC,aAAa,GAAIC,SAAiB,IAAoB;EACjE,OAAO,CAACC,MAAM,CAACD,SAAS,GAAGF,SAAS,CAAC,EAAEG,MAAM,CAACD,SAAS,GAAGF,SAAS,CAAC,CAAC;AACvE,CAAC;AAED;AACA,OAAO,MAAMI,kBAAkB,GAAIC,KAA8B,IAC/DC,MAAM,CAACC,OAAO,CAACF,KAAK,CAAC,CAACG,MAAM,CAAC,CAACC,GAAG,EAAE,CAACC,GAAG,EAAEL,KAAK,CAAC,KAAI;EACjDI,GAAG,CAACC,GAAG,CAAC,GAAGC,uBAAuB,CAACN,KAAK,CAAC;EACzC,OAAOI,GAAG;AACZ,CAAC,EAAE,EAAwB,CAAC;AAE9B;AACA,OAAO,MAAME,uBAAuB,GAAIN,KAAc,IAA4B;EAChF,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,SAAS,EAAE;IACxF,OAAOA,KAAK;EACd,CAAC,MAAM,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACpC,OAAOA,KAAK,CAACO,QAAQ,EAAE;EACzB;EACA,OAAOb,WAAW,CAACc,eAAe,CAACR,KAAK,CAAC;AAC3C,CAAC;AAED;AACA,OAAO,MAAMS,UAAU,GAAOC,CAAmC,IAC/DA,CAAC,KAAKC,SAAS,IAAI,EAAEC,KAAK,CAACC,OAAO,CAACH,CAAC,CAAC,IAAIA,CAAC,CAACI,MAAM,KAAK,CAAC,CAAC","ignoreList":[]}
|
package/dist/esm/package.json
DELETED
package/index/package.json
DELETED
package/src/Otlp.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import type * as Headers from "@effect/platform/Headers"
|
|
5
|
-
import type * as HttpClient from "@effect/platform/HttpClient"
|
|
6
|
-
import * as HttpClientRequest from "@effect/platform/HttpClientRequest"
|
|
7
|
-
import type * as Duration from "effect/Duration"
|
|
8
|
-
import * as Layer from "effect/Layer"
|
|
9
|
-
import type * as Logger from "effect/Logger"
|
|
10
|
-
import type * as Tracer from "effect/Tracer"
|
|
11
|
-
import * as OtlpLogger from "./OtlpLogger.js"
|
|
12
|
-
import * as OtlpMetrics from "./OtlpMetrics.js"
|
|
13
|
-
import * as OtlpTracer from "./OtlpTracer.js"
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @since 1.0.0
|
|
17
|
-
* @category Layers
|
|
18
|
-
*/
|
|
19
|
-
export const layer = (options: {
|
|
20
|
-
readonly baseUrl: string
|
|
21
|
-
readonly resource?: {
|
|
22
|
-
readonly serviceName?: string | undefined
|
|
23
|
-
readonly serviceVersion?: string | undefined
|
|
24
|
-
readonly attributes?: Record<string, unknown>
|
|
25
|
-
}
|
|
26
|
-
readonly headers?: Headers.Input | undefined
|
|
27
|
-
readonly maxBatchSize?: number | undefined
|
|
28
|
-
readonly replaceLogger?: Logger.Logger<any, any> | undefined
|
|
29
|
-
readonly tracerContext?: (<X>(f: () => X, span: Tracer.AnySpan) => X) | undefined
|
|
30
|
-
readonly loggerExportInterval?: Duration.DurationInput | undefined
|
|
31
|
-
readonly loggerExcludeLogSpans?: boolean | undefined
|
|
32
|
-
readonly metricsExportInterval?: Duration.DurationInput | undefined
|
|
33
|
-
readonly tracerExportInterval?: Duration.DurationInput | undefined
|
|
34
|
-
readonly shutdownTimeout?: Duration.DurationInput | undefined
|
|
35
|
-
}): Layer.Layer<never, never, HttpClient.HttpClient> => {
|
|
36
|
-
const baseReq = HttpClientRequest.get(options.baseUrl)
|
|
37
|
-
const url = (path: string) => HttpClientRequest.appendUrl(baseReq, path).url
|
|
38
|
-
return Layer.mergeAll(
|
|
39
|
-
OtlpLogger.layer({
|
|
40
|
-
replaceLogger: options.replaceLogger,
|
|
41
|
-
url: url("/v1/logs"),
|
|
42
|
-
resource: options.resource,
|
|
43
|
-
headers: options.headers,
|
|
44
|
-
exportInterval: options.loggerExportInterval,
|
|
45
|
-
maxBatchSize: options.maxBatchSize,
|
|
46
|
-
shutdownTimeout: options.shutdownTimeout,
|
|
47
|
-
excludeLogSpans: options.loggerExcludeLogSpans
|
|
48
|
-
}),
|
|
49
|
-
OtlpMetrics.layer({
|
|
50
|
-
url: url("/v1/metrics"),
|
|
51
|
-
resource: options.resource,
|
|
52
|
-
headers: options.headers,
|
|
53
|
-
exportInterval: options.metricsExportInterval,
|
|
54
|
-
shutdownTimeout: options.shutdownTimeout
|
|
55
|
-
}),
|
|
56
|
-
OtlpTracer.layer({
|
|
57
|
-
url: url("/v1/traces"),
|
|
58
|
-
resource: options.resource,
|
|
59
|
-
headers: options.headers,
|
|
60
|
-
exportInterval: options.tracerExportInterval,
|
|
61
|
-
maxBatchSize: options.maxBatchSize,
|
|
62
|
-
context: options.tracerContext,
|
|
63
|
-
shutdownTimeout: options.shutdownTimeout
|
|
64
|
-
})
|
|
65
|
-
)
|
|
66
|
-
}
|