@effect/opentelemetry 4.0.0-beta.1 → 4.0.0-beta.100
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/NodeSdk.d.ts +89 -17
- package/dist/NodeSdk.d.ts.map +1 -1
- package/dist/NodeSdk.js +31 -8
- package/dist/NodeSdk.js.map +1 -1
- package/dist/OtelLogger.d.ts +99 -0
- package/dist/OtelLogger.d.ts.map +1 -0
- package/dist/OtelLogger.js +139 -0
- package/dist/OtelLogger.js.map +1 -0
- package/dist/{Metrics.d.ts → OtelMetrics.d.ts} +45 -21
- package/dist/OtelMetrics.d.ts.map +1 -0
- package/dist/{Metrics.js → OtelMetrics.js} +27 -12
- package/dist/OtelMetrics.js.map +1 -0
- package/dist/OtelTracer.d.ts +186 -0
- package/dist/OtelTracer.d.ts.map +1 -0
- package/dist/{Tracer.js → OtelTracer.js} +129 -72
- package/dist/OtelTracer.js.map +1 -0
- 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/WebSdk.d.ts +82 -13
- package/dist/WebSdk.d.ts.map +1 -1
- package/dist/WebSdk.js +28 -7
- package/dist/WebSdk.js.map +1 -1
- package/dist/index.d.ts +12 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- 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 +22 -18
- package/src/NodeSdk.ts +90 -18
- package/src/OtelLogger.ts +193 -0
- package/src/{Metrics.ts → OtelMetrics.ts} +45 -21
- package/src/{Tracer.ts → OtelTracer.ts} +161 -101
- package/src/Resource.ts +58 -14
- package/src/WebSdk.ts +83 -14
- package/src/index.ts +12 -12
- package/src/internal/attributes.ts +7 -0
- package/src/internal/metrics.ts +7 -7
- package/dist/Logger.d.ts +0 -48
- package/dist/Logger.d.ts.map +0 -1
- package/dist/Logger.js +0 -76
- package/dist/Logger.js.map +0 -1
- package/dist/Metrics.d.ts.map +0 -1
- package/dist/Metrics.js.map +0 -1
- package/dist/Tracer.d.ts +0 -129
- package/dist/Tracer.d.ts.map +0 -1
- package/dist/Tracer.js.map +0 -1
- package/src/Logger.ts +0 -124
package/src/WebSdk.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"
|
|
@@ -11,14 +19,16 @@ import * as Effect from "effect/Effect"
|
|
|
11
19
|
import { constant, type LazyArg } from "effect/Function"
|
|
12
20
|
import * as Layer from "effect/Layer"
|
|
13
21
|
import { isNonEmpty } from "./internal/utilities.ts"
|
|
14
|
-
import * as Logger from "./
|
|
15
|
-
import * as Metrics from "./
|
|
22
|
+
import * as Logger from "./OtelLogger.ts"
|
|
23
|
+
import * as Metrics from "./OtelMetrics.ts"
|
|
24
|
+
import * as Tracer from "./OtelTracer.ts"
|
|
16
25
|
import * as Resource from "./Resource.ts"
|
|
17
|
-
import * as Tracer from "./Tracer.ts"
|
|
18
26
|
|
|
19
27
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
28
|
+
* Configuration for the Web OpenTelemetry layer, including resource metadata and optional tracing, metrics, and logging settings.
|
|
29
|
+
*
|
|
30
|
+
* @category models
|
|
31
|
+
* @since 4.0.0
|
|
22
32
|
*/
|
|
23
33
|
export interface Configuration {
|
|
24
34
|
readonly spanProcessor?: SpanProcessor | ReadonlyArray<SpanProcessor> | undefined
|
|
@@ -36,8 +46,10 @@ export interface Configuration {
|
|
|
36
46
|
}
|
|
37
47
|
|
|
38
48
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
49
|
+
* Creates a scoped Web OpenTelemetry tracer provider from one or more span processors and shuts it down when the layer is released.
|
|
50
|
+
*
|
|
51
|
+
* @category layers
|
|
52
|
+
* @since 4.0.0
|
|
41
53
|
*/
|
|
42
54
|
export const layerTracerProvider = (
|
|
43
55
|
processor: SpanProcessor | NonEmptyReadonlyArray<SpanProcessor>,
|
|
@@ -65,18 +77,75 @@ export const layerTracerProvider = (
|
|
|
65
77
|
)
|
|
66
78
|
|
|
67
79
|
/**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
80
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
81
|
+
*
|
|
82
|
+
* **When to use**
|
|
83
|
+
*
|
|
84
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
85
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
86
|
+
*
|
|
87
|
+
* **Details**
|
|
88
|
+
*
|
|
89
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
90
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
91
|
+
* when the corresponding processors or readers are non-empty.
|
|
92
|
+
*
|
|
93
|
+
* **Gotchas**
|
|
94
|
+
*
|
|
95
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
96
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
97
|
+
* treated as not configured.
|
|
98
|
+
*
|
|
99
|
+
* @category layers
|
|
100
|
+
* @since 4.0.0
|
|
70
101
|
*/
|
|
71
102
|
export const layer: {
|
|
72
103
|
/**
|
|
73
|
-
*
|
|
74
|
-
*
|
|
104
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
105
|
+
*
|
|
106
|
+
* **When to use**
|
|
107
|
+
*
|
|
108
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
109
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
110
|
+
*
|
|
111
|
+
* **Details**
|
|
112
|
+
*
|
|
113
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
114
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
115
|
+
* when the corresponding processors or readers are non-empty.
|
|
116
|
+
*
|
|
117
|
+
* **Gotchas**
|
|
118
|
+
*
|
|
119
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
120
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
121
|
+
* treated as not configured.
|
|
122
|
+
*
|
|
123
|
+
* @category layers
|
|
124
|
+
* @since 4.0.0
|
|
75
125
|
*/
|
|
76
126
|
(evaluate: LazyArg<Configuration>): Layer.Layer<Resource.Resource>
|
|
77
127
|
/**
|
|
78
|
-
*
|
|
79
|
-
*
|
|
128
|
+
* Creates a Web OpenTelemetry layer from configuration, providing the resource and enabling tracing, metrics, and logging when configured.
|
|
129
|
+
*
|
|
130
|
+
* **When to use**
|
|
131
|
+
*
|
|
132
|
+
* Use to install browser OpenTelemetry support when service metadata is
|
|
133
|
+
* configured in code and telemetry processors or readers are supplied directly.
|
|
134
|
+
*
|
|
135
|
+
* **Details**
|
|
136
|
+
*
|
|
137
|
+
* The configuration can be provided lazily or effectfully. The layer always
|
|
138
|
+
* provides `Resource.Resource`; tracing, metrics, and logging are installed only
|
|
139
|
+
* when the corresponding processors or readers are non-empty.
|
|
140
|
+
*
|
|
141
|
+
* **Gotchas**
|
|
142
|
+
*
|
|
143
|
+
* Browser resource metadata is explicit; this layer does not read
|
|
144
|
+
* OpenTelemetry environment variables. Empty processor or reader arrays are
|
|
145
|
+
* treated as not configured.
|
|
146
|
+
*
|
|
147
|
+
* @category layers
|
|
148
|
+
* @since 4.0.0
|
|
80
149
|
*/
|
|
81
150
|
<E, R>(evaluate: Effect.Effect<Configuration, E, R>): Layer.Layer<Resource.Resource, E, R>
|
|
82
151
|
} = (
|
package/src/index.ts
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @since
|
|
2
|
+
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
// @barrel: Auto-generated exports. Do not edit manually.
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @since
|
|
8
|
+
* @since 4.0.0
|
|
9
9
|
*/
|
|
10
|
-
export * as
|
|
10
|
+
export * as NodeSdk from "./NodeSdk.ts"
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* @since
|
|
13
|
+
* @since 4.0.0
|
|
14
14
|
*/
|
|
15
|
-
export * as
|
|
15
|
+
export * as OtelLogger from "./OtelLogger.ts"
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
-
* @since
|
|
18
|
+
* @since 4.0.0
|
|
19
19
|
*/
|
|
20
|
-
export * as
|
|
20
|
+
export * as OtelMetrics from "./OtelMetrics.ts"
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
-
* @since
|
|
23
|
+
* @since 4.0.0
|
|
24
24
|
*/
|
|
25
|
-
export * as
|
|
25
|
+
export * as OtelTracer from "./OtelTracer.ts"
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
|
-
* @since
|
|
28
|
+
* @since 4.0.0
|
|
29
29
|
*/
|
|
30
|
-
export * as
|
|
30
|
+
export * as Resource from "./Resource.ts"
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
|
-
* @since
|
|
33
|
+
* @since 4.0.0
|
|
34
34
|
*/
|
|
35
35
|
export * as WebSdk from "./WebSdk.ts"
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import type * as Otel from "@opentelemetry/api"
|
|
2
2
|
import * as Inspectable from "effect/Inspectable"
|
|
3
3
|
|
|
4
|
+
const bigint1e9 = BigInt(1_000_000_000)
|
|
5
|
+
|
|
6
|
+
/** @internal */
|
|
7
|
+
export const nanosToHrTime = (timestamp: bigint): Otel.HrTime => {
|
|
8
|
+
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)]
|
|
9
|
+
}
|
|
10
|
+
|
|
4
11
|
/** @internal */
|
|
5
12
|
export const recordToAttributes = (record: Record<string, unknown>): Otel.Attributes => {
|
|
6
13
|
const attributes: Otel.Attributes = {}
|
package/src/internal/metrics.ts
CHANGED
|
@@ -11,9 +11,9 @@ import type {
|
|
|
11
11
|
import { AggregationTemporality, DataPointType, InstrumentType } from "@opentelemetry/sdk-metrics"
|
|
12
12
|
import type { InstrumentDescriptor } from "@opentelemetry/sdk-metrics/build/src/InstrumentDescriptor.js"
|
|
13
13
|
import * as Arr from "effect/Array"
|
|
14
|
+
import type * as Context from "effect/Context"
|
|
14
15
|
import * as Metric from "effect/Metric"
|
|
15
|
-
import type * as
|
|
16
|
-
import type * as Metrics from "../Metrics.ts"
|
|
16
|
+
import type * as Metrics from "../OtelMetrics.ts"
|
|
17
17
|
|
|
18
18
|
const sdkName = "@effect/opentelemetry/Metrics"
|
|
19
19
|
|
|
@@ -37,7 +37,7 @@ interface PreviousSummaryState {
|
|
|
37
37
|
/** @internal */
|
|
38
38
|
export class MetricProducerImpl implements MetricProducer {
|
|
39
39
|
resource: Resources.Resource
|
|
40
|
-
|
|
40
|
+
context: Context.Context<never>
|
|
41
41
|
temporality: Metrics.TemporalityPreference
|
|
42
42
|
startTimes: Map<string, HrTime>
|
|
43
43
|
startTimeNanos: HrTime
|
|
@@ -49,11 +49,11 @@ export class MetricProducerImpl implements MetricProducer {
|
|
|
49
49
|
|
|
50
50
|
constructor(
|
|
51
51
|
resource: Resources.Resource,
|
|
52
|
-
|
|
52
|
+
context: Context.Context<never>,
|
|
53
53
|
temporality: Metrics.TemporalityPreference = "cumulative"
|
|
54
54
|
) {
|
|
55
55
|
this.resource = resource
|
|
56
|
-
this.
|
|
56
|
+
this.context = context
|
|
57
57
|
this.temporality = temporality
|
|
58
58
|
this.startTimes = new Map()
|
|
59
59
|
this.startTimeNanos = currentHrTime()
|
|
@@ -73,7 +73,7 @@ export class MetricProducerImpl implements MetricProducer {
|
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
collect(_options?: MetricCollectOptions): Promise<CollectionResult> {
|
|
76
|
-
const snapshot = Metric.snapshotUnsafe(this.
|
|
76
|
+
const snapshot = Metric.snapshotUnsafe(this.context)
|
|
77
77
|
const hrTimeNow = currentHrTime()
|
|
78
78
|
const metricData: Array<MetricData> = []
|
|
79
79
|
const metricDataByName = new Map<string, MetricData>()
|
|
@@ -111,7 +111,7 @@ export class MetricProducerImpl implements MetricProducer {
|
|
|
111
111
|
if (typeof currentCount === "bigint" && typeof previousCount === "bigint") {
|
|
112
112
|
reportValue = currentCount - previousCount
|
|
113
113
|
// Handle reset: if current < previous, report current value
|
|
114
|
-
if (reportValue <
|
|
114
|
+
if (reportValue < BigInt(0)) {
|
|
115
115
|
reportValue = currentCount
|
|
116
116
|
}
|
|
117
117
|
} else {
|
package/dist/Logger.d.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import * as Otel from "@opentelemetry/sdk-logs";
|
|
5
|
-
import type { NonEmptyReadonlyArray } from "effect/Array";
|
|
6
|
-
import type { DurationInput } from "effect/Duration";
|
|
7
|
-
import * as Effect from "effect/Effect";
|
|
8
|
-
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Logger from "effect/Logger";
|
|
10
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
11
|
-
import { Resource } from "./Resource.ts";
|
|
12
|
-
declare const OtelLoggerProvider_base: ServiceMap.ServiceClass<OtelLoggerProvider, "@effect/opentelemetry/Logger/OtelLoggerProvider", Otel.LoggerProvider>;
|
|
13
|
-
/**
|
|
14
|
-
* @since 1.0.0
|
|
15
|
-
* @category Services
|
|
16
|
-
*/
|
|
17
|
-
export declare class OtelLoggerProvider extends OtelLoggerProvider_base {
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* @since 1.0.0
|
|
21
|
-
* @category Constructors
|
|
22
|
-
*/
|
|
23
|
-
export declare const make: Effect.Effect<Logger.Logger<unknown, void>, never, OtelLoggerProvider>;
|
|
24
|
-
/**
|
|
25
|
-
* @since 1.0.0
|
|
26
|
-
* @category Layers
|
|
27
|
-
*/
|
|
28
|
-
export declare const layer: (options: {
|
|
29
|
-
/**
|
|
30
|
-
* If set to `true`, the OpenTelemetry logger will be merged with existing
|
|
31
|
-
* loggers in the application.
|
|
32
|
-
*
|
|
33
|
-
* If set to `false`, the OpenTelemetry logger will replace all existing
|
|
34
|
-
* loggers in the application.
|
|
35
|
-
*
|
|
36
|
-
* Defaults to `true`.
|
|
37
|
-
*/
|
|
38
|
-
readonly mergeWithExisting?: boolean | undefined;
|
|
39
|
-
}) => Layer.Layer<never, never, OtelLoggerProvider>;
|
|
40
|
-
/**
|
|
41
|
-
* @since 1.0.0
|
|
42
|
-
* @category Layers
|
|
43
|
-
*/
|
|
44
|
-
export declare const layerLoggerProvider: (processor: Otel.LogRecordProcessor | NonEmptyReadonlyArray<Otel.LogRecordProcessor>, config?: Omit<Otel.LoggerProviderConfig, "resource"> & {
|
|
45
|
-
readonly shutdownTimeout?: DurationInput | undefined;
|
|
46
|
-
}) => Layer.Layer<OtelLoggerProvider, never, Resource>;
|
|
47
|
-
export {};
|
|
48
|
-
//# sourceMappingURL=Logger.d.ts.map
|
package/dist/Logger.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,yBAAyB,CAAA;AAC/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAGzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAG/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;;AAExC;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,uBAGc;CAAG;AAEzD;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,CAC9B,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAC5B,KAAK,EACL,kBAAkB,CAqClB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,SAAS;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACjD,KAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAG5C,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAC9B,WAAW,IAAI,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,kBAAkB,CAAC,EACnF,SAAS,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,GAAG;IACrD,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAA;CACrD,KACA,KAAK,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,EAAE,QAAQ,CAqB/C,CAAA"}
|
package/dist/Logger.js
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import * as Otel from "@opentelemetry/sdk-logs";
|
|
5
|
-
import * as Arr from "effect/Array";
|
|
6
|
-
import * as Clock from "effect/Clock";
|
|
7
|
-
import * as Effect from "effect/Effect";
|
|
8
|
-
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Logger from "effect/Logger";
|
|
10
|
-
import * as LogLevel from "effect/LogLevel";
|
|
11
|
-
import * as Predicate from "effect/Predicate";
|
|
12
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
13
|
-
import * as Tracer from "effect/Tracer";
|
|
14
|
-
import { unknownToAttributeValue } from "./internal/attributes.js";
|
|
15
|
-
import { Resource } from "./Resource.js";
|
|
16
|
-
/**
|
|
17
|
-
* @since 1.0.0
|
|
18
|
-
* @category Services
|
|
19
|
-
*/
|
|
20
|
-
export class OtelLoggerProvider extends /*#__PURE__*/ServiceMap.Service()("@effect/opentelemetry/Logger/OtelLoggerProvider") {}
|
|
21
|
-
/**
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
* @category Constructors
|
|
24
|
-
*/
|
|
25
|
-
export const make = /*#__PURE__*/Effect.gen(function* () {
|
|
26
|
-
const loggerProvider = yield* OtelLoggerProvider;
|
|
27
|
-
const clock = yield* Clock.Clock;
|
|
28
|
-
const otelLogger = loggerProvider.getLogger("@effect/opentelemetry");
|
|
29
|
-
return Logger.make(options => {
|
|
30
|
-
const attributes = {
|
|
31
|
-
fiberId: options.fiber.id
|
|
32
|
-
};
|
|
33
|
-
const span = ServiceMap.getOrUndefined(options.fiber.services, Tracer.ParentSpan);
|
|
34
|
-
if (Predicate.isNotUndefined(span)) {
|
|
35
|
-
attributes.spanId = span.spanId;
|
|
36
|
-
attributes.traceId = span.traceId;
|
|
37
|
-
}
|
|
38
|
-
// TODO: add back after log spans / annotations
|
|
39
|
-
// for (const [key, value] of options.annotations) {
|
|
40
|
-
// attributes[key] = unknownToAttributeValue(value)
|
|
41
|
-
// }
|
|
42
|
-
// const now = options.date.getTime()
|
|
43
|
-
// for (const span of options.spans) {
|
|
44
|
-
// attributes[`logSpan.${span.label}`] = `${now - span.startTime}ms`
|
|
45
|
-
// }
|
|
46
|
-
const message = Arr.ensure(options.message).map(unknownToAttributeValue);
|
|
47
|
-
otelLogger.emit({
|
|
48
|
-
body: message.length === 1 ? message[0] : message,
|
|
49
|
-
severityText: options.logLevel,
|
|
50
|
-
severityNumber: LogLevel.getOrdinal(options.logLevel),
|
|
51
|
-
timestamp: options.date,
|
|
52
|
-
observedTimestamp: clock.currentTimeMillisUnsafe(),
|
|
53
|
-
attributes
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
/**
|
|
58
|
-
* @since 1.0.0
|
|
59
|
-
* @category Layers
|
|
60
|
-
*/
|
|
61
|
-
export const layer = options => Logger.layer([make], {
|
|
62
|
-
mergeWithExisting: options.mergeWithExisting ?? true
|
|
63
|
-
});
|
|
64
|
-
/**
|
|
65
|
-
* @since 1.0.0
|
|
66
|
-
* @category Layers
|
|
67
|
-
*/
|
|
68
|
-
export const layerLoggerProvider = (processor, config) => Layer.effect(OtelLoggerProvider, Effect.gen(function* () {
|
|
69
|
-
const resource = yield* Resource;
|
|
70
|
-
return yield* Effect.acquireRelease(Effect.sync(() => new Otel.LoggerProvider({
|
|
71
|
-
...(config ?? undefined),
|
|
72
|
-
processors: Arr.ensure(processor),
|
|
73
|
-
resource
|
|
74
|
-
})), provider => Effect.promise(() => provider.forceFlush().then(() => provider.shutdown())).pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(config?.shutdownTimeout ?? 3000)));
|
|
75
|
-
}));
|
|
76
|
-
//# sourceMappingURL=Logger.js.map
|
package/dist/Logger.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","names":["Otel","Arr","Clock","Effect","Layer","Logger","LogLevel","Predicate","ServiceMap","Tracer","unknownToAttributeValue","Resource","OtelLoggerProvider","Service","make","gen","loggerProvider","clock","otelLogger","getLogger","options","attributes","fiberId","fiber","id","span","getOrUndefined","services","ParentSpan","isNotUndefined","spanId","traceId","message","ensure","map","emit","body","length","severityText","logLevel","severityNumber","getOrdinal","timestamp","date","observedTimestamp","currentTimeMillisUnsafe","layer","mergeWithExisting","layerLoggerProvider","processor","config","effect","resource","acquireRelease","sync","LoggerProvider","undefined","processors","provider","promise","forceFlush","then","shutdown","pipe","ignore","interruptible","timeoutOption","shutdownTimeout"],"sources":["../src/Logger.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/Metrics.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metrics.d.ts","sourceRoot":"","sources":["../src/Metrics.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9E,OAAO,KAAK,KAAK,GAAG,MAAM,cAAc,CAAA;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG,OAAO,CAAA;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,cAAc,qBAAqB,KAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAK5G,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,MAAM,cAAc,EACpB,cAAc,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,EAC7E,UAAU;IACR,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAA;CACrD,KACA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAkB5C,CAAA;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,KAAK,GAChB,UAAU,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,EACzE,UAAU;IACR,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAA;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAA;CACzD,KACA,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAIjC,CAAA"}
|
package/dist/Metrics.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metrics.js","names":["Effect","Layer","MetricProducerImpl","Resource","makeProducer","temporality","gen","resource","services","registerProducer","self","metricReader","options","acquireRelease","sync","reader","readers","Array","isArray","forEach","setMetricProducer","promise","Promise","all","map","shutdown","pipe","ignore","interruptible","timeoutOption","shutdownTimeout","layer","evaluate","effectDiscard","flatMap","producer"],"sources":["../src/Metrics.ts"],"sourcesContent":[null],"mappings":"AAMA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,SAASC,kBAAkB,QAAQ,uBAAuB;AAC1D,SAASC,QAAQ,QAAQ,eAAe;AAiBxC;;;;;;AAMA,OAAO,MAAMC,YAAY,GAAIC,WAAmC,IAC9DL,MAAM,CAACM,GAAG,CAAC,aAAS;EAClB,MAAMC,QAAQ,GAAG,OAAOJ,QAAQ;EAChC,MAAMK,QAAQ,GAAG,OAAOR,MAAM,CAACQ,QAAQ,EAAS;EAChD,OAAO,IAAIN,kBAAkB,CAACK,QAAQ,EAAEC,QAAQ,EAAEH,WAAW,CAAC;AAChE,CAAC,CAAC;AAEJ;;;;;;AAMA,OAAO,MAAMI,gBAAgB,GAAGA,CAC9BC,IAAoB,EACpBC,YAA6E,EAC7EC,OAEC,KAEDZ,MAAM,CAACa,cAAc,CACnBb,MAAM,CAACc,IAAI,CAAC,MAAK;EACf,MAAMC,MAAM,GAAGJ,YAAY,EAAE;EAC7B,MAAMK,OAAO,GAAwBC,KAAK,CAACC,OAAO,CAACH,MAAM,CAAC,GAAGA,MAAM,GAAG,CAACA,MAAM,CAAQ;EACrFC,OAAO,CAACG,OAAO,CAAEJ,MAAM,IAAKA,MAAM,CAACK,iBAAiB,CAACV,IAAI,CAAC,CAAC;EAC3D,OAAOM,OAAO;AAChB,CAAC,CAAC,EACDA,OAAO,IACNhB,MAAM,CAACqB,OAAO,CAAC,MACbC,OAAO,CAACC,GAAG,CACTP,OAAO,CAACQ,GAAG,CAAET,MAAM,IAAKA,MAAM,CAACU,QAAQ,EAAE,CAAC,CAC3C,CACF,CAACC,IAAI,CACJ1B,MAAM,CAAC2B,MAAM,EACb3B,MAAM,CAAC4B,aAAa,EACpB5B,MAAM,CAAC6B,aAAa,CAACjB,OAAO,EAAEkB,eAAe,IAAI,IAAI,CAAC,CACvD,CACJ;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,OAAO,MAAMC,KAAK,GAAGA,CACnBC,QAAyE,EACzEpB,OAGC,KAEDX,KAAK,CAACgC,aAAa,CAACjC,MAAM,CAACkC,OAAO,CAChC9B,YAAY,CAACQ,OAAO,EAAEP,WAAW,CAAC,EACjC8B,QAAQ,IAAK1B,gBAAgB,CAAC0B,QAAQ,EAAEH,QAAQ,EAAEpB,OAAO,CAAC,CAC5D,CAAC","ignoreList":[]}
|
package/dist/Tracer.d.ts
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import * as Otel from "@opentelemetry/api";
|
|
5
|
-
import * as Cause from "effect/Cause";
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as Layer from "effect/Layer";
|
|
8
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
9
|
-
import * as Tracer from "effect/Tracer";
|
|
10
|
-
import { Resource } from "./Resource.ts";
|
|
11
|
-
declare const OtelTracer_base: ServiceMap.ServiceClass<OtelTracer, "@effect/opentelemetry/Tracer", Otel.Tracer>;
|
|
12
|
-
/**
|
|
13
|
-
* @since 1.0.0
|
|
14
|
-
* @category Services
|
|
15
|
-
*/
|
|
16
|
-
export declare class OtelTracer extends OtelTracer_base {
|
|
17
|
-
}
|
|
18
|
-
declare const OtelTracerProvider_base: ServiceMap.ServiceClass<OtelTracerProvider, "@effect/opentelemetry/Tracer/OtelTracerProvider", Otel.TracerProvider>;
|
|
19
|
-
/**
|
|
20
|
-
* @since 1.0.0
|
|
21
|
-
* @category Services
|
|
22
|
-
*/
|
|
23
|
-
export declare class OtelTracerProvider extends OtelTracerProvider_base {
|
|
24
|
-
}
|
|
25
|
-
declare const OtelTraceFlags_base: ServiceMap.ServiceClass<OtelTraceFlags, "@effect/opentelemetry/Tracer/OtelTraceFlags", Otel.TraceFlags>;
|
|
26
|
-
/**
|
|
27
|
-
* @since 1.0.0
|
|
28
|
-
* @category Services
|
|
29
|
-
*/
|
|
30
|
-
export declare class OtelTraceFlags extends OtelTraceFlags_base {
|
|
31
|
-
}
|
|
32
|
-
declare const OtelTraceState_base: ServiceMap.ServiceClass<OtelTraceState, "@effect/opentelemetry/Tracer/OtelTraceState", Otel.TraceState>;
|
|
33
|
-
/**
|
|
34
|
-
* @since 1.0.0
|
|
35
|
-
* @category Services
|
|
36
|
-
*/
|
|
37
|
-
export declare class OtelTraceState extends OtelTraceState_base {
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* @since 1.0.0
|
|
41
|
-
* @category Constructors
|
|
42
|
-
*/
|
|
43
|
-
export declare const make: Effect.Effect<Tracer.Tracer, never, OtelTracer>;
|
|
44
|
-
/**
|
|
45
|
-
* @since 1.0.0
|
|
46
|
-
* @category Constructors
|
|
47
|
-
*/
|
|
48
|
-
export declare const makeExternalSpan: (options: {
|
|
49
|
-
readonly traceId: string;
|
|
50
|
-
readonly spanId: string;
|
|
51
|
-
readonly traceFlags?: number | undefined;
|
|
52
|
-
readonly traceState?: string | Otel.TraceState | undefined;
|
|
53
|
-
}) => Tracer.ExternalSpan;
|
|
54
|
-
/**
|
|
55
|
-
* @since 1.0.0
|
|
56
|
-
* @category Layers
|
|
57
|
-
*/
|
|
58
|
-
export declare const layerGlobalProvider: Layer.Layer<OtelTracerProvider>;
|
|
59
|
-
/**
|
|
60
|
-
* @since 1.0.0
|
|
61
|
-
* @category Layers
|
|
62
|
-
*/
|
|
63
|
-
export declare const layerTracer: Layer.Layer<OtelTracer, never, OtelTracerProvider | Resource>;
|
|
64
|
-
/**
|
|
65
|
-
* @since 1.0.0
|
|
66
|
-
* @category Layers
|
|
67
|
-
*/
|
|
68
|
-
export declare const layerGlobalTracer: Layer.Layer<OtelTracer, never, Resource>;
|
|
69
|
-
/**
|
|
70
|
-
* @since 1.0.0
|
|
71
|
-
* @category Layers
|
|
72
|
-
*/
|
|
73
|
-
export declare const layerGlobal: Layer.Layer<OtelTracer, never, Resource>;
|
|
74
|
-
/**
|
|
75
|
-
* @since 1.0.0
|
|
76
|
-
* @category Layers
|
|
77
|
-
*/
|
|
78
|
-
export declare const layerWithoutOtelTracer: Layer.Layer<never, never, OtelTracer>;
|
|
79
|
-
/**
|
|
80
|
-
* @since 1.0.0
|
|
81
|
-
* @category Layers
|
|
82
|
-
*/
|
|
83
|
-
export declare const layer: Layer.Layer<OtelTracer, never, OtelTracerProvider | Resource>;
|
|
84
|
-
/**
|
|
85
|
-
* Get the current OpenTelemetry span.
|
|
86
|
-
*
|
|
87
|
-
* Works with both the official OpenTelemetry API (via `Tracer.layer`,
|
|
88
|
-
* `NodeSdk.layer`, etc.) and the lightweight OTLP module (`OtlpTracer.layer`).
|
|
89
|
-
*
|
|
90
|
-
* When using OTLP, the returned span is a wrapper that conforms to the
|
|
91
|
-
* OpenTelemetry `Span` interface.
|
|
92
|
-
*
|
|
93
|
-
* @since 1.0.0
|
|
94
|
-
* @category accessors
|
|
95
|
-
*/
|
|
96
|
-
export declare const currentOtelSpan: Effect.Effect<Otel.Span, Cause.NoSuchElementError>;
|
|
97
|
-
/**
|
|
98
|
-
* Set the effect's parent span from the given opentelemetry `SpanContext`.
|
|
99
|
-
*
|
|
100
|
-
* This is handy when you set up OpenTelemetry outside of Effect and want to
|
|
101
|
-
* attach to a parent span.
|
|
102
|
-
*
|
|
103
|
-
* @since 1.0.0
|
|
104
|
-
* @category Propagation
|
|
105
|
-
*/
|
|
106
|
-
export declare const withSpanContext: {
|
|
107
|
-
/**
|
|
108
|
-
* Set the effect's parent span from the given opentelemetry `SpanContext`.
|
|
109
|
-
*
|
|
110
|
-
* This is handy when you set up OpenTelemetry outside of Effect and want to
|
|
111
|
-
* attach to a parent span.
|
|
112
|
-
*
|
|
113
|
-
* @since 1.0.0
|
|
114
|
-
* @category Propagation
|
|
115
|
-
*/
|
|
116
|
-
(spanContext: Otel.SpanContext): <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Tracer.ParentSpan>>;
|
|
117
|
-
/**
|
|
118
|
-
* Set the effect's parent span from the given opentelemetry `SpanContext`.
|
|
119
|
-
*
|
|
120
|
-
* This is handy when you set up OpenTelemetry outside of Effect and want to
|
|
121
|
-
* attach to a parent span.
|
|
122
|
-
*
|
|
123
|
-
* @since 1.0.0
|
|
124
|
-
* @category Propagation
|
|
125
|
-
*/
|
|
126
|
-
<A, E, R>(self: Effect.Effect<A, E, R>, spanContext: Otel.SpanContext): Effect.Effect<A, E, Exclude<R, Tracer.ParentSpan>>;
|
|
127
|
-
};
|
|
128
|
-
export {};
|
|
129
|
-
//# sourceMappingURL=Tracer.d.ts.map
|
package/dist/Tracer.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.d.ts","sourceRoot":"","sources":["../src/Tracer.ts"],"names":[],"mappings":"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"}
|
package/dist/Tracer.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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":[]}
|