langwatch 0.3.1 → 0.4.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.
Files changed (203) hide show
  1. package/README.md +5 -2
  2. package/dist/{add-LBBS4I3H.js → add-35QACTIV.js} +34 -28
  3. package/dist/add-35QACTIV.js.map +1 -0
  4. package/dist/{add-RD3ZKFAT.mjs → add-TRJAXM4D.mjs} +22 -16
  5. package/dist/add-TRJAXM4D.mjs.map +1 -0
  6. package/dist/chunk-4ZSSHX6F.js +636 -0
  7. package/dist/chunk-4ZSSHX6F.js.map +1 -0
  8. package/dist/chunk-5EVBOHJY.js +155 -0
  9. package/dist/chunk-5EVBOHJY.js.map +1 -0
  10. package/dist/{chunk-YN4436PK.mjs → chunk-CU3443HD.mjs} +14 -9
  11. package/dist/{chunk-2JU376G7.js → chunk-D2CSG4SJ.js} +4 -4
  12. package/dist/chunk-D2CSG4SJ.js.map +1 -0
  13. package/dist/chunk-DISMHYXC.js +184 -0
  14. package/dist/chunk-DISMHYXC.js.map +1 -0
  15. package/dist/{chunk-E7UE2MPD.mjs → chunk-ECUXLXFT.mjs} +2 -2
  16. package/dist/chunk-EJWJXTPU.mjs +626 -0
  17. package/dist/chunk-EJWJXTPU.mjs.map +1 -0
  18. package/dist/chunk-GQMDZ4GY.mjs +155 -0
  19. package/dist/chunk-GQMDZ4GY.mjs.map +1 -0
  20. package/dist/{chunk-3GKPQB4R.mjs → chunk-HUI45ULC.mjs} +4 -4
  21. package/dist/chunk-HUI45ULC.mjs.map +1 -0
  22. package/dist/{chunk-HJU67C7H.js → chunk-K64Y6YUG.js} +10 -10
  23. package/dist/{chunk-HJU67C7H.js.map → chunk-K64Y6YUG.js.map} +1 -1
  24. package/dist/chunk-LP76VXI3.mjs +636 -0
  25. package/dist/chunk-LP76VXI3.mjs.map +1 -0
  26. package/dist/chunk-M4VUHTT2.js +626 -0
  27. package/dist/chunk-M4VUHTT2.js.map +1 -0
  28. package/dist/{chunk-PR3JDWC3.mjs → chunk-N2V6J3U2.mjs} +28 -3
  29. package/dist/chunk-N2V6J3U2.mjs.map +1 -0
  30. package/dist/chunk-OUCVXP4G.js +258 -0
  31. package/dist/chunk-OUCVXP4G.js.map +1 -0
  32. package/dist/{chunk-FJLK5CFL.js → chunk-OXBO24RB.js} +13 -8
  33. package/dist/chunk-OXBO24RB.js.map +1 -0
  34. package/dist/chunk-PGWR3OQY.mjs +258 -0
  35. package/dist/chunk-PGWR3OQY.mjs.map +1 -0
  36. package/dist/{chunk-SMXXAVMB.js → chunk-SGNJDRCT.js} +2 -2
  37. package/dist/chunk-SGNJDRCT.js.map +1 -0
  38. package/dist/{chunk-W5ZEP3CI.mjs → chunk-SYMZPWZE.mjs} +2 -2
  39. package/dist/chunk-SYMZPWZE.mjs.map +1 -0
  40. package/dist/{chunk-KGDAENGD.js → chunk-YH5TIVK2.js} +28 -3
  41. package/dist/chunk-YH5TIVK2.js.map +1 -0
  42. package/dist/chunk-YNQ44U6D.mjs +184 -0
  43. package/dist/chunk-YNQ44U6D.mjs.map +1 -0
  44. package/dist/cli/index.js +8 -8
  45. package/dist/cli/index.mjs +8 -8
  46. package/dist/{create-G5MTGOOH.js → create-7K2CC4KQ.js} +11 -11
  47. package/dist/{create-G5MTGOOH.js.map → create-7K2CC4KQ.js.map} +1 -1
  48. package/dist/{create-QUZYBMQB.mjs → create-MK7NEGCM.mjs} +8 -8
  49. package/dist/implementation-C4lvooSg.d.mts +576 -0
  50. package/dist/implementation-CzemP9jY.d.ts +576 -0
  51. package/dist/index-DTEZr0Jn.d.mts +34 -0
  52. package/dist/index-DTEZr0Jn.d.ts +34 -0
  53. package/dist/index.d.mts +122 -41
  54. package/dist/index.d.ts +122 -41
  55. package/dist/index.js +16 -12
  56. package/dist/index.js.map +1 -1
  57. package/dist/index.mjs +27 -23
  58. package/dist/index.mjs.map +1 -1
  59. package/dist/init-GDKJICSS.js +16 -0
  60. package/dist/{init-XU2JFY6N.js.map → init-GDKJICSS.js.map} +1 -1
  61. package/dist/{init-H67RW22E.mjs → init-RINSTP4L.mjs} +5 -5
  62. package/dist/{list-7NPSX2E4.mjs → list-7L23G5DY.mjs} +28 -16
  63. package/dist/list-7L23G5DY.mjs.map +1 -0
  64. package/dist/{list-ZXFLAF52.js → list-OLLQ7XKZ.js} +29 -17
  65. package/dist/list-OLLQ7XKZ.js.map +1 -0
  66. package/dist/{login-EK4WVOI2.mjs → login-RCNKL5AM.mjs} +6 -5
  67. package/dist/login-RCNKL5AM.mjs.map +1 -0
  68. package/dist/{login-76NQIHKR.js → login-XF3BQQPV.js} +7 -6
  69. package/dist/login-XF3BQQPV.js.map +1 -0
  70. package/dist/observability-sdk/index.d.mts +134 -0
  71. package/dist/observability-sdk/index.d.ts +134 -0
  72. package/dist/observability-sdk/index.js +41 -0
  73. package/dist/observability-sdk/index.js.map +1 -0
  74. package/dist/observability-sdk/index.mjs +41 -0
  75. package/dist/observability-sdk/instrumentation/langchain/index.d.mts +69 -0
  76. package/dist/observability-sdk/instrumentation/langchain/index.d.ts +69 -0
  77. package/dist/observability-sdk/instrumentation/langchain/index.js +518 -0
  78. package/dist/observability-sdk/instrumentation/langchain/index.js.map +1 -0
  79. package/dist/observability-sdk/instrumentation/langchain/index.mjs +518 -0
  80. package/dist/observability-sdk/instrumentation/langchain/index.mjs.map +1 -0
  81. package/dist/observability-sdk/setup/node/index.d.mts +368 -0
  82. package/dist/observability-sdk/setup/node/index.d.ts +368 -0
  83. package/dist/observability-sdk/setup/node/index.js +276 -0
  84. package/dist/observability-sdk/setup/node/index.js.map +1 -0
  85. package/dist/observability-sdk/setup/node/index.mjs +276 -0
  86. package/dist/observability-sdk/setup/node/index.mjs.map +1 -0
  87. package/dist/{remove-SDJYEPAY.mjs → remove-3VLQNVHN.mjs} +11 -8
  88. package/dist/remove-3VLQNVHN.mjs.map +1 -0
  89. package/dist/{remove-XBNGIVMR.js → remove-L6JVJBWY.js} +18 -15
  90. package/dist/remove-L6JVJBWY.js.map +1 -0
  91. package/dist/{sync-ST2IWXSB.mjs → sync-DPMTUTVL.mjs} +39 -33
  92. package/dist/sync-DPMTUTVL.mjs.map +1 -0
  93. package/dist/{sync-EISKGPTL.js → sync-PSU3F5Z4.js} +52 -46
  94. package/dist/sync-PSU3F5Z4.js.map +1 -0
  95. package/dist/{prompt-D-jpMrLS.d.mts → types-1q5wIYP5.d.mts} +628 -14
  96. package/dist/{prompt-D-jpMrLS.d.ts → types-C9k5gGhU.d.ts} +628 -14
  97. package/dist/types-DRiQaKFG.d.mts +254 -0
  98. package/dist/types-DRiQaKFG.d.ts +254 -0
  99. package/dist/types-Dmazk5Bk.d.mts +44 -0
  100. package/dist/types-Dmazk5Bk.d.ts +44 -0
  101. package/package.json +40 -40
  102. package/dist/add-LBBS4I3H.js.map +0 -1
  103. package/dist/add-RD3ZKFAT.mjs.map +0 -1
  104. package/dist/chunk-2JU376G7.js.map +0 -1
  105. package/dist/chunk-2ODBGSBI.js +0 -4
  106. package/dist/chunk-2ODBGSBI.js.map +0 -1
  107. package/dist/chunk-3GKPQB4R.mjs.map +0 -1
  108. package/dist/chunk-52GXX3MA.js +0 -426
  109. package/dist/chunk-52GXX3MA.js.map +0 -1
  110. package/dist/chunk-5NC5ILKA.js +0 -94
  111. package/dist/chunk-5NC5ILKA.js.map +0 -1
  112. package/dist/chunk-6I4EA43Y.js +0 -39
  113. package/dist/chunk-6I4EA43Y.js.map +0 -1
  114. package/dist/chunk-DTEKFQ4U.js +0 -159
  115. package/dist/chunk-DTEKFQ4U.js.map +0 -1
  116. package/dist/chunk-F63YKTXA.mjs +0 -47
  117. package/dist/chunk-F63YKTXA.mjs.map +0 -1
  118. package/dist/chunk-FJLK5CFL.js.map +0 -1
  119. package/dist/chunk-GJSEBQXF.mjs +0 -392
  120. package/dist/chunk-GJSEBQXF.mjs.map +0 -1
  121. package/dist/chunk-J7ICRUU4.mjs +0 -426
  122. package/dist/chunk-J7ICRUU4.mjs.map +0 -1
  123. package/dist/chunk-KGDAENGD.js.map +0 -1
  124. package/dist/chunk-LD74LVRU.js +0 -47
  125. package/dist/chunk-LD74LVRU.js.map +0 -1
  126. package/dist/chunk-PCQVQ7SB.js +0 -45
  127. package/dist/chunk-PCQVQ7SB.js.map +0 -1
  128. package/dist/chunk-PR3JDWC3.mjs.map +0 -1
  129. package/dist/chunk-PWZBLTHR.js +0 -118
  130. package/dist/chunk-PWZBLTHR.js.map +0 -1
  131. package/dist/chunk-QEWDG5QE.mjs +0 -45
  132. package/dist/chunk-QEWDG5QE.mjs.map +0 -1
  133. package/dist/chunk-SMXXAVMB.js.map +0 -1
  134. package/dist/chunk-STV4ZVNA.mjs +0 -118
  135. package/dist/chunk-STV4ZVNA.mjs.map +0 -1
  136. package/dist/chunk-T5AZMMVS.mjs +0 -94
  137. package/dist/chunk-T5AZMMVS.mjs.map +0 -1
  138. package/dist/chunk-UU33HCCZ.mjs +0 -159
  139. package/dist/chunk-UU33HCCZ.mjs.map +0 -1
  140. package/dist/chunk-VGHLQXKB.js +0 -392
  141. package/dist/chunk-VGHLQXKB.js.map +0 -1
  142. package/dist/chunk-W5ZEP3CI.mjs.map +0 -1
  143. package/dist/chunk-Y666BJA5.mjs +0 -4
  144. package/dist/chunk-YFUZF7JM.mjs +0 -39
  145. package/dist/chunk-YFUZF7JM.mjs.map +0 -1
  146. package/dist/chunk-YN4436PK.mjs.map +0 -1
  147. package/dist/client-B2HqIKg6.d.ts +0 -51
  148. package/dist/client-XyCqclCi.d.mts +0 -51
  149. package/dist/client-browser.d.mts +0 -8
  150. package/dist/client-browser.d.ts +0 -8
  151. package/dist/client-browser.js +0 -85
  152. package/dist/client-browser.js.map +0 -1
  153. package/dist/client-browser.mjs +0 -85
  154. package/dist/client-browser.mjs.map +0 -1
  155. package/dist/client-node.d.mts +0 -8
  156. package/dist/client-node.d.ts +0 -8
  157. package/dist/client-node.js +0 -92
  158. package/dist/client-node.js.map +0 -1
  159. package/dist/client-node.mjs +0 -92
  160. package/dist/client-node.mjs.map +0 -1
  161. package/dist/evaluation/index.d.mts +0 -897
  162. package/dist/evaluation/index.d.ts +0 -897
  163. package/dist/evaluation/index.js +0 -14
  164. package/dist/evaluation/index.js.map +0 -1
  165. package/dist/evaluation/index.mjs +0 -14
  166. package/dist/filterable-batch-span-processor-zO5kcjBY.d.mts +0 -64
  167. package/dist/filterable-batch-span-processor-zO5kcjBY.d.ts +0 -64
  168. package/dist/init-XU2JFY6N.js +0 -16
  169. package/dist/list-7NPSX2E4.mjs.map +0 -1
  170. package/dist/list-ZXFLAF52.js.map +0 -1
  171. package/dist/login-76NQIHKR.js.map +0 -1
  172. package/dist/login-EK4WVOI2.mjs.map +0 -1
  173. package/dist/observability/index.d.mts +0 -260
  174. package/dist/observability/index.d.ts +0 -260
  175. package/dist/observability/index.js +0 -21
  176. package/dist/observability/index.js.map +0 -1
  177. package/dist/observability/index.mjs +0 -21
  178. package/dist/observability/index.mjs.map +0 -1
  179. package/dist/observability/instrumentation/langchain/index.d.mts +0 -40
  180. package/dist/observability/instrumentation/langchain/index.d.ts +0 -40
  181. package/dist/observability/instrumentation/langchain/index.js +0 -668
  182. package/dist/observability/instrumentation/langchain/index.js.map +0 -1
  183. package/dist/observability/instrumentation/langchain/index.mjs +0 -668
  184. package/dist/observability/instrumentation/langchain/index.mjs.map +0 -1
  185. package/dist/prompt/index.d.mts +0 -10
  186. package/dist/prompt/index.d.ts +0 -10
  187. package/dist/prompt/index.js +0 -22
  188. package/dist/prompt/index.js.map +0 -1
  189. package/dist/prompt/index.mjs +0 -22
  190. package/dist/prompt/index.mjs.map +0 -1
  191. package/dist/record-evaluation-CmxMXa-3.d.mts +0 -25
  192. package/dist/record-evaluation-CmxMXa-3.d.ts +0 -25
  193. package/dist/remove-SDJYEPAY.mjs.map +0 -1
  194. package/dist/remove-XBNGIVMR.js.map +0 -1
  195. package/dist/sync-EISKGPTL.js.map +0 -1
  196. package/dist/sync-ST2IWXSB.mjs.map +0 -1
  197. package/dist/trace-CqaKo0kZ.d.ts +0 -622
  198. package/dist/trace-DtVc5GhF.d.mts +0 -622
  199. /package/dist/{chunk-Y666BJA5.mjs.map → chunk-CU3443HD.mjs.map} +0 -0
  200. /package/dist/{chunk-E7UE2MPD.mjs.map → chunk-ECUXLXFT.mjs.map} +0 -0
  201. /package/dist/{create-QUZYBMQB.mjs.map → create-MK7NEGCM.mjs.map} +0 -0
  202. /package/dist/{init-H67RW22E.mjs.map → init-RINSTP4L.mjs.map} +0 -0
  203. /package/dist/{evaluation → observability-sdk}/index.mjs.map +0 -0
@@ -1,51 +0,0 @@
1
- import { SpanProcessor } from '@opentelemetry/sdk-trace-base';
2
- import { Attributes } from '@opentelemetry/api';
3
- import { S as SpanProcessingExcludeRule } from './filterable-batch-span-processor-zO5kcjBY.mjs';
4
-
5
- interface SetupOptions {
6
- /**
7
- * The API key to use for the LangWatch API.
8
- */
9
- apiKey?: string;
10
- /**
11
- * The endpoint to use for the LangWatch API.
12
- */
13
- endpoint?: string;
14
- /**
15
- * The span processors to use for the OpenTelemetry SDK.
16
- *
17
- * If provided, these will be added to the OpenTelemetry SDK after the LangWatch SDK has
18
- * been initialized.
19
- */
20
- otelSpanProcessors?: SpanProcessor[];
21
- /**
22
- * The span processing exclude rules to use for the OpenTelemetry SDK.
23
- *
24
- * If provided, these will be added to the OpenTelemetry SDK after the LangWatch SDK has
25
- * been initialized.
26
- *
27
- * If you are using the `otelSpanProcessors` option, then these will be ignored.
28
- */
29
- otelSpanProcessingExcludeRules?: SpanProcessingExcludeRule[];
30
- /**
31
- * Whether to skip the automatic setup of the OpenTelemetry SDK. If this is set, then
32
- * the LangWatch SDK will not attempt to setup the OpenTelemetry SDK. You will need to
33
- * setup the OpenTelemetry yourself, and ensure that a SpanProcessor is added to the
34
- * OpenTelemetry SDK that will send traces to the LangWatch API.
35
- */
36
- skipOpenTelemetrySetup?: boolean;
37
- /**
38
- * Whether to disable the automatic capture of input.
39
- */
40
- disableAutomaticInputCapture?: boolean;
41
- /**
42
- * Whether to disable the automatic capture of output.
43
- */
44
- disableAutomaticOutputCapture?: boolean;
45
- /**
46
- * The base attributes to use for the OpenTelemetry SDK.
47
- */
48
- baseAttributes?: Attributes;
49
- }
50
-
51
- export type { SetupOptions as S };
@@ -1,8 +0,0 @@
1
- import { S as SetupOptions } from './client-XyCqclCi.mjs';
2
- import '@opentelemetry/sdk-trace-base';
3
- import '@opentelemetry/api';
4
- import './filterable-batch-span-processor-zO5kcjBY.mjs';
5
-
6
- declare function setupLangWatch(options?: SetupOptions): Promise<void>;
7
-
8
- export { setupLangWatch };
@@ -1,8 +0,0 @@
1
- import { S as SetupOptions } from './client-B2HqIKg6.js';
2
- import '@opentelemetry/sdk-trace-base';
3
- import '@opentelemetry/api';
4
- import './filterable-batch-span-processor-zO5kcjBY.js';
5
-
6
- declare function setupLangWatch(options?: SetupOptions): Promise<void>;
7
-
8
- export { setupLangWatch };
@@ -1,85 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
- var _chunkLD74LVRUjs = require('./chunk-LD74LVRU.js');
6
-
7
-
8
-
9
- var _chunk6I4EA43Yjs = require('./chunk-6I4EA43Y.js');
10
-
11
-
12
- var _chunkKGDAENGDjs = require('./chunk-KGDAENGD.js');
13
-
14
-
15
-
16
-
17
- var _chunkPCQVQ7SBjs = require('./chunk-PCQVQ7SB.js');
18
-
19
-
20
-
21
-
22
- var _chunkDTEKFQ4Ujs = require('./chunk-DTEKFQ4U.js');
23
-
24
-
25
-
26
- var _chunkFJLK5CFLjs = require('./chunk-FJLK5CFL.js');
27
-
28
- // src/client-browser.ts
29
- var _sdktraceweb = require('@opentelemetry/sdk-trace-web');
30
- var _contextzone = require('@opentelemetry/context-zone');
31
- var _core = require('@opentelemetry/core');
32
- var _resources = require('@opentelemetry/resources');
33
- var managedSpanProcessors = [];
34
- var provider = null;
35
- var browserSetupCalled = false;
36
- async function setupLangWatch(options = {}) {
37
- var _a, _b, _c;
38
- if (browserSetupCalled) {
39
- throw new Error("LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.");
40
- }
41
- _chunkPCQVQ7SBjs.setConfig.call(void 0, options);
42
- if (options.skipOpenTelemetrySetup) return;
43
- const endpointURL = new URL("/api/otel/v1/traces", _chunkPCQVQ7SBjs.getEndpoint.call(void 0, ));
44
- const langwatchSpanProcessor = new (0, _chunkKGDAENGDjs.FilterableBatchSpanProcessor)(
45
- new (0, _chunk6I4EA43Yjs.LangWatchExporter)(_chunkPCQVQ7SBjs.getApiKey.call(void 0, ), endpointURL.toString()),
46
- (_a = options.otelSpanProcessingExcludeRules) != null ? _a : []
47
- );
48
- const langwatchResource = _resources.resourceFromAttributes.call(void 0, _chunkFJLK5CFLjs.__spreadProps.call(void 0, _chunkFJLK5CFLjs.__spreadValues.call(void 0, {}, options.baseAttributes), {
49
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-browser",
50
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_VERSION]: _chunk6I4EA43Yjs.version,
51
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
52
- }));
53
- if (_chunkLD74LVRUjs.isOtelInitialized.call(void 0, )) {
54
- _chunkLD74LVRUjs.mergeResourceIntoExistingTracerProvider.call(void 0, langwatchResource);
55
- _chunkLD74LVRUjs.addSpanProcessorToExistingTracerProvider.call(void 0, langwatchSpanProcessor);
56
- for (const spanProcessor of (_b = options.otelSpanProcessors) != null ? _b : []) {
57
- _chunkLD74LVRUjs.addSpanProcessorToExistingTracerProvider.call(void 0, spanProcessor);
58
- }
59
- managedSpanProcessors = [langwatchSpanProcessor];
60
- } else {
61
- provider = new (0, _sdktraceweb.WebTracerProvider)({
62
- resource: _resources.resourceFromAttributes.call(void 0, {
63
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-browser",
64
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_VERSION]: _chunk6I4EA43Yjs.version,
65
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
66
- }),
67
- spanProcessors: [langwatchSpanProcessor, ...(_c = options.otelSpanProcessors) != null ? _c : []]
68
- });
69
- provider.register({
70
- contextManager: new (0, _contextzone.ZoneContextManager)(),
71
- propagator: new (0, _core.W3CTraceContextPropagator)()
72
- });
73
- }
74
- window.addEventListener("beforeunload", async () => {
75
- if (provider) {
76
- await provider.shutdown();
77
- } else {
78
- await Promise.all(managedSpanProcessors.map((p) => p.shutdown()));
79
- }
80
- });
81
- }
82
-
83
-
84
- exports.setupLangWatch = setupLangWatch;
85
- //# sourceMappingURL=client-browser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/client-browser.js","../src/client-browser.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/client-browser.js","sourcesContent":[null,"import { setConfig, SetupOptions, getApiKey, getEndpoint } from \"./client\";\nimport { SpanProcessor, WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { ZoneContextManager } from '@opentelemetry/context-zone';\nimport { W3CTraceContextPropagator } from '@opentelemetry/core';\nimport { version } from \"../package.json\";\nimport { resourceFromAttributes } from \"@opentelemetry/resources\";\nimport * as intSemconv from \"./observability/semconv\";\nimport { FilterableBatchSpanProcessor } from \"./observability/processors\";\nimport { LangWatchExporter } from \"./observability/exporters\";\nimport { addSpanProcessorToExistingTracerProvider, isOtelInitialized, mergeResourceIntoExistingTracerProvider } from \"./client-shared\";\n\nlet managedSpanProcessors: SpanProcessor[] = [];\nlet provider: WebTracerProvider | null = null;\nlet browserSetupCalled: boolean = false;\n\nexport async function setupLangWatch(options: SetupOptions = {}) {\n if (browserSetupCalled) {\n throw new Error(\"LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.\");\n }\n\n setConfig(options);\n\n if (options.skipOpenTelemetrySetup) return;\n\n const endpointURL = new URL(\"/api/otel/v1/traces\", getEndpoint());\n const langwatchSpanProcessor = new FilterableBatchSpanProcessor(\n new LangWatchExporter(getApiKey(), endpointURL.toString()),\n options.otelSpanProcessingExcludeRules ?? [],\n );\n\n const langwatchResource = resourceFromAttributes({\n ...options.baseAttributes,\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-browser\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n });\n\n if (isOtelInitialized()) {\n mergeResourceIntoExistingTracerProvider(langwatchResource);\n addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);\n for (const spanProcessor of options.otelSpanProcessors ?? []) {\n addSpanProcessorToExistingTracerProvider(spanProcessor);\n }\n\n managedSpanProcessors = [langwatchSpanProcessor];\n } else {\n provider = new WebTracerProvider({\n resource: resourceFromAttributes({\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-browser\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n }),\n spanProcessors: [langwatchSpanProcessor, ...(options.otelSpanProcessors ?? [])],\n });\n\n provider.register({\n contextManager: new ZoneContextManager(),\n propagator: new W3CTraceContextPropagator(),\n });\n }\n\n // This is not guaranteed to be called, but it's a good nice to have.\n window.addEventListener(\"beforeunload\", async () => {\n if (provider) {\n await provider.shutdown();\n } else {\n await Promise.all(managedSpanProcessors.map(p => p.shutdown()));\n }\n });\n}\n"]}
@@ -1,85 +0,0 @@
1
- import {
2
- addSpanProcessorToExistingTracerProvider,
3
- isOtelInitialized,
4
- mergeResourceIntoExistingTracerProvider
5
- } from "./chunk-F63YKTXA.mjs";
6
- import {
7
- LangWatchExporter,
8
- version
9
- } from "./chunk-YFUZF7JM.mjs";
10
- import {
11
- FilterableBatchSpanProcessor
12
- } from "./chunk-PR3JDWC3.mjs";
13
- import {
14
- getApiKey,
15
- getEndpoint,
16
- setConfig
17
- } from "./chunk-QEWDG5QE.mjs";
18
- import {
19
- ATTR_LANGWATCH_SDK_LANGUAGE,
20
- ATTR_LANGWATCH_SDK_NAME,
21
- ATTR_LANGWATCH_SDK_VERSION
22
- } from "./chunk-UU33HCCZ.mjs";
23
- import {
24
- __spreadProps,
25
- __spreadValues
26
- } from "./chunk-YN4436PK.mjs";
27
-
28
- // src/client-browser.ts
29
- import { WebTracerProvider } from "@opentelemetry/sdk-trace-web";
30
- import { ZoneContextManager } from "@opentelemetry/context-zone";
31
- import { W3CTraceContextPropagator } from "@opentelemetry/core";
32
- import { resourceFromAttributes } from "@opentelemetry/resources";
33
- var managedSpanProcessors = [];
34
- var provider = null;
35
- var browserSetupCalled = false;
36
- async function setupLangWatch(options = {}) {
37
- var _a, _b, _c;
38
- if (browserSetupCalled) {
39
- throw new Error("LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.");
40
- }
41
- setConfig(options);
42
- if (options.skipOpenTelemetrySetup) return;
43
- const endpointURL = new URL("/api/otel/v1/traces", getEndpoint());
44
- const langwatchSpanProcessor = new FilterableBatchSpanProcessor(
45
- new LangWatchExporter(getApiKey(), endpointURL.toString()),
46
- (_a = options.otelSpanProcessingExcludeRules) != null ? _a : []
47
- );
48
- const langwatchResource = resourceFromAttributes(__spreadProps(__spreadValues({}, options.baseAttributes), {
49
- [ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-browser",
50
- [ATTR_LANGWATCH_SDK_VERSION]: version,
51
- [ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
52
- }));
53
- if (isOtelInitialized()) {
54
- mergeResourceIntoExistingTracerProvider(langwatchResource);
55
- addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);
56
- for (const spanProcessor of (_b = options.otelSpanProcessors) != null ? _b : []) {
57
- addSpanProcessorToExistingTracerProvider(spanProcessor);
58
- }
59
- managedSpanProcessors = [langwatchSpanProcessor];
60
- } else {
61
- provider = new WebTracerProvider({
62
- resource: resourceFromAttributes({
63
- [ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-browser",
64
- [ATTR_LANGWATCH_SDK_VERSION]: version,
65
- [ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
66
- }),
67
- spanProcessors: [langwatchSpanProcessor, ...(_c = options.otelSpanProcessors) != null ? _c : []]
68
- });
69
- provider.register({
70
- contextManager: new ZoneContextManager(),
71
- propagator: new W3CTraceContextPropagator()
72
- });
73
- }
74
- window.addEventListener("beforeunload", async () => {
75
- if (provider) {
76
- await provider.shutdown();
77
- } else {
78
- await Promise.all(managedSpanProcessors.map((p) => p.shutdown()));
79
- }
80
- });
81
- }
82
- export {
83
- setupLangWatch
84
- };
85
- //# sourceMappingURL=client-browser.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/client-browser.ts"],"sourcesContent":["import { setConfig, SetupOptions, getApiKey, getEndpoint } from \"./client\";\nimport { SpanProcessor, WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { ZoneContextManager } from '@opentelemetry/context-zone';\nimport { W3CTraceContextPropagator } from '@opentelemetry/core';\nimport { version } from \"../package.json\";\nimport { resourceFromAttributes } from \"@opentelemetry/resources\";\nimport * as intSemconv from \"./observability/semconv\";\nimport { FilterableBatchSpanProcessor } from \"./observability/processors\";\nimport { LangWatchExporter } from \"./observability/exporters\";\nimport { addSpanProcessorToExistingTracerProvider, isOtelInitialized, mergeResourceIntoExistingTracerProvider } from \"./client-shared\";\n\nlet managedSpanProcessors: SpanProcessor[] = [];\nlet provider: WebTracerProvider | null = null;\nlet browserSetupCalled: boolean = false;\n\nexport async function setupLangWatch(options: SetupOptions = {}) {\n if (browserSetupCalled) {\n throw new Error(\"LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.\");\n }\n\n setConfig(options);\n\n if (options.skipOpenTelemetrySetup) return;\n\n const endpointURL = new URL(\"/api/otel/v1/traces\", getEndpoint());\n const langwatchSpanProcessor = new FilterableBatchSpanProcessor(\n new LangWatchExporter(getApiKey(), endpointURL.toString()),\n options.otelSpanProcessingExcludeRules ?? [],\n );\n\n const langwatchResource = resourceFromAttributes({\n ...options.baseAttributes,\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-browser\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n });\n\n if (isOtelInitialized()) {\n mergeResourceIntoExistingTracerProvider(langwatchResource);\n addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);\n for (const spanProcessor of options.otelSpanProcessors ?? []) {\n addSpanProcessorToExistingTracerProvider(spanProcessor);\n }\n\n managedSpanProcessors = [langwatchSpanProcessor];\n } else {\n provider = new WebTracerProvider({\n resource: resourceFromAttributes({\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-browser\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n }),\n spanProcessors: [langwatchSpanProcessor, ...(options.otelSpanProcessors ?? [])],\n });\n\n provider.register({\n contextManager: new ZoneContextManager(),\n propagator: new W3CTraceContextPropagator(),\n });\n }\n\n // This is not guaranteed to be called, but it's a good nice to have.\n window.addEventListener(\"beforeunload\", async () => {\n if (provider) {\n await provider.shutdown();\n } else {\n await Promise.all(managedSpanProcessors.map(p => p.shutdown()));\n }\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAwB,yBAAyB;AACjD,SAAS,0BAA0B;AACnC,SAAS,iCAAiC;AAE1C,SAAS,8BAA8B;AAMvC,IAAI,wBAAyC,CAAC;AAC9C,IAAI,WAAqC;AACzC,IAAI,qBAA8B;AAElC,eAAsB,eAAe,UAAwB,CAAC,GAAG;AAfjE;AAgBE,MAAI,oBAAoB;AACtB,UAAM,IAAI,MAAM,4KAA4K;AAAA,EAC9L;AAEA,YAAU,OAAO;AAEjB,MAAI,QAAQ,uBAAwB;AAEpC,QAAM,cAAc,IAAI,IAAI,uBAAuB,YAAY,CAAC;AAChE,QAAM,yBAAyB,IAAI;AAAA,IACjC,IAAI,kBAAkB,UAAU,GAAG,YAAY,SAAS,CAAC;AAAA,KACzD,aAAQ,mCAAR,YAA0C,CAAC;AAAA,EAC7C;AAEA,QAAM,oBAAoB,uBAAuB,iCAC5C,QAAQ,iBADoC;AAAA,IAE/C,CAAY,2BAA2B,GAAG;AAAA,IAC1C,CAAY,0BAA0B,GAAG;AAAA,IACzC,CAAY,uBAAuB,GAAG;AAAA,EACxC,EAAC;AAED,MAAI,kBAAkB,GAAG;AACvB,4CAAwC,iBAAiB;AACzD,6CAAyC,sBAAsB;AAC/D,eAAW,kBAAiB,aAAQ,uBAAR,YAA8B,CAAC,GAAG;AAC5D,+CAAyC,aAAa;AAAA,IACxD;AAEA,4BAAwB,CAAC,sBAAsB;AAAA,EACjD,OAAO;AACL,eAAW,IAAI,kBAAkB;AAAA,MAC/B,UAAU,uBAAuB;AAAA,QAC/B,CAAY,2BAA2B,GAAG;AAAA,QAC1C,CAAY,0BAA0B,GAAG;AAAA,QACzC,CAAY,uBAAuB,GAAG;AAAA,MACxC,CAAC;AAAA,MACD,gBAAgB,CAAC,wBAAwB,IAAI,aAAQ,uBAAR,YAA8B,CAAC,CAAE;AAAA,IAChF,CAAC;AAED,aAAS,SAAS;AAAA,MAChB,gBAAgB,IAAI,mBAAmB;AAAA,MACvC,YAAY,IAAI,0BAA0B;AAAA,IAC5C,CAAC;AAAA,EACH;AAGA,SAAO,iBAAiB,gBAAgB,YAAY;AAClD,QAAI,UAAU;AACZ,YAAM,SAAS,SAAS;AAAA,IAC1B,OAAO;AACL,YAAM,QAAQ,IAAI,sBAAsB,IAAI,OAAK,EAAE,SAAS,CAAC,CAAC;AAAA,IAChE;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -1,8 +0,0 @@
1
- import { S as SetupOptions } from './client-XyCqclCi.mjs';
2
- import '@opentelemetry/sdk-trace-base';
3
- import '@opentelemetry/api';
4
- import './filterable-batch-span-processor-zO5kcjBY.mjs';
5
-
6
- declare function setupLangWatch(options?: SetupOptions): Promise<void>;
7
-
8
- export { setupLangWatch };
@@ -1,8 +0,0 @@
1
- import { S as SetupOptions } from './client-B2HqIKg6.js';
2
- import '@opentelemetry/sdk-trace-base';
3
- import '@opentelemetry/api';
4
- import './filterable-batch-span-processor-zO5kcjBY.js';
5
-
6
- declare function setupLangWatch(options?: SetupOptions): Promise<void>;
7
-
8
- export { setupLangWatch };
@@ -1,92 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
- var _chunkLD74LVRUjs = require('./chunk-LD74LVRU.js');
6
-
7
-
8
-
9
- var _chunk6I4EA43Yjs = require('./chunk-6I4EA43Y.js');
10
- require('./chunk-2ODBGSBI.js');
11
-
12
-
13
- var _chunkKGDAENGDjs = require('./chunk-KGDAENGD.js');
14
-
15
-
16
-
17
-
18
- var _chunkPCQVQ7SBjs = require('./chunk-PCQVQ7SB.js');
19
- require('./chunk-52GXX3MA.js');
20
-
21
-
22
-
23
-
24
- var _chunkDTEKFQ4Ujs = require('./chunk-DTEKFQ4U.js');
25
-
26
-
27
-
28
- var _chunkFJLK5CFLjs = require('./chunk-FJLK5CFL.js');
29
-
30
- // src/client-node.ts
31
- var _sdknode = require('@opentelemetry/sdk-node');
32
- var _resources = require('@opentelemetry/resources');
33
- var _contextasynchooks = require('@opentelemetry/context-async-hooks');
34
- var _core = require('@opentelemetry/core');
35
- var managedSpanProcessors = [];
36
- var nodeSetupCalled = false;
37
- var sdk = null;
38
- async function setupLangWatch(options = {}) {
39
- var _a, _b, _c;
40
- if (nodeSetupCalled) {
41
- throw new Error("LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.");
42
- }
43
- _chunkPCQVQ7SBjs.setConfig.call(void 0, options);
44
- nodeSetupCalled = true;
45
- if (options.skipOpenTelemetrySetup) return;
46
- const endpointURL = new URL("/api/otel/v1/traces", _chunkPCQVQ7SBjs.getEndpoint.call(void 0, ));
47
- const langwatchSpanProcessor = new (0, _chunkKGDAENGDjs.FilterableBatchSpanProcessor)(
48
- new (0, _chunk6I4EA43Yjs.LangWatchExporter)(_chunkPCQVQ7SBjs.getApiKey.call(void 0, ), endpointURL.toString()),
49
- (_a = options.otelSpanProcessingExcludeRules) != null ? _a : []
50
- );
51
- const langwatchResource = _resources.resourceFromAttributes.call(void 0, _chunkFJLK5CFLjs.__spreadProps.call(void 0, _chunkFJLK5CFLjs.__spreadValues.call(void 0, {}, options.baseAttributes), {
52
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-node",
53
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_VERSION]: _chunk6I4EA43Yjs.version,
54
- [_chunkDTEKFQ4Ujs.ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
55
- }));
56
- if (_chunkLD74LVRUjs.isOtelInitialized.call(void 0, )) {
57
- _chunkLD74LVRUjs.mergeResourceIntoExistingTracerProvider.call(void 0, langwatchResource);
58
- _chunkLD74LVRUjs.addSpanProcessorToExistingTracerProvider.call(void 0, langwatchSpanProcessor);
59
- for (const spanProcessor of (_b = options.otelSpanProcessors) != null ? _b : []) {
60
- _chunkLD74LVRUjs.addSpanProcessorToExistingTracerProvider.call(void 0, spanProcessor);
61
- }
62
- managedSpanProcessors = [langwatchSpanProcessor];
63
- } else {
64
- sdk = new (0, _sdknode.NodeSDK)({
65
- resource: langwatchResource,
66
- spanProcessors: [langwatchSpanProcessor, ...(_c = options.otelSpanProcessors) != null ? _c : []],
67
- contextManager: new (0, _contextasynchooks.AsyncLocalStorageContextManager)(),
68
- textMapPropagator: new (0, _core.W3CTraceContextPropagator)()
69
- });
70
- sdk.start();
71
- }
72
- ["SIGINT", "SIGTERM", "beforeExit"].forEach((signal) => {
73
- process.on(signal, async () => {
74
- try {
75
- if (sdk) {
76
- await sdk.shutdown();
77
- } else {
78
- await Promise.all(managedSpanProcessors.map((p) => p.shutdown()));
79
- }
80
- } catch (error) {
81
- console.error("Error shutting down OpenTelemetry SDK:", error);
82
- }
83
- if (signal !== "beforeExit") {
84
- process.exit();
85
- }
86
- });
87
- });
88
- }
89
-
90
-
91
- exports.setupLangWatch = setupLangWatch;
92
- //# sourceMappingURL=client-node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/client-node.js","../src/client-node.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/client-node.js","sourcesContent":[null,"import { SpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { getApiKey, getEndpoint, setConfig, SetupOptions } from \"./client\";\nimport { NodeSDK } from '@opentelemetry/sdk-node';\nimport { resourceFromAttributes } from \"@opentelemetry/resources\";\nimport { AsyncLocalStorageContextManager } from \"@opentelemetry/context-async-hooks\";\nimport { W3CTraceContextPropagator } from \"@opentelemetry/core\";\nimport { version } from \"../package.json\";\nimport * as intSemconv from \"./observability/semconv\";\nimport { addSpanProcessorToExistingTracerProvider, isOtelInitialized, mergeResourceIntoExistingTracerProvider } from \"./client-shared\";\nimport { FilterableBatchSpanProcessor } from \"./observability\";\nimport { LangWatchExporter } from \"./observability/exporters\";\n\nlet managedSpanProcessors: SpanProcessor[] = [];\nlet nodeSetupCalled: boolean = false;\nlet sdk: NodeSDK | null = null;\n\nexport async function setupLangWatch(options: SetupOptions = {}) {\n if (nodeSetupCalled) {\n throw new Error(\"LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.\");\n }\n\n setConfig(options);\n nodeSetupCalled = true;\n\n if (options.skipOpenTelemetrySetup) return;\n\n const endpointURL = new URL(\"/api/otel/v1/traces\", getEndpoint());\n const langwatchSpanProcessor = new FilterableBatchSpanProcessor(\n new LangWatchExporter(getApiKey(), endpointURL.toString()),\n options.otelSpanProcessingExcludeRules ?? [],\n );\n\n const langwatchResource = resourceFromAttributes({\n ...options.baseAttributes,\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-node\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n });\n\n if (isOtelInitialized()) {\n mergeResourceIntoExistingTracerProvider(langwatchResource);\n addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);\n for (const spanProcessor of options.otelSpanProcessors ?? []) {\n addSpanProcessorToExistingTracerProvider(spanProcessor);\n }\n\n managedSpanProcessors = [langwatchSpanProcessor];\n } else {\n sdk = new NodeSDK({\n resource: langwatchResource,\n spanProcessors: [langwatchSpanProcessor, ...(options.otelSpanProcessors ?? [])],\n contextManager: new AsyncLocalStorageContextManager(),\n textMapPropagator: new W3CTraceContextPropagator(),\n });\n\n sdk.start();\n }\n\n // If we detect interrupt, termination, or test beforeExit signals, then we attempt\n // to shutdown.\n // - If an SDK exists, then we just attempt to shutdown the SDK.\n // - If no SDK exists, then we attempt to shutdown ONLY the SpanProcessors that are\n // managed by this LangWatch SDK.\n [\"SIGINT\", \"SIGTERM\", \"beforeExit\"].forEach((signal) => {\n process.on(signal as any, async () => {\n try {\n if (sdk) {\n await sdk.shutdown();\n } else {\n await Promise.all(managedSpanProcessors.map(p => p.shutdown()));\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error shutting down OpenTelemetry SDK:\", error);\n }\n\n if (signal !== \"beforeExit\") {\n process.exit();\n }\n });\n });\n}\n"]}
@@ -1,92 +0,0 @@
1
- import {
2
- addSpanProcessorToExistingTracerProvider,
3
- isOtelInitialized,
4
- mergeResourceIntoExistingTracerProvider
5
- } from "./chunk-F63YKTXA.mjs";
6
- import {
7
- LangWatchExporter,
8
- version
9
- } from "./chunk-YFUZF7JM.mjs";
10
- import "./chunk-Y666BJA5.mjs";
11
- import {
12
- FilterableBatchSpanProcessor
13
- } from "./chunk-PR3JDWC3.mjs";
14
- import {
15
- getApiKey,
16
- getEndpoint,
17
- setConfig
18
- } from "./chunk-QEWDG5QE.mjs";
19
- import "./chunk-J7ICRUU4.mjs";
20
- import {
21
- ATTR_LANGWATCH_SDK_LANGUAGE,
22
- ATTR_LANGWATCH_SDK_NAME,
23
- ATTR_LANGWATCH_SDK_VERSION
24
- } from "./chunk-UU33HCCZ.mjs";
25
- import {
26
- __spreadProps,
27
- __spreadValues
28
- } from "./chunk-YN4436PK.mjs";
29
-
30
- // src/client-node.ts
31
- import { NodeSDK } from "@opentelemetry/sdk-node";
32
- import { resourceFromAttributes } from "@opentelemetry/resources";
33
- import { AsyncLocalStorageContextManager } from "@opentelemetry/context-async-hooks";
34
- import { W3CTraceContextPropagator } from "@opentelemetry/core";
35
- var managedSpanProcessors = [];
36
- var nodeSetupCalled = false;
37
- var sdk = null;
38
- async function setupLangWatch(options = {}) {
39
- var _a, _b, _c;
40
- if (nodeSetupCalled) {
41
- throw new Error("LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.");
42
- }
43
- setConfig(options);
44
- nodeSetupCalled = true;
45
- if (options.skipOpenTelemetrySetup) return;
46
- const endpointURL = new URL("/api/otel/v1/traces", getEndpoint());
47
- const langwatchSpanProcessor = new FilterableBatchSpanProcessor(
48
- new LangWatchExporter(getApiKey(), endpointURL.toString()),
49
- (_a = options.otelSpanProcessingExcludeRules) != null ? _a : []
50
- );
51
- const langwatchResource = resourceFromAttributes(__spreadProps(__spreadValues({}, options.baseAttributes), {
52
- [ATTR_LANGWATCH_SDK_LANGUAGE]: "typescript-node",
53
- [ATTR_LANGWATCH_SDK_VERSION]: version,
54
- [ATTR_LANGWATCH_SDK_NAME]: "langwatch-observability-sdk"
55
- }));
56
- if (isOtelInitialized()) {
57
- mergeResourceIntoExistingTracerProvider(langwatchResource);
58
- addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);
59
- for (const spanProcessor of (_b = options.otelSpanProcessors) != null ? _b : []) {
60
- addSpanProcessorToExistingTracerProvider(spanProcessor);
61
- }
62
- managedSpanProcessors = [langwatchSpanProcessor];
63
- } else {
64
- sdk = new NodeSDK({
65
- resource: langwatchResource,
66
- spanProcessors: [langwatchSpanProcessor, ...(_c = options.otelSpanProcessors) != null ? _c : []],
67
- contextManager: new AsyncLocalStorageContextManager(),
68
- textMapPropagator: new W3CTraceContextPropagator()
69
- });
70
- sdk.start();
71
- }
72
- ["SIGINT", "SIGTERM", "beforeExit"].forEach((signal) => {
73
- process.on(signal, async () => {
74
- try {
75
- if (sdk) {
76
- await sdk.shutdown();
77
- } else {
78
- await Promise.all(managedSpanProcessors.map((p) => p.shutdown()));
79
- }
80
- } catch (error) {
81
- console.error("Error shutting down OpenTelemetry SDK:", error);
82
- }
83
- if (signal !== "beforeExit") {
84
- process.exit();
85
- }
86
- });
87
- });
88
- }
89
- export {
90
- setupLangWatch
91
- };
92
- //# sourceMappingURL=client-node.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/client-node.ts"],"sourcesContent":["import { SpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { getApiKey, getEndpoint, setConfig, SetupOptions } from \"./client\";\nimport { NodeSDK } from '@opentelemetry/sdk-node';\nimport { resourceFromAttributes } from \"@opentelemetry/resources\";\nimport { AsyncLocalStorageContextManager } from \"@opentelemetry/context-async-hooks\";\nimport { W3CTraceContextPropagator } from \"@opentelemetry/core\";\nimport { version } from \"../package.json\";\nimport * as intSemconv from \"./observability/semconv\";\nimport { addSpanProcessorToExistingTracerProvider, isOtelInitialized, mergeResourceIntoExistingTracerProvider } from \"./client-shared\";\nimport { FilterableBatchSpanProcessor } from \"./observability\";\nimport { LangWatchExporter } from \"./observability/exporters\";\n\nlet managedSpanProcessors: SpanProcessor[] = [];\nlet nodeSetupCalled: boolean = false;\nlet sdk: NodeSDK | null = null;\n\nexport async function setupLangWatch(options: SetupOptions = {}) {\n if (nodeSetupCalled) {\n throw new Error(\"LangWatch setup has already been called in this process. Setup can only be called once, if you need to modify OpenTelemetry setup then use the OpenTelemetry API directly.\");\n }\n\n setConfig(options);\n nodeSetupCalled = true;\n\n if (options.skipOpenTelemetrySetup) return;\n\n const endpointURL = new URL(\"/api/otel/v1/traces\", getEndpoint());\n const langwatchSpanProcessor = new FilterableBatchSpanProcessor(\n new LangWatchExporter(getApiKey(), endpointURL.toString()),\n options.otelSpanProcessingExcludeRules ?? [],\n );\n\n const langwatchResource = resourceFromAttributes({\n ...options.baseAttributes,\n [intSemconv.ATTR_LANGWATCH_SDK_LANGUAGE]: \"typescript-node\",\n [intSemconv.ATTR_LANGWATCH_SDK_VERSION]: version,\n [intSemconv.ATTR_LANGWATCH_SDK_NAME]: \"langwatch-observability-sdk\",\n });\n\n if (isOtelInitialized()) {\n mergeResourceIntoExistingTracerProvider(langwatchResource);\n addSpanProcessorToExistingTracerProvider(langwatchSpanProcessor);\n for (const spanProcessor of options.otelSpanProcessors ?? []) {\n addSpanProcessorToExistingTracerProvider(spanProcessor);\n }\n\n managedSpanProcessors = [langwatchSpanProcessor];\n } else {\n sdk = new NodeSDK({\n resource: langwatchResource,\n spanProcessors: [langwatchSpanProcessor, ...(options.otelSpanProcessors ?? [])],\n contextManager: new AsyncLocalStorageContextManager(),\n textMapPropagator: new W3CTraceContextPropagator(),\n });\n\n sdk.start();\n }\n\n // If we detect interrupt, termination, or test beforeExit signals, then we attempt\n // to shutdown.\n // - If an SDK exists, then we just attempt to shutdown the SDK.\n // - If no SDK exists, then we attempt to shutdown ONLY the SpanProcessors that are\n // managed by this LangWatch SDK.\n [\"SIGINT\", \"SIGTERM\", \"beforeExit\"].forEach((signal) => {\n process.on(signal as any, async () => {\n try {\n if (sdk) {\n await sdk.shutdown();\n } else {\n await Promise.all(managedSpanProcessors.map(p => p.shutdown()));\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error shutting down OpenTelemetry SDK:\", error);\n }\n\n if (signal !== \"beforeExit\") {\n process.exit();\n }\n });\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAAS,eAAe;AACxB,SAAS,8BAA8B;AACvC,SAAS,uCAAuC;AAChD,SAAS,iCAAiC;AAO1C,IAAI,wBAAyC,CAAC;AAC9C,IAAI,kBAA2B;AAC/B,IAAI,MAAsB;AAE1B,eAAsB,eAAe,UAAwB,CAAC,GAAG;AAhBjE;AAiBE,MAAI,iBAAiB;AACnB,UAAM,IAAI,MAAM,4KAA4K;AAAA,EAC9L;AAEA,YAAU,OAAO;AACjB,oBAAkB;AAElB,MAAI,QAAQ,uBAAwB;AAEpC,QAAM,cAAc,IAAI,IAAI,uBAAuB,YAAY,CAAC;AAChE,QAAM,yBAAyB,IAAI;AAAA,IACjC,IAAI,kBAAkB,UAAU,GAAG,YAAY,SAAS,CAAC;AAAA,KACzD,aAAQ,mCAAR,YAA0C,CAAC;AAAA,EAC7C;AAEA,QAAM,oBAAoB,uBAAuB,iCAC5C,QAAQ,iBADoC;AAAA,IAE/C,CAAY,2BAA2B,GAAG;AAAA,IAC1C,CAAY,0BAA0B,GAAG;AAAA,IACzC,CAAY,uBAAuB,GAAG;AAAA,EACxC,EAAC;AAED,MAAI,kBAAkB,GAAG;AACvB,4CAAwC,iBAAiB;AACzD,6CAAyC,sBAAsB;AAC/D,eAAW,kBAAiB,aAAQ,uBAAR,YAA8B,CAAC,GAAG;AAC5D,+CAAyC,aAAa;AAAA,IACxD;AAEA,4BAAwB,CAAC,sBAAsB;AAAA,EACjD,OAAO;AACL,UAAM,IAAI,QAAQ;AAAA,MAChB,UAAU;AAAA,MACV,gBAAgB,CAAC,wBAAwB,IAAI,aAAQ,uBAAR,YAA8B,CAAC,CAAE;AAAA,MAC9E,gBAAgB,IAAI,gCAAgC;AAAA,MACpD,mBAAmB,IAAI,0BAA0B;AAAA,IACnD,CAAC;AAED,QAAI,MAAM;AAAA,EACZ;AAOA,GAAC,UAAU,WAAW,YAAY,EAAE,QAAQ,CAAC,WAAW;AACtD,YAAQ,GAAG,QAAe,YAAY;AACpC,UAAI;AACF,YAAI,KAAK;AACP,gBAAM,IAAI,SAAS;AAAA,QACrB,OAAO;AACL,gBAAM,QAAQ,IAAI,sBAAsB,IAAI,OAAK,EAAE,SAAS,CAAC,CAAC;AAAA,QAChE;AAAA,MACF,SAAS,OAAO;AAEd,gBAAQ,MAAM,0CAA0C,KAAK;AAAA,MAC/D;AAEA,UAAI,WAAW,cAAc;AAC3B,gBAAQ,KAAK;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH;","names":[]}