@effect/opentelemetry
Advanced tools
Comparing version 0.1.0 to 0.1.1
@@ -11,2 +11,3 @@ "use strict"; | ||
var Tracer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Tracer")); | ||
var _Resource = /*#__PURE__*/require("@effect/opentelemetry/Resource"); | ||
var OtelApi = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@opentelemetry/api")); | ||
@@ -76,11 +77,11 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
exports.OtelSpan = OtelSpan; | ||
const make = options => Effect.map(Effect.sync(() => OtelApi.trace.getTracer(options.name, options.version)), tracer => Tracer.make({ | ||
const make = /*#__PURE__*/Effect.map(tracer => Tracer.make({ | ||
span(name, parent, startTime) { | ||
return new OtelSpan(OtelApi.trace, OtelApi.context, tracer, name, parent, startTime); | ||
} | ||
})); | ||
}))( /*#__PURE__*/Effect.flatMap(resource => Effect.sync(() => OtelApi.trace.getTracer(resource.attributes["service.name"], resource.attributes["service.version"])))(_Resource.Resource)); | ||
/** @internal */ | ||
exports.make = make; | ||
const layer = options => Layer.unwrapEffect(Effect.map(make(options), Effect.setTracer)); | ||
const layer = /*#__PURE__*/Layer.unwrapEffect( /*#__PURE__*/Effect.map(make, Effect.setTracer)); | ||
exports.layer = layer; | ||
//# sourceMappingURL=tracer.js.map |
import * as Layer from "@effect/io/Layer"; | ||
import { Resource } from "@effect/opentelemetry/Resource"; | ||
import type { NodeSDKConfiguration } from "@opentelemetry/sdk-node"; | ||
@@ -7,3 +8,3 @@ /** | ||
*/ | ||
export declare const layer: (config: Partial<NodeSDKConfiguration>) => Layer.Layer<never, never, never>; | ||
export declare const layer: (config: Partial<Omit<NodeSDKConfiguration, "resource" | "serviceName">>) => Layer.Layer<Resource, never, never>; | ||
//# sourceMappingURL=NodeSdk.d.ts.map |
@@ -9,2 +9,3 @@ "use strict"; | ||
var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Layer")); | ||
var _Resource = /*#__PURE__*/require("@effect/opentelemetry/Resource"); | ||
var _sdkNode = /*#__PURE__*/require("@opentelemetry/sdk-node"); | ||
@@ -21,4 +22,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
*/ | ||
const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.tap(Effect.sync(() => new _sdkNode.NodeSDK(config)), sdk => Effect.sync(() => sdk.start())), sdk => Effect.promise(() => sdk.shutdown()))); | ||
const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.flatMap(_Resource.Resource, resource => Effect.tap(Effect.sync(() => new _sdkNode.NodeSDK({ | ||
...config, | ||
resource | ||
})), sdk => Effect.sync(() => sdk.start()))), sdk => Effect.promise(() => sdk.shutdown()))); | ||
exports.layer = layer; | ||
//# sourceMappingURL=NodeSdk.js.map |
{ | ||
"name": "@effect/opentelemetry", | ||
"version": "0.1.0", | ||
"version": "0.1.1", | ||
"license": "MIT", | ||
@@ -12,3 +12,5 @@ "repository": { | ||
"@effect/io": "^0.27.1", | ||
"@opentelemetry/api": "^1.4.1" | ||
"@opentelemetry/api": "^1.4.1", | ||
"@opentelemetry/resources": "^1.14.0", | ||
"@opentelemetry/semantic-conventions": "^1.14.0" | ||
}, | ||
@@ -15,0 +17,0 @@ "publishConfig": { |
@@ -0,1 +1,2 @@ | ||
import { pipe } from "@effect/data/Function" | ||
import type { Option } from "@effect/data/Option" | ||
@@ -7,3 +8,3 @@ import * as Cause from "@effect/io/Cause" | ||
import * as Tracer from "@effect/io/Tracer" | ||
import type { TracerOptions } from "@effect/opentelemetry/Tracer" | ||
import { Resource } from "@effect/opentelemetry/Resource" | ||
import * as OtelApi from "@opentelemetry/api" | ||
@@ -93,24 +94,31 @@ | ||
/** @internal */ | ||
export const make = (options: TracerOptions) => | ||
Effect.map( | ||
Effect.sync(() => OtelApi.trace.getTracer(options.name, options.version)), | ||
(tracer) => | ||
Tracer.make({ | ||
span(name, parent, startTime) { | ||
return new OtelSpan( | ||
OtelApi.trace, | ||
OtelApi.context, | ||
tracer, | ||
name, | ||
parent, | ||
startTime | ||
) | ||
} | ||
}) | ||
export const make = pipe( | ||
Resource, | ||
Effect.flatMap((resource) => | ||
Effect.sync(() => | ||
OtelApi.trace.getTracer( | ||
resource.attributes["service.name"] as string, | ||
resource.attributes["service.version"] as string | ||
) | ||
) | ||
), | ||
Effect.map((tracer) => | ||
Tracer.make({ | ||
span(name, parent, startTime) { | ||
return new OtelSpan( | ||
OtelApi.trace, | ||
OtelApi.context, | ||
tracer, | ||
name, | ||
parent, | ||
startTime | ||
) | ||
} | ||
}) | ||
) | ||
) | ||
/** @internal */ | ||
export const layer = (options: TracerOptions) => | ||
Layer.unwrapEffect( | ||
Effect.map(make(options), Effect.setTracer) | ||
) | ||
export const layer = Layer.unwrapEffect( | ||
Effect.map(make, Effect.setTracer) | ||
) |
@@ -6,2 +6,3 @@ /** | ||
import * as Layer from "@effect/io/Layer" | ||
import { Resource } from "@effect/opentelemetry/Resource" | ||
import type { NodeSDKConfiguration } from "@opentelemetry/sdk-node" | ||
@@ -14,9 +15,13 @@ import { NodeSDK } from "@opentelemetry/sdk-node" | ||
*/ | ||
export const layer = (config: Partial<NodeSDKConfiguration>) => | ||
export const layer = (config: Partial<Omit<NodeSDKConfiguration, "resource" | "serviceName">>) => | ||
Layer.scopedDiscard(Effect.acquireRelease( | ||
Effect.tap( | ||
Effect.sync(() => new NodeSDK(config)), | ||
(sdk) => Effect.sync(() => sdk.start()) | ||
Effect.flatMap( | ||
Resource, | ||
(resource) => | ||
Effect.tap( | ||
Effect.sync(() => new NodeSDK({ ...config, resource })), | ||
(sdk) => Effect.sync(() => sdk.start()) | ||
) | ||
), | ||
(sdk) => Effect.promise(() => sdk.shutdown()) | ||
)) |
@@ -8,17 +8,9 @@ /** | ||
import * as internal from "@effect/opentelemetry/internal_effect_untraced/tracer" | ||
import type { Resource } from "@effect/opentelemetry/Resource" | ||
/** | ||
* @since 1.0.0 | ||
* @category models | ||
*/ | ||
export interface TracerOptions { | ||
readonly name: string | ||
readonly version?: string | ||
} | ||
/** | ||
* @since 1.0.0 | ||
* @category constructors | ||
*/ | ||
export const make: (options: TracerOptions) => Effect<never, never, Tracer> = internal.make | ||
export const make: Effect<Resource, never, Tracer> = internal.make | ||
@@ -29,2 +21,2 @@ /** | ||
*/ | ||
export const layer: (options: TracerOptions) => Layer<never, never, never> = internal.layer | ||
export const layer: Layer<Resource, never, never> = internal.layer |
@@ -7,15 +7,8 @@ /** | ||
import type { Tracer } from "@effect/io/Tracer"; | ||
import type { Resource } from "@effect/opentelemetry/Resource"; | ||
/** | ||
* @since 1.0.0 | ||
* @category models | ||
*/ | ||
export interface TracerOptions { | ||
readonly name: string; | ||
readonly version?: string; | ||
} | ||
/** | ||
* @since 1.0.0 | ||
* @category constructors | ||
*/ | ||
export declare const make: (options: TracerOptions) => Effect<never, never, Tracer>; | ||
export declare const make: Effect<Resource, never, Tracer>; | ||
/** | ||
@@ -25,3 +18,3 @@ * @since 1.0.0 | ||
*/ | ||
export declare const layer: (options: TracerOptions) => Layer<never, never, never>; | ||
export declare const layer: Layer<Resource, never, never>; | ||
//# sourceMappingURL=Tracer.d.ts.map |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
43609
36
658
0
5
+ Added@opentelemetry/core@1.30.1(transitive)
+ Added@opentelemetry/resources@1.30.1(transitive)
+ Added@opentelemetry/semantic-conventions@1.28.01.29.0(transitive)