@elasticdash/tracing 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +91 -91
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +198 -198
- package/dist/index.d.ts +198 -198
- package/dist/index.mjs +83 -80
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
// src/index.ts
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
getGlobalLogger as getGlobalLogger2,
|
|
4
|
+
ElasticDashOtelSpanAttributes as ElasticDashOtelSpanAttributes2
|
|
5
|
+
} from "@elasticdash/core";
|
|
3
6
|
import {
|
|
4
7
|
trace as trace2,
|
|
5
8
|
context,
|
|
@@ -7,7 +10,7 @@ import {
|
|
|
7
10
|
} from "@opentelemetry/api";
|
|
8
11
|
|
|
9
12
|
// src/attributes.ts
|
|
10
|
-
import {
|
|
13
|
+
import { ElasticDashOtelSpanAttributes } from "@elasticdash/core";
|
|
11
14
|
function createTraceAttributes({
|
|
12
15
|
name,
|
|
13
16
|
userId,
|
|
@@ -22,16 +25,16 @@ function createTraceAttributes({
|
|
|
22
25
|
public: isPublic
|
|
23
26
|
} = {}) {
|
|
24
27
|
const attributes = {
|
|
25
|
-
[
|
|
26
|
-
[
|
|
27
|
-
[
|
|
28
|
-
[
|
|
29
|
-
[
|
|
30
|
-
[
|
|
31
|
-
[
|
|
32
|
-
[
|
|
33
|
-
[
|
|
34
|
-
[
|
|
28
|
+
[ElasticDashOtelSpanAttributes.TRACE_NAME]: name,
|
|
29
|
+
[ElasticDashOtelSpanAttributes.TRACE_USER_ID]: userId,
|
|
30
|
+
[ElasticDashOtelSpanAttributes.TRACE_SESSION_ID]: sessionId,
|
|
31
|
+
[ElasticDashOtelSpanAttributes.VERSION]: version,
|
|
32
|
+
[ElasticDashOtelSpanAttributes.RELEASE]: release,
|
|
33
|
+
[ElasticDashOtelSpanAttributes.TRACE_INPUT]: _serialize(input),
|
|
34
|
+
[ElasticDashOtelSpanAttributes.TRACE_OUTPUT]: _serialize(output),
|
|
35
|
+
[ElasticDashOtelSpanAttributes.TRACE_TAGS]: tags,
|
|
36
|
+
[ElasticDashOtelSpanAttributes.ENVIRONMENT]: environment,
|
|
37
|
+
[ElasticDashOtelSpanAttributes.TRACE_PUBLIC]: isPublic,
|
|
35
38
|
..._flattenAndSerializeMetadata(metadata, "trace")
|
|
36
39
|
};
|
|
37
40
|
return Object.fromEntries(
|
|
@@ -54,20 +57,20 @@ function createObservationAttributes(type, attributes) {
|
|
|
54
57
|
prompt
|
|
55
58
|
} = attributes;
|
|
56
59
|
let otelAttributes = {
|
|
57
|
-
[
|
|
58
|
-
[
|
|
59
|
-
[
|
|
60
|
-
[
|
|
61
|
-
[
|
|
62
|
-
[
|
|
63
|
-
[
|
|
64
|
-
[
|
|
65
|
-
[
|
|
66
|
-
[
|
|
67
|
-
[
|
|
60
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_TYPE]: type,
|
|
61
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_LEVEL]: level,
|
|
62
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_STATUS_MESSAGE]: statusMessage,
|
|
63
|
+
[ElasticDashOtelSpanAttributes.VERSION]: version,
|
|
64
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_INPUT]: _serialize(input),
|
|
65
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_OUTPUT]: _serialize(output),
|
|
66
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_MODEL]: model,
|
|
67
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_USAGE_DETAILS]: _serialize(usageDetails),
|
|
68
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_COST_DETAILS]: _serialize(costDetails),
|
|
69
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_COMPLETION_START_TIME]: _serialize(completionStartTime),
|
|
70
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_MODEL_PARAMETERS]: _serialize(modelParameters),
|
|
68
71
|
...prompt && !prompt.isFallback ? {
|
|
69
|
-
[
|
|
70
|
-
[
|
|
72
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_PROMPT_NAME]: prompt.name,
|
|
73
|
+
[ElasticDashOtelSpanAttributes.OBSERVATION_PROMPT_VERSION]: prompt.version
|
|
71
74
|
} : {},
|
|
72
75
|
..._flattenAndSerializeMetadata(metadata, "observation")
|
|
73
76
|
};
|
|
@@ -84,7 +87,7 @@ function _serialize(obj) {
|
|
|
84
87
|
}
|
|
85
88
|
}
|
|
86
89
|
function _flattenAndSerializeMetadata(metadata, type) {
|
|
87
|
-
const prefix = type === "observation" ?
|
|
90
|
+
const prefix = type === "observation" ? ElasticDashOtelSpanAttributes.OBSERVATION_METADATA : ElasticDashOtelSpanAttributes.TRACE_METADATA;
|
|
88
91
|
const metadataAttributes = {};
|
|
89
92
|
if (metadata === void 0 || metadata === null) {
|
|
90
93
|
return metadataAttributes;
|
|
@@ -147,23 +150,23 @@ function getGlobalState() {
|
|
|
147
150
|
return initialState;
|
|
148
151
|
}
|
|
149
152
|
}
|
|
150
|
-
function
|
|
153
|
+
function setElasticDashTracerProvider(provider) {
|
|
151
154
|
getGlobalState().isolatedTracerProvider = provider;
|
|
152
155
|
}
|
|
153
|
-
function
|
|
156
|
+
function getElasticDashTracerProvider() {
|
|
154
157
|
const { isolatedTracerProvider } = getGlobalState();
|
|
155
158
|
if (isolatedTracerProvider) return isolatedTracerProvider;
|
|
156
159
|
return trace.getTracerProvider();
|
|
157
160
|
}
|
|
158
|
-
function
|
|
159
|
-
return
|
|
161
|
+
function getElasticDashTracer() {
|
|
162
|
+
return getElasticDashTracerProvider().getTracer(
|
|
160
163
|
ELASTICDASH_TRACER_NAME,
|
|
161
164
|
ELASTICDASH_SDK_VERSION
|
|
162
165
|
);
|
|
163
166
|
}
|
|
164
167
|
|
|
165
168
|
// src/spanWrapper.ts
|
|
166
|
-
var
|
|
169
|
+
var ElasticDashBaseObservation = class {
|
|
167
170
|
constructor(params) {
|
|
168
171
|
this.otelSpan = params.otelSpan;
|
|
169
172
|
this.id = params.otelSpan.spanContext().spanId;
|
|
@@ -177,7 +180,7 @@ var LangfuseBaseObservation = class {
|
|
|
177
180
|
}
|
|
178
181
|
/** Gets the ElasticDash OpenTelemetry tracer instance */
|
|
179
182
|
get tracer() {
|
|
180
|
-
return
|
|
183
|
+
return getElasticDashTracer();
|
|
181
184
|
}
|
|
182
185
|
/**
|
|
183
186
|
* Ends the observation, marking it as complete.
|
|
@@ -208,7 +211,7 @@ var LangfuseBaseObservation = class {
|
|
|
208
211
|
});
|
|
209
212
|
}
|
|
210
213
|
};
|
|
211
|
-
var
|
|
214
|
+
var ElasticDashSpan = class extends ElasticDashBaseObservation {
|
|
212
215
|
constructor(params) {
|
|
213
216
|
super({ ...params, type: "span" });
|
|
214
217
|
}
|
|
@@ -232,7 +235,7 @@ var LangfuseSpan = class extends LangfuseBaseObservation {
|
|
|
232
235
|
return this;
|
|
233
236
|
}
|
|
234
237
|
};
|
|
235
|
-
var
|
|
238
|
+
var ElasticDashAgent = class extends ElasticDashBaseObservation {
|
|
236
239
|
constructor(params) {
|
|
237
240
|
super({ ...params, type: "agent" });
|
|
238
241
|
}
|
|
@@ -264,7 +267,7 @@ var LangfuseAgent = class extends LangfuseBaseObservation {
|
|
|
264
267
|
return this;
|
|
265
268
|
}
|
|
266
269
|
};
|
|
267
|
-
var
|
|
270
|
+
var ElasticDashTool = class extends ElasticDashBaseObservation {
|
|
268
271
|
constructor(params) {
|
|
269
272
|
super({ ...params, type: "tool" });
|
|
270
273
|
}
|
|
@@ -296,7 +299,7 @@ var LangfuseTool = class extends LangfuseBaseObservation {
|
|
|
296
299
|
return this;
|
|
297
300
|
}
|
|
298
301
|
};
|
|
299
|
-
var
|
|
302
|
+
var ElasticDashChain = class extends ElasticDashBaseObservation {
|
|
300
303
|
constructor(params) {
|
|
301
304
|
super({ ...params, type: "chain" });
|
|
302
305
|
}
|
|
@@ -328,7 +331,7 @@ var LangfuseChain = class extends LangfuseBaseObservation {
|
|
|
328
331
|
return this;
|
|
329
332
|
}
|
|
330
333
|
};
|
|
331
|
-
var
|
|
334
|
+
var ElasticDashRetriever = class extends ElasticDashBaseObservation {
|
|
332
335
|
constructor(params) {
|
|
333
336
|
super({ ...params, type: "retriever" });
|
|
334
337
|
}
|
|
@@ -343,7 +346,7 @@ var LangfuseRetriever = class extends LangfuseBaseObservation {
|
|
|
343
346
|
return this;
|
|
344
347
|
}
|
|
345
348
|
};
|
|
346
|
-
var
|
|
349
|
+
var ElasticDashEvaluator = class extends ElasticDashBaseObservation {
|
|
347
350
|
constructor(params) {
|
|
348
351
|
super({ ...params, type: "evaluator" });
|
|
349
352
|
}
|
|
@@ -358,7 +361,7 @@ var LangfuseEvaluator = class extends LangfuseBaseObservation {
|
|
|
358
361
|
return this;
|
|
359
362
|
}
|
|
360
363
|
};
|
|
361
|
-
var
|
|
364
|
+
var ElasticDashGuardrail = class extends ElasticDashBaseObservation {
|
|
362
365
|
constructor(params) {
|
|
363
366
|
super({ ...params, type: "guardrail" });
|
|
364
367
|
}
|
|
@@ -373,7 +376,7 @@ var LangfuseGuardrail = class extends LangfuseBaseObservation {
|
|
|
373
376
|
return this;
|
|
374
377
|
}
|
|
375
378
|
};
|
|
376
|
-
var
|
|
379
|
+
var ElasticDashGeneration = class extends ElasticDashBaseObservation {
|
|
377
380
|
constructor(params) {
|
|
378
381
|
super({ ...params, type: "generation" });
|
|
379
382
|
}
|
|
@@ -382,7 +385,7 @@ var LangfuseGeneration = class extends LangfuseBaseObservation {
|
|
|
382
385
|
return this;
|
|
383
386
|
}
|
|
384
387
|
};
|
|
385
|
-
var
|
|
388
|
+
var ElasticDashEmbedding = class extends ElasticDashBaseObservation {
|
|
386
389
|
constructor(params) {
|
|
387
390
|
super({ ...params, type: "embedding" });
|
|
388
391
|
}
|
|
@@ -397,7 +400,7 @@ var LangfuseEmbedding = class extends LangfuseBaseObservation {
|
|
|
397
400
|
return this;
|
|
398
401
|
}
|
|
399
402
|
};
|
|
400
|
-
var
|
|
403
|
+
var ElasticDashEvent = class extends ElasticDashBaseObservation {
|
|
401
404
|
constructor(params) {
|
|
402
405
|
super({ ...params, type: "event" });
|
|
403
406
|
this.otelSpan.end(params.timestamp);
|
|
@@ -408,9 +411,9 @@ var LangfuseEvent = class extends LangfuseBaseObservation {
|
|
|
408
411
|
import {
|
|
409
412
|
propagateAttributes
|
|
410
413
|
} from "@elasticdash/core";
|
|
411
|
-
import {
|
|
414
|
+
import { ElasticDashOtelSpanAttributes as ElasticDashOtelSpanAttributes3 } from "@elasticdash/core";
|
|
412
415
|
function createOtelSpan(params) {
|
|
413
|
-
return
|
|
416
|
+
return getElasticDashTracer().startSpan(
|
|
414
417
|
params.name,
|
|
415
418
|
{ startTime: params.startTime },
|
|
416
419
|
createParentContext(params.parentSpanContext)
|
|
@@ -449,48 +452,48 @@ function startObservation(name, attributes, options) {
|
|
|
449
452
|
});
|
|
450
453
|
switch (asType) {
|
|
451
454
|
case "generation":
|
|
452
|
-
return new
|
|
455
|
+
return new ElasticDashGeneration({
|
|
453
456
|
otelSpan,
|
|
454
457
|
attributes
|
|
455
458
|
});
|
|
456
459
|
case "embedding":
|
|
457
|
-
return new
|
|
460
|
+
return new ElasticDashEmbedding({
|
|
458
461
|
otelSpan,
|
|
459
462
|
attributes
|
|
460
463
|
});
|
|
461
464
|
case "agent":
|
|
462
|
-
return new
|
|
465
|
+
return new ElasticDashAgent({
|
|
463
466
|
otelSpan,
|
|
464
467
|
attributes
|
|
465
468
|
});
|
|
466
469
|
case "tool":
|
|
467
|
-
return new
|
|
470
|
+
return new ElasticDashTool({
|
|
468
471
|
otelSpan,
|
|
469
472
|
attributes
|
|
470
473
|
});
|
|
471
474
|
case "chain":
|
|
472
|
-
return new
|
|
475
|
+
return new ElasticDashChain({
|
|
473
476
|
otelSpan,
|
|
474
477
|
attributes
|
|
475
478
|
});
|
|
476
479
|
case "retriever":
|
|
477
|
-
return new
|
|
480
|
+
return new ElasticDashRetriever({
|
|
478
481
|
otelSpan,
|
|
479
482
|
attributes
|
|
480
483
|
});
|
|
481
484
|
case "evaluator":
|
|
482
|
-
return new
|
|
485
|
+
return new ElasticDashEvaluator({
|
|
483
486
|
otelSpan,
|
|
484
487
|
attributes
|
|
485
488
|
});
|
|
486
489
|
case "guardrail":
|
|
487
|
-
return new
|
|
490
|
+
return new ElasticDashGuardrail({
|
|
488
491
|
otelSpan,
|
|
489
492
|
attributes
|
|
490
493
|
});
|
|
491
494
|
case "event": {
|
|
492
495
|
const timestamp = (_a = observationOptions == null ? void 0 : observationOptions.startTime) != null ? _a : /* @__PURE__ */ new Date();
|
|
493
|
-
return new
|
|
496
|
+
return new ElasticDashEvent({
|
|
494
497
|
otelSpan,
|
|
495
498
|
attributes,
|
|
496
499
|
timestamp
|
|
@@ -498,7 +501,7 @@ function startObservation(name, attributes, options) {
|
|
|
498
501
|
}
|
|
499
502
|
case "span":
|
|
500
503
|
default:
|
|
501
|
-
return new
|
|
504
|
+
return new ElasticDashSpan({
|
|
502
505
|
otelSpan,
|
|
503
506
|
attributes
|
|
504
507
|
});
|
|
@@ -507,7 +510,7 @@ function startObservation(name, attributes, options) {
|
|
|
507
510
|
function startActiveObservation(name, fn, options) {
|
|
508
511
|
var _a;
|
|
509
512
|
const { asType = "span", ...observationOptions } = options || {};
|
|
510
|
-
return
|
|
513
|
+
return getElasticDashTracer().startActiveSpan(
|
|
511
514
|
name,
|
|
512
515
|
{ startTime: observationOptions == null ? void 0 : observationOptions.startTime },
|
|
513
516
|
(_a = createParentContext(observationOptions == null ? void 0 : observationOptions.parentSpanContext)) != null ? _a : context.active(),
|
|
@@ -517,48 +520,48 @@ function startActiveObservation(name, fn, options) {
|
|
|
517
520
|
let observation;
|
|
518
521
|
switch (asType) {
|
|
519
522
|
case "generation":
|
|
520
|
-
observation = new
|
|
523
|
+
observation = new ElasticDashGeneration({
|
|
521
524
|
otelSpan: span
|
|
522
525
|
});
|
|
523
526
|
break;
|
|
524
527
|
case "embedding":
|
|
525
|
-
observation = new
|
|
528
|
+
observation = new ElasticDashEmbedding({
|
|
526
529
|
otelSpan: span
|
|
527
530
|
});
|
|
528
531
|
break;
|
|
529
532
|
case "agent":
|
|
530
|
-
observation = new
|
|
533
|
+
observation = new ElasticDashAgent({
|
|
531
534
|
otelSpan: span
|
|
532
535
|
});
|
|
533
536
|
break;
|
|
534
537
|
case "tool":
|
|
535
|
-
observation = new
|
|
538
|
+
observation = new ElasticDashTool({
|
|
536
539
|
otelSpan: span
|
|
537
540
|
});
|
|
538
541
|
break;
|
|
539
542
|
case "chain":
|
|
540
|
-
observation = new
|
|
543
|
+
observation = new ElasticDashChain({
|
|
541
544
|
otelSpan: span
|
|
542
545
|
});
|
|
543
546
|
break;
|
|
544
547
|
case "retriever":
|
|
545
|
-
observation = new
|
|
548
|
+
observation = new ElasticDashRetriever({
|
|
546
549
|
otelSpan: span
|
|
547
550
|
});
|
|
548
551
|
break;
|
|
549
552
|
case "evaluator":
|
|
550
|
-
observation = new
|
|
553
|
+
observation = new ElasticDashEvaluator({
|
|
551
554
|
otelSpan: span
|
|
552
555
|
});
|
|
553
556
|
break;
|
|
554
557
|
case "guardrail":
|
|
555
|
-
observation = new
|
|
558
|
+
observation = new ElasticDashGuardrail({
|
|
556
559
|
otelSpan: span
|
|
557
560
|
});
|
|
558
561
|
break;
|
|
559
562
|
case "event": {
|
|
560
563
|
const timestamp = (_a2 = observationOptions == null ? void 0 : observationOptions.startTime) != null ? _a2 : /* @__PURE__ */ new Date();
|
|
561
|
-
observation = new
|
|
564
|
+
observation = new ElasticDashEvent({
|
|
562
565
|
otelSpan: span,
|
|
563
566
|
timestamp
|
|
564
567
|
});
|
|
@@ -566,7 +569,7 @@ function startActiveObservation(name, fn, options) {
|
|
|
566
569
|
}
|
|
567
570
|
case "span":
|
|
568
571
|
default:
|
|
569
|
-
observation = new
|
|
572
|
+
observation = new ElasticDashSpan({
|
|
570
573
|
otelSpan: span
|
|
571
574
|
});
|
|
572
575
|
}
|
|
@@ -620,7 +623,7 @@ function updateActiveObservation(attributes, options) {
|
|
|
620
623
|
attributes
|
|
621
624
|
);
|
|
622
625
|
if (!(options == null ? void 0 : options.asType)) {
|
|
623
|
-
otelAttributes[
|
|
626
|
+
otelAttributes[ElasticDashOtelSpanAttributes2.OBSERVATION_TYPE] = void 0;
|
|
624
627
|
}
|
|
625
628
|
span.setAttributes(otelAttributes);
|
|
626
629
|
}
|
|
@@ -732,27 +735,27 @@ function getActiveSpanId() {
|
|
|
732
735
|
return (_a = trace2.getActiveSpan()) == null ? void 0 : _a.spanContext().spanId;
|
|
733
736
|
}
|
|
734
737
|
export {
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
738
|
+
ElasticDashAgent,
|
|
739
|
+
ElasticDashChain,
|
|
740
|
+
ElasticDashEmbedding,
|
|
741
|
+
ElasticDashEvaluator,
|
|
742
|
+
ElasticDashEvent,
|
|
743
|
+
ElasticDashGeneration,
|
|
744
|
+
ElasticDashGuardrail,
|
|
745
|
+
ElasticDashOtelSpanAttributes3 as ElasticDashOtelSpanAttributes,
|
|
746
|
+
ElasticDashRetriever,
|
|
747
|
+
ElasticDashSpan,
|
|
748
|
+
ElasticDashTool,
|
|
746
749
|
createObservationAttributes,
|
|
747
750
|
createTraceAttributes,
|
|
748
751
|
createTraceId,
|
|
749
752
|
getActiveSpanId,
|
|
750
753
|
getActiveTraceId,
|
|
751
|
-
|
|
752
|
-
|
|
754
|
+
getElasticDashTracer,
|
|
755
|
+
getElasticDashTracerProvider,
|
|
753
756
|
observe,
|
|
754
757
|
propagateAttributes,
|
|
755
|
-
|
|
758
|
+
setElasticDashTracerProvider,
|
|
756
759
|
startActiveObservation,
|
|
757
760
|
startObservation,
|
|
758
761
|
updateActiveObservation,
|