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.
- package/README.md +5 -2
- package/dist/{add-LBBS4I3H.js → add-35QACTIV.js} +34 -28
- package/dist/add-35QACTIV.js.map +1 -0
- package/dist/{add-RD3ZKFAT.mjs → add-TRJAXM4D.mjs} +22 -16
- package/dist/add-TRJAXM4D.mjs.map +1 -0
- package/dist/chunk-4ZSSHX6F.js +636 -0
- package/dist/chunk-4ZSSHX6F.js.map +1 -0
- package/dist/chunk-5EVBOHJY.js +155 -0
- package/dist/chunk-5EVBOHJY.js.map +1 -0
- package/dist/{chunk-YN4436PK.mjs → chunk-CU3443HD.mjs} +14 -9
- package/dist/{chunk-2JU376G7.js → chunk-D2CSG4SJ.js} +4 -4
- package/dist/chunk-D2CSG4SJ.js.map +1 -0
- package/dist/chunk-DISMHYXC.js +184 -0
- package/dist/chunk-DISMHYXC.js.map +1 -0
- package/dist/{chunk-E7UE2MPD.mjs → chunk-ECUXLXFT.mjs} +2 -2
- package/dist/chunk-EJWJXTPU.mjs +626 -0
- package/dist/chunk-EJWJXTPU.mjs.map +1 -0
- package/dist/chunk-GQMDZ4GY.mjs +155 -0
- package/dist/chunk-GQMDZ4GY.mjs.map +1 -0
- package/dist/{chunk-3GKPQB4R.mjs → chunk-HUI45ULC.mjs} +4 -4
- package/dist/chunk-HUI45ULC.mjs.map +1 -0
- package/dist/{chunk-HJU67C7H.js → chunk-K64Y6YUG.js} +10 -10
- package/dist/{chunk-HJU67C7H.js.map → chunk-K64Y6YUG.js.map} +1 -1
- package/dist/chunk-LP76VXI3.mjs +636 -0
- package/dist/chunk-LP76VXI3.mjs.map +1 -0
- package/dist/chunk-M4VUHTT2.js +626 -0
- package/dist/chunk-M4VUHTT2.js.map +1 -0
- package/dist/{chunk-PR3JDWC3.mjs → chunk-N2V6J3U2.mjs} +28 -3
- package/dist/chunk-N2V6J3U2.mjs.map +1 -0
- package/dist/chunk-OUCVXP4G.js +258 -0
- package/dist/chunk-OUCVXP4G.js.map +1 -0
- package/dist/{chunk-FJLK5CFL.js → chunk-OXBO24RB.js} +13 -8
- package/dist/chunk-OXBO24RB.js.map +1 -0
- package/dist/chunk-PGWR3OQY.mjs +258 -0
- package/dist/chunk-PGWR3OQY.mjs.map +1 -0
- package/dist/{chunk-SMXXAVMB.js → chunk-SGNJDRCT.js} +2 -2
- package/dist/chunk-SGNJDRCT.js.map +1 -0
- package/dist/{chunk-W5ZEP3CI.mjs → chunk-SYMZPWZE.mjs} +2 -2
- package/dist/chunk-SYMZPWZE.mjs.map +1 -0
- package/dist/{chunk-KGDAENGD.js → chunk-YH5TIVK2.js} +28 -3
- package/dist/chunk-YH5TIVK2.js.map +1 -0
- package/dist/chunk-YNQ44U6D.mjs +184 -0
- package/dist/chunk-YNQ44U6D.mjs.map +1 -0
- package/dist/cli/index.js +8 -8
- package/dist/cli/index.mjs +8 -8
- package/dist/{create-G5MTGOOH.js → create-7K2CC4KQ.js} +11 -11
- package/dist/{create-G5MTGOOH.js.map → create-7K2CC4KQ.js.map} +1 -1
- package/dist/{create-QUZYBMQB.mjs → create-MK7NEGCM.mjs} +8 -8
- package/dist/implementation-C4lvooSg.d.mts +576 -0
- package/dist/implementation-CzemP9jY.d.ts +576 -0
- package/dist/index-DTEZr0Jn.d.mts +34 -0
- package/dist/index-DTEZr0Jn.d.ts +34 -0
- package/dist/index.d.mts +122 -41
- package/dist/index.d.ts +122 -41
- package/dist/index.js +16 -12
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +27 -23
- package/dist/index.mjs.map +1 -1
- package/dist/init-GDKJICSS.js +16 -0
- package/dist/{init-XU2JFY6N.js.map → init-GDKJICSS.js.map} +1 -1
- package/dist/{init-H67RW22E.mjs → init-RINSTP4L.mjs} +5 -5
- package/dist/{list-7NPSX2E4.mjs → list-7L23G5DY.mjs} +28 -16
- package/dist/list-7L23G5DY.mjs.map +1 -0
- package/dist/{list-ZXFLAF52.js → list-OLLQ7XKZ.js} +29 -17
- package/dist/list-OLLQ7XKZ.js.map +1 -0
- package/dist/{login-EK4WVOI2.mjs → login-RCNKL5AM.mjs} +6 -5
- package/dist/login-RCNKL5AM.mjs.map +1 -0
- package/dist/{login-76NQIHKR.js → login-XF3BQQPV.js} +7 -6
- package/dist/login-XF3BQQPV.js.map +1 -0
- package/dist/observability-sdk/index.d.mts +134 -0
- package/dist/observability-sdk/index.d.ts +134 -0
- package/dist/observability-sdk/index.js +41 -0
- package/dist/observability-sdk/index.js.map +1 -0
- package/dist/observability-sdk/index.mjs +41 -0
- package/dist/observability-sdk/instrumentation/langchain/index.d.mts +69 -0
- package/dist/observability-sdk/instrumentation/langchain/index.d.ts +69 -0
- package/dist/observability-sdk/instrumentation/langchain/index.js +518 -0
- package/dist/observability-sdk/instrumentation/langchain/index.js.map +1 -0
- package/dist/observability-sdk/instrumentation/langchain/index.mjs +518 -0
- package/dist/observability-sdk/instrumentation/langchain/index.mjs.map +1 -0
- package/dist/observability-sdk/setup/node/index.d.mts +368 -0
- package/dist/observability-sdk/setup/node/index.d.ts +368 -0
- package/dist/observability-sdk/setup/node/index.js +276 -0
- package/dist/observability-sdk/setup/node/index.js.map +1 -0
- package/dist/observability-sdk/setup/node/index.mjs +276 -0
- package/dist/observability-sdk/setup/node/index.mjs.map +1 -0
- package/dist/{remove-SDJYEPAY.mjs → remove-3VLQNVHN.mjs} +11 -8
- package/dist/remove-3VLQNVHN.mjs.map +1 -0
- package/dist/{remove-XBNGIVMR.js → remove-L6JVJBWY.js} +18 -15
- package/dist/remove-L6JVJBWY.js.map +1 -0
- package/dist/{sync-ST2IWXSB.mjs → sync-DPMTUTVL.mjs} +39 -33
- package/dist/sync-DPMTUTVL.mjs.map +1 -0
- package/dist/{sync-EISKGPTL.js → sync-PSU3F5Z4.js} +52 -46
- package/dist/sync-PSU3F5Z4.js.map +1 -0
- package/dist/{prompt-D-jpMrLS.d.mts → types-1q5wIYP5.d.mts} +628 -14
- package/dist/{prompt-D-jpMrLS.d.ts → types-C9k5gGhU.d.ts} +628 -14
- package/dist/types-DRiQaKFG.d.mts +254 -0
- package/dist/types-DRiQaKFG.d.ts +254 -0
- package/dist/types-Dmazk5Bk.d.mts +44 -0
- package/dist/types-Dmazk5Bk.d.ts +44 -0
- package/package.json +40 -40
- package/dist/add-LBBS4I3H.js.map +0 -1
- package/dist/add-RD3ZKFAT.mjs.map +0 -1
- package/dist/chunk-2JU376G7.js.map +0 -1
- package/dist/chunk-2ODBGSBI.js +0 -4
- package/dist/chunk-2ODBGSBI.js.map +0 -1
- package/dist/chunk-3GKPQB4R.mjs.map +0 -1
- package/dist/chunk-52GXX3MA.js +0 -426
- package/dist/chunk-52GXX3MA.js.map +0 -1
- package/dist/chunk-5NC5ILKA.js +0 -94
- package/dist/chunk-5NC5ILKA.js.map +0 -1
- package/dist/chunk-6I4EA43Y.js +0 -39
- package/dist/chunk-6I4EA43Y.js.map +0 -1
- package/dist/chunk-DTEKFQ4U.js +0 -159
- package/dist/chunk-DTEKFQ4U.js.map +0 -1
- package/dist/chunk-F63YKTXA.mjs +0 -47
- package/dist/chunk-F63YKTXA.mjs.map +0 -1
- package/dist/chunk-FJLK5CFL.js.map +0 -1
- package/dist/chunk-GJSEBQXF.mjs +0 -392
- package/dist/chunk-GJSEBQXF.mjs.map +0 -1
- package/dist/chunk-J7ICRUU4.mjs +0 -426
- package/dist/chunk-J7ICRUU4.mjs.map +0 -1
- package/dist/chunk-KGDAENGD.js.map +0 -1
- package/dist/chunk-LD74LVRU.js +0 -47
- package/dist/chunk-LD74LVRU.js.map +0 -1
- package/dist/chunk-PCQVQ7SB.js +0 -45
- package/dist/chunk-PCQVQ7SB.js.map +0 -1
- package/dist/chunk-PR3JDWC3.mjs.map +0 -1
- package/dist/chunk-PWZBLTHR.js +0 -118
- package/dist/chunk-PWZBLTHR.js.map +0 -1
- package/dist/chunk-QEWDG5QE.mjs +0 -45
- package/dist/chunk-QEWDG5QE.mjs.map +0 -1
- package/dist/chunk-SMXXAVMB.js.map +0 -1
- package/dist/chunk-STV4ZVNA.mjs +0 -118
- package/dist/chunk-STV4ZVNA.mjs.map +0 -1
- package/dist/chunk-T5AZMMVS.mjs +0 -94
- package/dist/chunk-T5AZMMVS.mjs.map +0 -1
- package/dist/chunk-UU33HCCZ.mjs +0 -159
- package/dist/chunk-UU33HCCZ.mjs.map +0 -1
- package/dist/chunk-VGHLQXKB.js +0 -392
- package/dist/chunk-VGHLQXKB.js.map +0 -1
- package/dist/chunk-W5ZEP3CI.mjs.map +0 -1
- package/dist/chunk-Y666BJA5.mjs +0 -4
- package/dist/chunk-YFUZF7JM.mjs +0 -39
- package/dist/chunk-YFUZF7JM.mjs.map +0 -1
- package/dist/chunk-YN4436PK.mjs.map +0 -1
- package/dist/client-B2HqIKg6.d.ts +0 -51
- package/dist/client-XyCqclCi.d.mts +0 -51
- package/dist/client-browser.d.mts +0 -8
- package/dist/client-browser.d.ts +0 -8
- package/dist/client-browser.js +0 -85
- package/dist/client-browser.js.map +0 -1
- package/dist/client-browser.mjs +0 -85
- package/dist/client-browser.mjs.map +0 -1
- package/dist/client-node.d.mts +0 -8
- package/dist/client-node.d.ts +0 -8
- package/dist/client-node.js +0 -92
- package/dist/client-node.js.map +0 -1
- package/dist/client-node.mjs +0 -92
- package/dist/client-node.mjs.map +0 -1
- package/dist/evaluation/index.d.mts +0 -897
- package/dist/evaluation/index.d.ts +0 -897
- package/dist/evaluation/index.js +0 -14
- package/dist/evaluation/index.js.map +0 -1
- package/dist/evaluation/index.mjs +0 -14
- package/dist/filterable-batch-span-processor-zO5kcjBY.d.mts +0 -64
- package/dist/filterable-batch-span-processor-zO5kcjBY.d.ts +0 -64
- package/dist/init-XU2JFY6N.js +0 -16
- package/dist/list-7NPSX2E4.mjs.map +0 -1
- package/dist/list-ZXFLAF52.js.map +0 -1
- package/dist/login-76NQIHKR.js.map +0 -1
- package/dist/login-EK4WVOI2.mjs.map +0 -1
- package/dist/observability/index.d.mts +0 -260
- package/dist/observability/index.d.ts +0 -260
- package/dist/observability/index.js +0 -21
- package/dist/observability/index.js.map +0 -1
- package/dist/observability/index.mjs +0 -21
- package/dist/observability/index.mjs.map +0 -1
- package/dist/observability/instrumentation/langchain/index.d.mts +0 -40
- package/dist/observability/instrumentation/langchain/index.d.ts +0 -40
- package/dist/observability/instrumentation/langchain/index.js +0 -668
- package/dist/observability/instrumentation/langchain/index.js.map +0 -1
- package/dist/observability/instrumentation/langchain/index.mjs +0 -668
- package/dist/observability/instrumentation/langchain/index.mjs.map +0 -1
- package/dist/prompt/index.d.mts +0 -10
- package/dist/prompt/index.d.ts +0 -10
- package/dist/prompt/index.js +0 -22
- package/dist/prompt/index.js.map +0 -1
- package/dist/prompt/index.mjs +0 -22
- package/dist/prompt/index.mjs.map +0 -1
- package/dist/record-evaluation-CmxMXa-3.d.mts +0 -25
- package/dist/record-evaluation-CmxMXa-3.d.ts +0 -25
- package/dist/remove-SDJYEPAY.mjs.map +0 -1
- package/dist/remove-XBNGIVMR.js.map +0 -1
- package/dist/sync-EISKGPTL.js.map +0 -1
- package/dist/sync-ST2IWXSB.mjs.map +0 -1
- package/dist/trace-CqaKo0kZ.d.ts +0 -622
- package/dist/trace-DtVc5GhF.d.mts +0 -622
- /package/dist/{chunk-Y666BJA5.mjs.map → chunk-CU3443HD.mjs.map} +0 -0
- /package/dist/{chunk-E7UE2MPD.mjs.map → chunk-ECUXLXFT.mjs.map} +0 -0
- /package/dist/{create-QUZYBMQB.mjs.map → create-MK7NEGCM.mjs.map} +0 -0
- /package/dist/{init-H67RW22E.mjs.map → init-RINSTP4L.mjs.map} +0 -0
- /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 };
|
package/dist/client-browser.d.ts
DELETED
|
@@ -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 };
|
package/dist/client-browser.js
DELETED
|
@@ -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"]}
|
package/dist/client-browser.mjs
DELETED
|
@@ -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":[]}
|
package/dist/client-node.d.mts
DELETED
|
@@ -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 };
|
package/dist/client-node.d.ts
DELETED
|
@@ -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 };
|
package/dist/client-node.js
DELETED
|
@@ -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
|
package/dist/client-node.js.map
DELETED
|
@@ -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"]}
|
package/dist/client-node.mjs
DELETED
|
@@ -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
|
package/dist/client-node.mjs.map
DELETED
|
@@ -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":[]}
|