@effect/opentelemetry 0.2.0 → 0.3.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/NodeSdk.js +1 -1
- package/NodeSdk.js.map +1 -1
- package/Tracer.d.ts +9 -0
- package/Tracer.d.ts.map +1 -1
- package/Tracer.js +8 -2
- package/Tracer.js.map +1 -1
- package/internal/tracer.d.ts.map +1 -0
- package/{internal_effect_untraced → internal}/tracer.js +44 -21
- package/internal/tracer.js.map +1 -0
- package/mjs/NodeSdk.mjs +1 -1
- package/mjs/NodeSdk.mjs.map +1 -1
- package/mjs/Tracer.mjs +10 -1
- package/mjs/Tracer.mjs.map +1 -1
- package/mjs/{internal_effect_untraced → internal}/tracer.mjs +40 -19
- package/mjs/internal/tracer.mjs.map +1 -0
- package/package.json +3 -3
- package/src/NodeSdk.ts +1 -1
- package/src/Tracer.ts +12 -1
- package/src/{internal_effect_untraced → internal}/tracer.ts +83 -42
- package/internal_effect_untraced/tracer.d.ts.map +0 -1
- package/internal_effect_untraced/tracer.js.map +0 -1
- package/mjs/internal_effect_untraced/tracer.mjs.map +0 -1
- /package/{internal_effect_untraced → internal}/tracer.d.ts +0 -0
package/NodeSdk.js
CHANGED
|
@@ -24,7 +24,7 @@ const config = config => config;
|
|
|
24
24
|
* @category layer
|
|
25
25
|
*/
|
|
26
26
|
exports.config = config;
|
|
27
|
-
const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.flatMap(Effect.all(config, _Resource.Resource), ([config, resource]) => Effect.sync(() => {
|
|
27
|
+
const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.flatMap(Effect.all([config, _Resource.Resource]), ([config, resource]) => Effect.sync(() => {
|
|
28
28
|
const sdk = new _sdkNode.NodeSDK({
|
|
29
29
|
...config,
|
|
30
30
|
resource
|
package/NodeSdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSdk.js","names":["Effect","_interopRequireWildcard","require","Layer","_Resource","_sdkNode","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","config","exports","layer","scopedDiscard","acquireRelease","flatMap","all","Resource","resource","sync","sdk","NodeSDK","start","promise","shutdown"],"sources":["./src/NodeSdk.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,KAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,SAAA,gBAAAF,OAAA;AAEA,IAAAG,QAAA,gBAAAH,OAAA;AAAiD,SAAAI,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAN,wBAAAU,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAPjD;;;;AAeA;;;;AAIO,MAAMW,MAAM,GAA8CA,MAAqB,IAAKA,MAAM;AAEjG;;;;AAAAC,OAAA,CAAAD,MAAA,GAAAA,MAAA;AAIO,MAAME,KAAK,GAChBF,MAA0C,IAE1CzB,KAAK,CAAC4B,aAAa,CAAC/B,MAAM,CAACgC,cAAc,CACvChC,MAAM,CAACiC,OAAO,CACZjC,MAAM,CAACkC,GAAG,CAACN,MAAM,EAAEO,kBAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"NodeSdk.js","names":["Effect","_interopRequireWildcard","require","Layer","_Resource","_sdkNode","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","config","exports","layer","scopedDiscard","acquireRelease","flatMap","all","Resource","resource","sync","sdk","NodeSDK","start","promise","shutdown"],"sources":["./src/NodeSdk.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,KAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,SAAA,gBAAAF,OAAA;AAEA,IAAAG,QAAA,gBAAAH,OAAA;AAAiD,SAAAI,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAN,wBAAAU,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAPjD;;;;AAeA;;;;AAIO,MAAMW,MAAM,GAA8CA,MAAqB,IAAKA,MAAM;AAEjG;;;;AAAAC,OAAA,CAAAD,MAAA,GAAAA,MAAA;AAIO,MAAME,KAAK,GAChBF,MAA0C,IAE1CzB,KAAK,CAAC4B,aAAa,CAAC/B,MAAM,CAACgC,cAAc,CACvChC,MAAM,CAACiC,OAAO,CACZjC,MAAM,CAACkC,GAAG,CAAC,CAACN,MAAM,EAAEO,kBAAQ,CAAC,CAAC,EAC9B,CAAC,CAACP,MAAM,EAAEQ,QAAQ,CAAC,KACjBpC,MAAM,CAACqC,IAAI,CAAC,MAAK;EACf,MAAMC,GAAG,GAAG,IAAIC,gBAAO,CAAC;IAAE,GAAGX,MAAM;IAAEQ;EAAQ,CAAE,CAAC;EAChDE,GAAG,CAACE,KAAK,EAAE;EACX,OAAOF,GAAG;AACZ,CAAC,CAAC,CACL,EACAA,GAAG,IAAKtC,MAAM,CAACyC,OAAO,CAAC,MAAMH,GAAG,CAACI,QAAQ,EAAE,CAAC,CAC9C,CAAC;AAAAb,OAAA,CAAAC,KAAA,GAAAA,KAAA"}
|
package/Tracer.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type { Tag } from "@effect/data/Context";
|
|
|
5
5
|
import type { Effect } from "@effect/io/Effect";
|
|
6
6
|
import type { Layer } from "@effect/io/Layer";
|
|
7
7
|
import type { ExternalSpan, Tracer } from "@effect/io/Tracer";
|
|
8
|
+
import { OtelSupervisor } from "@effect/opentelemetry/internal/tracer";
|
|
8
9
|
import type { Resource } from "@effect/opentelemetry/Resource";
|
|
9
10
|
import type * as Otel from "@opentelemetry/api";
|
|
10
11
|
/**
|
|
@@ -12,6 +13,14 @@ import type * as Otel from "@opentelemetry/api";
|
|
|
12
13
|
* @category constructors
|
|
13
14
|
*/
|
|
14
15
|
export declare const make: Effect<Resource, never, Tracer>;
|
|
16
|
+
export {
|
|
17
|
+
/**
|
|
18
|
+
* An effect supervisor that sets up the OpenTelemetry context for the fiber executions.
|
|
19
|
+
*
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
* @category supervisor
|
|
22
|
+
*/
|
|
23
|
+
OtelSupervisor };
|
|
15
24
|
/**
|
|
16
25
|
* @since 1.0.0
|
|
17
26
|
* @category constructors
|
package/Tracer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.d.ts","sourceRoot":"","sources":["./src/Tracer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE/C;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAiB,CAAA;AAElE;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,CAC7B,OAAO,EAAE;IACP,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAA;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B,KACE,YAAwC,CAAA;AAE7C;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAkB,CAAA;AAElE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAA0B,CAAA;AAEvF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAA0B,CAAA"}
|
|
1
|
+
{"version":3,"file":"Tracer.d.ts","sourceRoot":"","sources":["./src/Tracer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE/C;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAiB,CAAA;AAElE,OAAO;AACL;;;;;GAKG;AACH,cAAc,EACf,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,CAC7B,OAAO,EAAE;IACP,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAA;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B,KACE,YAAwC,CAAA;AAE7C;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAkB,CAAA;AAElE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAA0B,CAAA;AAEvF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAA0B,CAAA"}
|
package/Tracer.js
CHANGED
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
Object.defineProperty(exports, "OtelSupervisor", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return internal.OtelSupervisor;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
6
12
|
exports.makeExternalSpan = exports.make = exports.layer = exports.TraceState = exports.TraceFlags = void 0;
|
|
7
|
-
var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/opentelemetry/
|
|
13
|
+
var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/opentelemetry/internal/tracer"));
|
|
8
14
|
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); }
|
|
9
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
10
16
|
/**
|
|
@@ -12,11 +18,11 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
12
18
|
* @category constructors
|
|
13
19
|
*/
|
|
14
20
|
const make = internal.make;
|
|
21
|
+
exports.make = make;
|
|
15
22
|
/**
|
|
16
23
|
* @since 1.0.0
|
|
17
24
|
* @category constructors
|
|
18
25
|
*/
|
|
19
|
-
exports.make = make;
|
|
20
26
|
const makeExternalSpan = internal.makeExternalSpan;
|
|
21
27
|
/**
|
|
22
28
|
* @since 1.0.0
|
package/Tracer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","make","exports","makeExternalSpan","layer","TraceFlags","traceFlagsTag","TraceState","traceStateTag"],"sources":["./src/Tracer.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"Tracer.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","make","exports","makeExternalSpan","layer","TraceFlags","traceFlagsTag","TraceState","traceStateTag"],"sources":["./src/Tracer.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;AAOA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAiE,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAH,wBAAAO,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAKjE;;;;AAIO,MAAMW,IAAI,GAAoCzB,QAAQ,CAACyB,IAAI;AAAAC,OAAA,CAAAD,IAAA,GAAAA,IAAA;AAYlE;;;;AAIO,MAAME,gBAAgB,GAQT3B,QAAQ,CAAC2B,gBAAgB;AAE7C;;;;AAAAD,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAIO,MAAMC,KAAK,GAAkC5B,QAAQ,CAAC4B,KAAK;AAElE;;;;AAAAF,OAAA,CAAAE,KAAA,GAAAA,KAAA;AAIO,MAAMC,UAAU,GAA0C7B,QAAQ,CAAC8B,aAAa;AAEvF;;;;AAAAJ,OAAA,CAAAG,UAAA,GAAAA,UAAA;AAIO,MAAME,UAAU,GAA0C/B,QAAQ,CAACgC,aAAa;AAAAN,OAAA,CAAAK,UAAA,GAAAA,UAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../src/internal/tracer.ts"],"names":[],"mappings":""}
|
|
@@ -3,12 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.traceStateTag = exports.traceFlagsTag = exports.makeExternalSpan = exports.make = exports.layer = exports.OtelSpan = void 0;
|
|
6
|
+
exports.traceStateTag = exports.traceFlagsTag = exports.supervisor = exports.makeExternalSpan = exports.make = exports.layer = exports.OtelSupervisor = exports.OtelSpan = void 0;
|
|
7
7
|
var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Context"));
|
|
8
|
+
var List = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/List"));
|
|
8
9
|
var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Option"));
|
|
9
10
|
var Cause = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Cause"));
|
|
10
11
|
var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Effect"));
|
|
12
|
+
var FiberRef = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/FiberRef"));
|
|
13
|
+
var FiberRefs = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/FiberRefs"));
|
|
11
14
|
var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Layer"));
|
|
15
|
+
var Supervisor = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Supervisor"));
|
|
12
16
|
var Tracer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Tracer"));
|
|
13
17
|
var _Resource = /*#__PURE__*/require("@effect/opentelemetry/Resource");
|
|
14
18
|
var OtelApi = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@opentelemetry/api"));
|
|
@@ -23,17 +27,9 @@ class OtelSpan {
|
|
|
23
27
|
this._tag = "Span";
|
|
24
28
|
this.attributes = new Map();
|
|
25
29
|
const active = contextApi.active();
|
|
26
|
-
this.span =
|
|
30
|
+
this.span = tracer.startSpan(name, {
|
|
27
31
|
startTime: nanosToHrTime(startTime)
|
|
28
|
-
}, parent.
|
|
29
|
-
spanId: parent.value.spanId,
|
|
30
|
-
traceId: parent.value.traceId,
|
|
31
|
-
isRemote: parent.value._tag === "ExternalSpan",
|
|
32
|
-
traceFlags: Option.getOrElse(extractTraceTag(parent, context, traceFlagsTag), () => OtelApi.TraceFlags.SAMPLED),
|
|
33
|
-
traceState: Option.getOrUndefined(extractTraceTag(parent, context, traceStateTag))
|
|
34
|
-
})) : tracer.startSpan(name, {
|
|
35
|
-
startTime: nanosToHrTime(startTime)
|
|
36
|
-
}, active);
|
|
32
|
+
}, parent._tag === "Some" ? populateContext(active, parent.value, context) : active);
|
|
37
33
|
const spanContext = this.span.spanContext();
|
|
38
34
|
this.spanId = spanContext.spanId;
|
|
39
35
|
this.traceId = spanContext.traceId;
|
|
@@ -84,9 +80,6 @@ const make = /*#__PURE__*/Effect.map(tracer => Tracer.make({
|
|
|
84
80
|
}))( /*#__PURE__*/Effect.flatMap(resource => Effect.sync(() => OtelApi.trace.getTracer(resource.attributes["service.name"], resource.attributes["service.version"])))(_Resource.Resource));
|
|
85
81
|
/** @internal */
|
|
86
82
|
exports.make = make;
|
|
87
|
-
const layer = /*#__PURE__*/Layer.unwrapEffect( /*#__PURE__*/Effect.map(make, Effect.setTracer));
|
|
88
|
-
/** @internal */
|
|
89
|
-
exports.layer = layer;
|
|
90
83
|
const traceFlagsTag = /*#__PURE__*/Context.Tag("@effect/opentelemetry/traceFlags");
|
|
91
84
|
/** @internal */
|
|
92
85
|
exports.traceFlagsTag = traceFlagsTag;
|
|
@@ -99,23 +92,53 @@ const makeExternalSpan = options => {
|
|
|
99
92
|
context = Context.add(context, traceFlagsTag, options.traceFlags);
|
|
100
93
|
}
|
|
101
94
|
if (options.traceState) {
|
|
102
|
-
context = Option.match(createTraceState(options.traceState),
|
|
95
|
+
context = Option.match(createTraceState(options.traceState), {
|
|
96
|
+
onNone: () => context,
|
|
97
|
+
onSome: traceState => Context.add(context, traceStateTag, traceState)
|
|
98
|
+
});
|
|
103
99
|
}
|
|
104
100
|
return {
|
|
105
101
|
_tag: "ExternalSpan",
|
|
106
|
-
name: options.name,
|
|
107
102
|
traceId: options.traceId,
|
|
108
103
|
spanId: options.spanId,
|
|
109
104
|
context
|
|
110
105
|
};
|
|
111
106
|
};
|
|
107
|
+
/** @internal */
|
|
112
108
|
exports.makeExternalSpan = makeExternalSpan;
|
|
113
|
-
|
|
109
|
+
class OtelSupervisor extends Supervisor.AbstractSupervisor {
|
|
110
|
+
value() {
|
|
111
|
+
return Effect.unit;
|
|
112
|
+
}
|
|
113
|
+
onRun(execution, fiber) {
|
|
114
|
+
const currentSpan = Option.flatMap(FiberRefs.get(fiber.unsafeGetFiberRefs(), FiberRef.currentTracerSpan), List.head);
|
|
115
|
+
if (currentSpan._tag === "None") {
|
|
116
|
+
return execution();
|
|
117
|
+
}
|
|
118
|
+
return OtelApi.context.with(populateContext(OtelApi.context.active(), currentSpan.value), execution);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/** @internal */
|
|
122
|
+
exports.OtelSupervisor = OtelSupervisor;
|
|
123
|
+
const supervisor = /*#__PURE__*/new OtelSupervisor();
|
|
124
|
+
/** @internal */
|
|
125
|
+
exports.supervisor = supervisor;
|
|
126
|
+
const layer = /*#__PURE__*/Layer.merge( /*#__PURE__*/Layer.unwrapEffect( /*#__PURE__*/Effect.map(make, Effect.setTracer)), /*#__PURE__*/Supervisor.addSupervisor(supervisor));
|
|
127
|
+
// -------------------------------------------------------------------------------------
|
|
128
|
+
// utils
|
|
129
|
+
// -------------------------------------------------------------------------------------
|
|
130
|
+
exports.layer = layer;
|
|
131
|
+
const bigint1e9 = 1000000000n;
|
|
114
132
|
const nanosToHrTime = timestamp => {
|
|
115
|
-
|
|
116
|
-
const seconds = Number((timestamp - nanos) / oneE9);
|
|
117
|
-
return [seconds, Number(nanos)];
|
|
133
|
+
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)];
|
|
118
134
|
};
|
|
119
|
-
const extractTraceTag = (parent, context, tag) => Option.orElse(Context.getOption(context, tag), () => Option.flatMap(parent, parent => Context.getOption(parent.context, tag)));
|
|
120
135
|
const createTraceState = /*#__PURE__*/Option.liftThrowable(OtelApi.createTraceState);
|
|
136
|
+
const populateContext = (otelContext, span, context) => span instanceof OtelSpan ? OtelApi.trace.setSpan(otelContext, span.span) : OtelApi.trace.setSpanContext(otelContext, {
|
|
137
|
+
spanId: span.spanId,
|
|
138
|
+
traceId: span.traceId,
|
|
139
|
+
isRemote: span._tag === "ExternalSpan",
|
|
140
|
+
traceFlags: Option.getOrElse(context ? extractTraceTag(span, context, traceFlagsTag) : Context.getOption(span.context, traceFlagsTag), () => OtelApi.TraceFlags.SAMPLED),
|
|
141
|
+
traceState: Option.getOrUndefined(context ? extractTraceTag(span, context, traceStateTag) : Context.getOption(span.context, traceStateTag))
|
|
142
|
+
});
|
|
143
|
+
const extractTraceTag = (parent, context, tag) => Option.orElse(Context.getOption(context, tag), () => Context.getOption(parent.context, tag));
|
|
121
144
|
//# sourceMappingURL=tracer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.js","names":["Context","_interopRequireWildcard","require","List","Option","Cause","Effect","FiberRef","FiberRefs","Layer","Supervisor","Tracer","_Resource","OtelApi","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","OtelSpan","constructor","traceApi","contextApi","tracer","name","parent","context","startTime","_tag","attributes","Map","active","span","startSpan","nanosToHrTime","populateContext","value","spanContext","spanId","traceId","status","attribute","setAttribute","end","endTime","exit","setStatus","code","SpanStatusCode","OK","isInterruptedOnly","cause","ERROR","message","pretty","event","addEvent","exports","make","map","trace","flatMap","resource","sync","getTracer","Resource","traceFlagsTag","Tag","traceStateTag","makeExternalSpan","options","empty","traceFlags","add","traceState","match","createTraceState","onNone","onSome","OtelSupervisor","AbstractSupervisor","unit","onRun","execution","fiber","currentSpan","unsafeGetFiberRefs","currentTracerSpan","head","with","supervisor","layer","merge","unwrapEffect","setTracer","addSupervisor","bigint1e9","timestamp","Number","liftThrowable","otelContext","setSpan","setSpanContext","isRemote","getOrElse","extractTraceTag","getOption","TraceFlags","SAMPLED","getOrUndefined","tag","orElse"],"sources":["../src/internal/tracer.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/mjs/NodeSdk.mjs
CHANGED
|
@@ -14,7 +14,7 @@ export const config = config => config;
|
|
|
14
14
|
* @since 1.0.0
|
|
15
15
|
* @category layer
|
|
16
16
|
*/
|
|
17
|
-
export const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.flatMap(Effect.all(config, Resource), ([config, resource]) => Effect.sync(() => {
|
|
17
|
+
export const layer = config => Layer.scopedDiscard(Effect.acquireRelease(Effect.flatMap(Effect.all([config, Resource]), ([config, resource]) => Effect.sync(() => {
|
|
18
18
|
const sdk = new NodeSDK({
|
|
19
19
|
...config,
|
|
20
20
|
resource
|
package/mjs/NodeSdk.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSdk.mjs","names":["Effect","Layer","Resource","NodeSDK","config","layer","scopedDiscard","acquireRelease","flatMap","all","resource","sync","sdk","start","promise","shutdown"],"sources":["../src/NodeSdk.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,mBAAmB;AAC3C,OAAO,KAAKC,KAAK,MAAM,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,gCAAgC;AAEzD,SAASC,OAAO,QAAQ,yBAAyB;AAQjD;;;;AAIA,OAAO,MAAMC,MAAM,GAA8CA,MAAqB,IAAKA,MAAM;AAEjG;;;;AAIA,OAAO,MAAMC,KAAK,GAChBD,MAA0C,IAE1CH,KAAK,CAACK,aAAa,CAACN,MAAM,CAACO,cAAc,CACvCP,MAAM,CAACQ,OAAO,CACZR,MAAM,CAACS,GAAG,CAACL,MAAM,EAAEF,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"NodeSdk.mjs","names":["Effect","Layer","Resource","NodeSDK","config","layer","scopedDiscard","acquireRelease","flatMap","all","resource","sync","sdk","start","promise","shutdown"],"sources":["../src/NodeSdk.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,mBAAmB;AAC3C,OAAO,KAAKC,KAAK,MAAM,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,gCAAgC;AAEzD,SAASC,OAAO,QAAQ,yBAAyB;AAQjD;;;;AAIA,OAAO,MAAMC,MAAM,GAA8CA,MAAqB,IAAKA,MAAM;AAEjG;;;;AAIA,OAAO,MAAMC,KAAK,GAChBD,MAA0C,IAE1CH,KAAK,CAACK,aAAa,CAACN,MAAM,CAACO,cAAc,CACvCP,MAAM,CAACQ,OAAO,CACZR,MAAM,CAACS,GAAG,CAAC,CAACL,MAAM,EAAEF,QAAQ,CAAC,CAAC,EAC9B,CAAC,CAACE,MAAM,EAAEM,QAAQ,CAAC,KACjBV,MAAM,CAACW,IAAI,CAAC,MAAK;EACf,MAAMC,GAAG,GAAG,IAAIT,OAAO,CAAC;IAAE,GAAGC,MAAM;IAAEM;EAAQ,CAAE,CAAC;EAChDE,GAAG,CAACC,KAAK,EAAE;EACX,OAAOD,GAAG;AACZ,CAAC,CAAC,CACL,EACAA,GAAG,IAAKZ,MAAM,CAACc,OAAO,CAAC,MAAMF,GAAG,CAACG,QAAQ,EAAE,CAAC,CAC9C,CAAC"}
|
package/mjs/Tracer.mjs
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
|
-
import * as internal from "@effect/opentelemetry/
|
|
1
|
+
import * as internal from "@effect/opentelemetry/internal/tracer";
|
|
2
|
+
import { OtelSupervisor } from "@effect/opentelemetry/internal/tracer";
|
|
2
3
|
/**
|
|
3
4
|
* @since 1.0.0
|
|
4
5
|
* @category constructors
|
|
5
6
|
*/
|
|
6
7
|
export const make = internal.make;
|
|
8
|
+
export {
|
|
9
|
+
/**
|
|
10
|
+
* An effect supervisor that sets up the OpenTelemetry context for the fiber executions.
|
|
11
|
+
*
|
|
12
|
+
* @since 1.0.0
|
|
13
|
+
* @category supervisor
|
|
14
|
+
*/
|
|
15
|
+
OtelSupervisor };
|
|
7
16
|
/**
|
|
8
17
|
* @since 1.0.0
|
|
9
18
|
* @category constructors
|
package/mjs/Tracer.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracer.mjs","names":["internal","make","makeExternalSpan","layer","TraceFlags","traceFlagsTag","TraceState","traceStateTag"],"sources":["../src/Tracer.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"Tracer.mjs","names":["internal","OtelSupervisor","make","makeExternalSpan","layer","TraceFlags","traceFlagsTag","TraceState","traceStateTag"],"sources":["../src/Tracer.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,QAAQ,MAAM,uCAAuC;AACjE,SAASC,cAAc,QAAQ,uCAAuC;AAItE;;;;AAIA,OAAO,MAAMC,IAAI,GAAoCF,QAAQ,CAACE,IAAI;AAElE;AACE;;;;;;AAMAD,cAAc;AAGhB;;;;AAIA,OAAO,MAAME,gBAAgB,GAQTH,QAAQ,CAACG,gBAAgB;AAE7C;;;;AAIA,OAAO,MAAMC,KAAK,GAAkCJ,QAAQ,CAACI,KAAK;AAElE;;;;AAIA,OAAO,MAAMC,UAAU,GAA0CL,QAAQ,CAACM,aAAa;AAEvF;;;;AAIA,OAAO,MAAMC,UAAU,GAA0CP,QAAQ,CAACQ,aAAa"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import * as Context from "@effect/data/Context";
|
|
2
|
+
import * as List from "@effect/data/List";
|
|
2
3
|
import * as Option from "@effect/data/Option";
|
|
3
4
|
import * as Cause from "@effect/io/Cause";
|
|
4
5
|
import * as Effect from "@effect/io/Effect";
|
|
6
|
+
import * as FiberRef from "@effect/io/FiberRef";
|
|
7
|
+
import * as FiberRefs from "@effect/io/FiberRefs";
|
|
5
8
|
import * as Layer from "@effect/io/Layer";
|
|
9
|
+
import * as Supervisor from "@effect/io/Supervisor";
|
|
6
10
|
import * as Tracer from "@effect/io/Tracer";
|
|
7
11
|
import { Resource } from "@effect/opentelemetry/Resource";
|
|
8
12
|
import * as OtelApi from "@opentelemetry/api";
|
|
@@ -15,17 +19,9 @@ export class OtelSpan {
|
|
|
15
19
|
this._tag = "Span";
|
|
16
20
|
this.attributes = new Map();
|
|
17
21
|
const active = contextApi.active();
|
|
18
|
-
this.span =
|
|
22
|
+
this.span = tracer.startSpan(name, {
|
|
19
23
|
startTime: nanosToHrTime(startTime)
|
|
20
|
-
}, parent.
|
|
21
|
-
spanId: parent.value.spanId,
|
|
22
|
-
traceId: parent.value.traceId,
|
|
23
|
-
isRemote: parent.value._tag === "ExternalSpan",
|
|
24
|
-
traceFlags: Option.getOrElse(extractTraceTag(parent, context, traceFlagsTag), () => OtelApi.TraceFlags.SAMPLED),
|
|
25
|
-
traceState: Option.getOrUndefined(extractTraceTag(parent, context, traceStateTag))
|
|
26
|
-
})) : tracer.startSpan(name, {
|
|
27
|
-
startTime: nanosToHrTime(startTime)
|
|
28
|
-
}, active);
|
|
24
|
+
}, parent._tag === "Some" ? populateContext(active, parent.value, context) : active);
|
|
29
25
|
const spanContext = this.span.spanContext();
|
|
30
26
|
this.spanId = spanContext.spanId;
|
|
31
27
|
this.traceId = spanContext.traceId;
|
|
@@ -74,8 +70,6 @@ export const make = /*#__PURE__*/Effect.map(tracer => Tracer.make({
|
|
|
74
70
|
}
|
|
75
71
|
}))( /*#__PURE__*/Effect.flatMap(resource => Effect.sync(() => OtelApi.trace.getTracer(resource.attributes["service.name"], resource.attributes["service.version"])))(Resource));
|
|
76
72
|
/** @internal */
|
|
77
|
-
export const layer = /*#__PURE__*/Layer.unwrapEffect( /*#__PURE__*/Effect.map(make, Effect.setTracer));
|
|
78
|
-
/** @internal */
|
|
79
73
|
export const traceFlagsTag = /*#__PURE__*/Context.Tag("@effect/opentelemetry/traceFlags");
|
|
80
74
|
/** @internal */
|
|
81
75
|
export const traceStateTag = /*#__PURE__*/Context.Tag("@effect/opentelemetry/traceState");
|
|
@@ -86,22 +80,49 @@ export const makeExternalSpan = options => {
|
|
|
86
80
|
context = Context.add(context, traceFlagsTag, options.traceFlags);
|
|
87
81
|
}
|
|
88
82
|
if (options.traceState) {
|
|
89
|
-
context = Option.match(createTraceState(options.traceState),
|
|
83
|
+
context = Option.match(createTraceState(options.traceState), {
|
|
84
|
+
onNone: () => context,
|
|
85
|
+
onSome: traceState => Context.add(context, traceStateTag, traceState)
|
|
86
|
+
});
|
|
90
87
|
}
|
|
91
88
|
return {
|
|
92
89
|
_tag: "ExternalSpan",
|
|
93
|
-
name: options.name,
|
|
94
90
|
traceId: options.traceId,
|
|
95
91
|
spanId: options.spanId,
|
|
96
92
|
context
|
|
97
93
|
};
|
|
98
94
|
};
|
|
99
|
-
|
|
95
|
+
/** @internal */
|
|
96
|
+
export class OtelSupervisor extends Supervisor.AbstractSupervisor {
|
|
97
|
+
value() {
|
|
98
|
+
return Effect.unit;
|
|
99
|
+
}
|
|
100
|
+
onRun(execution, fiber) {
|
|
101
|
+
const currentSpan = Option.flatMap(FiberRefs.get(fiber.unsafeGetFiberRefs(), FiberRef.currentTracerSpan), List.head);
|
|
102
|
+
if (currentSpan._tag === "None") {
|
|
103
|
+
return execution();
|
|
104
|
+
}
|
|
105
|
+
return OtelApi.context.with(populateContext(OtelApi.context.active(), currentSpan.value), execution);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/** @internal */
|
|
109
|
+
export const supervisor = /*#__PURE__*/new OtelSupervisor();
|
|
110
|
+
/** @internal */
|
|
111
|
+
export const layer = /*#__PURE__*/Layer.merge( /*#__PURE__*/Layer.unwrapEffect( /*#__PURE__*/Effect.map(make, Effect.setTracer)), /*#__PURE__*/Supervisor.addSupervisor(supervisor));
|
|
112
|
+
// -------------------------------------------------------------------------------------
|
|
113
|
+
// utils
|
|
114
|
+
// -------------------------------------------------------------------------------------
|
|
115
|
+
const bigint1e9 = 1000000000n;
|
|
100
116
|
const nanosToHrTime = timestamp => {
|
|
101
|
-
|
|
102
|
-
const seconds = Number((timestamp - nanos) / oneE9);
|
|
103
|
-
return [seconds, Number(nanos)];
|
|
117
|
+
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)];
|
|
104
118
|
};
|
|
105
|
-
const extractTraceTag = (parent, context, tag) => Option.orElse(Context.getOption(context, tag), () => Option.flatMap(parent, parent => Context.getOption(parent.context, tag)));
|
|
106
119
|
const createTraceState = /*#__PURE__*/Option.liftThrowable(OtelApi.createTraceState);
|
|
120
|
+
const populateContext = (otelContext, span, context) => span instanceof OtelSpan ? OtelApi.trace.setSpan(otelContext, span.span) : OtelApi.trace.setSpanContext(otelContext, {
|
|
121
|
+
spanId: span.spanId,
|
|
122
|
+
traceId: span.traceId,
|
|
123
|
+
isRemote: span._tag === "ExternalSpan",
|
|
124
|
+
traceFlags: Option.getOrElse(context ? extractTraceTag(span, context, traceFlagsTag) : Context.getOption(span.context, traceFlagsTag), () => OtelApi.TraceFlags.SAMPLED),
|
|
125
|
+
traceState: Option.getOrUndefined(context ? extractTraceTag(span, context, traceStateTag) : Context.getOption(span.context, traceStateTag))
|
|
126
|
+
});
|
|
127
|
+
const extractTraceTag = (parent, context, tag) => Option.orElse(Context.getOption(context, tag), () => Context.getOption(parent.context, tag));
|
|
107
128
|
//# sourceMappingURL=tracer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.mjs","names":["Context","List","Option","Cause","Effect","FiberRef","FiberRefs","Layer","Supervisor","Tracer","Resource","OtelApi","OtelSpan","constructor","traceApi","contextApi","tracer","name","parent","context","startTime","_tag","attributes","Map","active","span","startSpan","nanosToHrTime","populateContext","value","spanContext","spanId","traceId","status","attribute","key","setAttribute","set","end","endTime","exit","setStatus","code","SpanStatusCode","OK","isInterruptedOnly","cause","ERROR","message","pretty","event","addEvent","make","map","trace","flatMap","resource","sync","getTracer","traceFlagsTag","Tag","traceStateTag","makeExternalSpan","options","empty","traceFlags","add","traceState","match","createTraceState","onNone","onSome","OtelSupervisor","AbstractSupervisor","unit","onRun","execution","fiber","currentSpan","get","unsafeGetFiberRefs","currentTracerSpan","head","with","supervisor","layer","merge","unwrapEffect","setTracer","addSupervisor","bigint1e9","timestamp","Number","liftThrowable","otelContext","setSpan","setSpanContext","isRemote","getOrElse","extractTraceTag","getOption","TraceFlags","SAMPLED","getOrUndefined","tag","orElse"],"sources":["../../src/internal/tracer.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/opentelemetry",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/Effect-TS/opentelemetry.git"
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@effect/data": "^0.
|
|
11
|
-
"@effect/io": "^0.
|
|
10
|
+
"@effect/data": "^0.14.1",
|
|
11
|
+
"@effect/io": "^0.32.0",
|
|
12
12
|
"@opentelemetry/api": "^1.4.1",
|
|
13
13
|
"@opentelemetry/resources": "^1.14.0",
|
|
14
14
|
"@opentelemetry/semantic-conventions": "^1.14.0"
|
package/src/NodeSdk.ts
CHANGED
|
@@ -28,7 +28,7 @@ export const layer = <R, E>(
|
|
|
28
28
|
): Layer.Layer<Resource | R, E, never> =>
|
|
29
29
|
Layer.scopedDiscard(Effect.acquireRelease(
|
|
30
30
|
Effect.flatMap(
|
|
31
|
-
Effect.all(config, Resource),
|
|
31
|
+
Effect.all([config, Resource]),
|
|
32
32
|
([config, resource]) =>
|
|
33
33
|
Effect.sync(() => {
|
|
34
34
|
const sdk = new NodeSDK({ ...config, resource })
|
package/src/Tracer.ts
CHANGED
|
@@ -5,7 +5,8 @@ import type { Tag } from "@effect/data/Context"
|
|
|
5
5
|
import type { Effect } from "@effect/io/Effect"
|
|
6
6
|
import type { Layer } from "@effect/io/Layer"
|
|
7
7
|
import type { ExternalSpan, Tracer } from "@effect/io/Tracer"
|
|
8
|
-
import * as internal from "@effect/opentelemetry/
|
|
8
|
+
import * as internal from "@effect/opentelemetry/internal/tracer"
|
|
9
|
+
import { OtelSupervisor } from "@effect/opentelemetry/internal/tracer"
|
|
9
10
|
import type { Resource } from "@effect/opentelemetry/Resource"
|
|
10
11
|
import type * as Otel from "@opentelemetry/api"
|
|
11
12
|
|
|
@@ -15,6 +16,16 @@ import type * as Otel from "@opentelemetry/api"
|
|
|
15
16
|
*/
|
|
16
17
|
export const make: Effect<Resource, never, Tracer> = internal.make
|
|
17
18
|
|
|
19
|
+
export {
|
|
20
|
+
/**
|
|
21
|
+
* An effect supervisor that sets up the OpenTelemetry context for the fiber executions.
|
|
22
|
+
*
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category supervisor
|
|
25
|
+
*/
|
|
26
|
+
OtelSupervisor
|
|
27
|
+
}
|
|
28
|
+
|
|
18
29
|
/**
|
|
19
30
|
* @since 1.0.0
|
|
20
31
|
* @category constructors
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import * as Context from "@effect/data/Context"
|
|
2
2
|
import { pipe } from "@effect/data/Function"
|
|
3
|
+
import * as List from "@effect/data/List"
|
|
3
4
|
import * as Option from "@effect/data/Option"
|
|
4
5
|
import * as Cause from "@effect/io/Cause"
|
|
5
6
|
import * as Effect from "@effect/io/Effect"
|
|
6
7
|
import type { Exit } from "@effect/io/Exit"
|
|
8
|
+
import type { RuntimeFiber } from "@effect/io/Fiber"
|
|
9
|
+
import * as FiberRef from "@effect/io/FiberRef"
|
|
10
|
+
import * as FiberRefs from "@effect/io/FiberRefs"
|
|
7
11
|
import * as Layer from "@effect/io/Layer"
|
|
12
|
+
import * as Supervisor from "@effect/io/Supervisor"
|
|
8
13
|
import * as Tracer from "@effect/io/Tracer"
|
|
9
14
|
import { Resource } from "@effect/opentelemetry/Resource"
|
|
10
15
|
import * as OtelApi from "@opentelemetry/api"
|
|
@@ -29,26 +34,12 @@ export class OtelSpan implements Tracer.Span {
|
|
|
29
34
|
startTime: bigint
|
|
30
35
|
) {
|
|
31
36
|
const active = contextApi.active()
|
|
32
|
-
this.span =
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
traceApi.setSpan(active, parent.value.span) :
|
|
38
|
-
traceApi.setSpanContext(active, {
|
|
39
|
-
spanId: parent.value.spanId,
|
|
40
|
-
traceId: parent.value.traceId,
|
|
41
|
-
isRemote: parent.value._tag === "ExternalSpan",
|
|
42
|
-
traceFlags: Option.getOrElse(
|
|
43
|
-
extractTraceTag(parent, context, traceFlagsTag),
|
|
44
|
-
() => OtelApi.TraceFlags.SAMPLED
|
|
45
|
-
),
|
|
46
|
-
traceState: Option.getOrUndefined(extractTraceTag(parent, context, traceStateTag))
|
|
47
|
-
})
|
|
48
|
-
)
|
|
49
|
-
: tracer.startSpan(name, { startTime: nanosToHrTime(startTime) }, active)
|
|
37
|
+
this.span = tracer.startSpan(
|
|
38
|
+
name,
|
|
39
|
+
{ startTime: nanosToHrTime(startTime) },
|
|
40
|
+
parent._tag === "Some" ? populateContext(active, parent.value, context) : active
|
|
41
|
+
)
|
|
50
42
|
const spanContext = this.span.spanContext()
|
|
51
|
-
|
|
52
43
|
this.spanId = spanContext.spanId
|
|
53
44
|
this.traceId = spanContext.traceId
|
|
54
45
|
|
|
@@ -123,11 +114,6 @@ export const make = pipe(
|
|
|
123
114
|
)
|
|
124
115
|
)
|
|
125
116
|
|
|
126
|
-
/** @internal */
|
|
127
|
-
export const layer = Layer.unwrapEffect(
|
|
128
|
-
Effect.map(make, Effect.setTracer)
|
|
129
|
-
)
|
|
130
|
-
|
|
131
117
|
/** @internal */
|
|
132
118
|
export const traceFlagsTag = Context.Tag<OtelApi.TraceFlags>("@effect/opentelemetry/traceFlags")
|
|
133
119
|
|
|
@@ -149,41 +135,96 @@ export const makeExternalSpan = (options: {
|
|
|
149
135
|
}
|
|
150
136
|
|
|
151
137
|
if (options.traceState) {
|
|
152
|
-
context = Option.match(
|
|
153
|
-
|
|
154
|
-
() => context,
|
|
155
|
-
|
|
156
|
-
)
|
|
138
|
+
context = Option.match(createTraceState(options.traceState), {
|
|
139
|
+
onNone: () => context,
|
|
140
|
+
onSome: (traceState) => Context.add(context, traceStateTag, traceState)
|
|
141
|
+
})
|
|
157
142
|
}
|
|
158
143
|
|
|
159
144
|
return {
|
|
160
145
|
_tag: "ExternalSpan",
|
|
161
|
-
name: options.name,
|
|
162
146
|
traceId: options.traceId,
|
|
163
147
|
spanId: options.spanId,
|
|
164
148
|
context
|
|
165
149
|
}
|
|
166
150
|
}
|
|
167
151
|
|
|
168
|
-
|
|
152
|
+
/** @internal */
|
|
153
|
+
export class OtelSupervisor extends Supervisor.AbstractSupervisor<void> {
|
|
154
|
+
value(): Effect.Effect<never, never, void> {
|
|
155
|
+
return Effect.unit
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
onRun<E, A, X>(execution: () => X, fiber: RuntimeFiber<E, A>): X {
|
|
159
|
+
const currentSpan = Option.flatMap(
|
|
160
|
+
FiberRefs.get(
|
|
161
|
+
fiber.unsafeGetFiberRefs(),
|
|
162
|
+
FiberRef.currentTracerSpan
|
|
163
|
+
),
|
|
164
|
+
List.head
|
|
165
|
+
)
|
|
166
|
+
|
|
167
|
+
if (currentSpan._tag === "None") {
|
|
168
|
+
return execution()
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
return OtelApi.context.with(
|
|
172
|
+
populateContext(OtelApi.context.active(), currentSpan.value),
|
|
173
|
+
execution
|
|
174
|
+
)
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/** @internal */
|
|
179
|
+
export const supervisor = new OtelSupervisor()
|
|
180
|
+
|
|
181
|
+
/** @internal */
|
|
182
|
+
export const layer = Layer.merge(
|
|
183
|
+
Layer.unwrapEffect(Effect.map(make, Effect.setTracer)),
|
|
184
|
+
Supervisor.addSupervisor(supervisor)
|
|
185
|
+
)
|
|
186
|
+
|
|
187
|
+
// -------------------------------------------------------------------------------------
|
|
188
|
+
// utils
|
|
189
|
+
// -------------------------------------------------------------------------------------
|
|
190
|
+
|
|
191
|
+
const bigint1e9 = 1_000_000_000n
|
|
169
192
|
const nanosToHrTime = (timestamp: bigint): OtelApi.HrTime => {
|
|
170
|
-
|
|
171
|
-
const seconds = Number((timestamp - nanos) / oneE9)
|
|
172
|
-
return [seconds, Number(nanos)]
|
|
193
|
+
return [Number(timestamp / bigint1e9), Number(timestamp % bigint1e9)]
|
|
173
194
|
}
|
|
174
195
|
|
|
196
|
+
const createTraceState = Option.liftThrowable(OtelApi.createTraceState)
|
|
197
|
+
|
|
198
|
+
const populateContext = (
|
|
199
|
+
otelContext: OtelApi.Context,
|
|
200
|
+
span: Tracer.ParentSpan,
|
|
201
|
+
context?: Context.Context<never>
|
|
202
|
+
): OtelApi.Context =>
|
|
203
|
+
span instanceof OtelSpan ?
|
|
204
|
+
OtelApi.trace.setSpan(otelContext, span.span) :
|
|
205
|
+
OtelApi.trace.setSpanContext(otelContext, {
|
|
206
|
+
spanId: span.spanId,
|
|
207
|
+
traceId: span.traceId,
|
|
208
|
+
isRemote: span._tag === "ExternalSpan",
|
|
209
|
+
traceFlags: Option.getOrElse(
|
|
210
|
+
context ?
|
|
211
|
+
extractTraceTag(span, context, traceFlagsTag) :
|
|
212
|
+
Context.getOption(span.context, traceFlagsTag),
|
|
213
|
+
() => OtelApi.TraceFlags.SAMPLED
|
|
214
|
+
),
|
|
215
|
+
traceState: Option.getOrUndefined(
|
|
216
|
+
context ?
|
|
217
|
+
extractTraceTag(span, context, traceStateTag) :
|
|
218
|
+
Context.getOption(span.context, traceStateTag)
|
|
219
|
+
)
|
|
220
|
+
})
|
|
221
|
+
|
|
175
222
|
const extractTraceTag = <I, S>(
|
|
176
|
-
parent:
|
|
223
|
+
parent: Tracer.ParentSpan,
|
|
177
224
|
context: Context.Context<never>,
|
|
178
225
|
tag: Context.Tag<I, S>
|
|
179
226
|
) =>
|
|
180
227
|
Option.orElse(
|
|
181
228
|
Context.getOption(context, tag),
|
|
182
|
-
() =>
|
|
183
|
-
Option.flatMap(
|
|
184
|
-
parent,
|
|
185
|
-
(parent) => Context.getOption(parent.context, tag)
|
|
186
|
-
)
|
|
229
|
+
() => Context.getOption(parent.context, tag)
|
|
187
230
|
)
|
|
188
|
-
|
|
189
|
-
const createTraceState = Option.liftThrowable(OtelApi.createTraceState)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../src/internal_effect_untraced/tracer.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.js","names":["Context","_interopRequireWildcard","require","Option","Cause","Effect","Layer","Tracer","_Resource","OtelApi","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","OtelSpan","constructor","traceApi","contextApi","tracer","name","parent","context","startTime","_tag","attributes","Map","active","span","startSpan","nanosToHrTime","value","setSpan","setSpanContext","spanId","traceId","isRemote","traceFlags","getOrElse","extractTraceTag","traceFlagsTag","TraceFlags","SAMPLED","traceState","getOrUndefined","traceStateTag","spanContext","status","attribute","setAttribute","end","endTime","exit","setStatus","code","SpanStatusCode","OK","isInterruptedOnly","cause","ERROR","message","pretty","event","addEvent","exports","make","map","trace","flatMap","resource","sync","getTracer","Resource","layer","unwrapEffect","setTracer","Tag","makeExternalSpan","options","empty","add","match","createTraceState","oneE9","timestamp","nanos","seconds","Number","tag","orElse","getOption","liftThrowable"],"sources":["../src/internal_effect_untraced/tracer.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.mjs","names":["Context","Option","Cause","Effect","Layer","Tracer","Resource","OtelApi","OtelSpan","constructor","traceApi","contextApi","tracer","name","parent","context","startTime","_tag","attributes","Map","active","span","startSpan","nanosToHrTime","value","setSpan","setSpanContext","spanId","traceId","isRemote","traceFlags","getOrElse","extractTraceTag","traceFlagsTag","TraceFlags","SAMPLED","traceState","getOrUndefined","traceStateTag","spanContext","status","attribute","key","setAttribute","set","end","endTime","exit","setStatus","code","SpanStatusCode","OK","isInterruptedOnly","cause","ERROR","message","pretty","event","addEvent","make","map","trace","flatMap","resource","sync","getTracer","layer","unwrapEffect","setTracer","Tag","makeExternalSpan","options","empty","add","match","createTraceState","oneE9","timestamp","nanos","seconds","Number","tag","orElse","getOption","liftThrowable"],"sources":["../../src/internal_effect_untraced/tracer.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
File without changes
|