@mastra/observability 0.0.0-feat-add-query-option-to-playground-20251209160219 → 0.0.0-feat-8782-cf-bindings-20260102164434
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/CHANGELOG.md +312 -11
- package/dist/config.d.ts +105 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/exporters/default.d.ts +4 -3
- package/dist/exporters/default.d.ts.map +1 -1
- package/dist/index.cjs +4410 -144
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4406 -145
- package/dist/index.js.map +1 -1
- package/dist/instances/base.d.ts.map +1 -1
- package/dist/model-tracing.d.ts +16 -3
- package/dist/model-tracing.d.ts.map +1 -1
- package/dist/span_processors/sensitive-data-filter.d.ts.map +1 -1
- package/dist/spans/base.d.ts +10 -18
- package/dist/spans/base.d.ts.map +1 -1
- package/dist/spans/default.d.ts.map +1 -1
- package/dist/spans/index.d.ts +1 -0
- package/dist/spans/index.d.ts.map +1 -1
- package/dist/spans/serialization.d.ts +46 -0
- package/dist/spans/serialization.d.ts.map +1 -0
- package/dist/usage.d.ts +21 -0
- package/dist/usage.d.ts.map +1 -0
- package/package.json +8 -11
package/dist/config.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* including tracing configs, sampling strategies, and registry setup.
|
|
6
6
|
*/
|
|
7
7
|
import type { RequestContext } from '@mastra/core/di';
|
|
8
|
-
import type { ObservabilityInstance, ObservabilityExporter, ObservabilityBridge, SpanOutputProcessor, ConfigSelector } from '@mastra/core/observability';
|
|
8
|
+
import type { ObservabilityInstance, ObservabilityExporter, ObservabilityBridge, SpanOutputProcessor, ConfigSelector, SerializationOptions } from '@mastra/core/observability';
|
|
9
9
|
import { z } from 'zod';
|
|
10
10
|
/**
|
|
11
11
|
* Sampling strategy types
|
|
@@ -61,6 +61,11 @@ export interface ObservabilityInstanceConfig {
|
|
|
61
61
|
* Supports dot notation for nested values.
|
|
62
62
|
*/
|
|
63
63
|
requestContextKeys?: string[];
|
|
64
|
+
/**
|
|
65
|
+
* Options for controlling serialization of span data (input/output/attributes).
|
|
66
|
+
* Use these to customize truncation limits for large payloads.
|
|
67
|
+
*/
|
|
68
|
+
serializationOptions?: SerializationOptions;
|
|
64
69
|
}
|
|
65
70
|
/**
|
|
66
71
|
* Complete Observability registry configuration
|
|
@@ -109,6 +114,25 @@ export declare const samplingStrategySchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
109
114
|
type: SamplingStrategyType.CUSTOM;
|
|
110
115
|
sampler: (args_0: any, ...args: unknown[]) => boolean;
|
|
111
116
|
}>]>;
|
|
117
|
+
/**
|
|
118
|
+
* Zod schema for SerializationOptions
|
|
119
|
+
*/
|
|
120
|
+
export declare const serializationOptionsSchema: z.ZodOptional<z.ZodObject<{
|
|
121
|
+
maxStringLength: z.ZodOptional<z.ZodNumber>;
|
|
122
|
+
maxDepth: z.ZodOptional<z.ZodNumber>;
|
|
123
|
+
maxArrayLength: z.ZodOptional<z.ZodNumber>;
|
|
124
|
+
maxObjectKeys: z.ZodOptional<z.ZodNumber>;
|
|
125
|
+
}, "strip", z.ZodTypeAny, {
|
|
126
|
+
maxStringLength?: number | undefined;
|
|
127
|
+
maxDepth?: number | undefined;
|
|
128
|
+
maxArrayLength?: number | undefined;
|
|
129
|
+
maxObjectKeys?: number | undefined;
|
|
130
|
+
}, {
|
|
131
|
+
maxStringLength?: number | undefined;
|
|
132
|
+
maxDepth?: number | undefined;
|
|
133
|
+
maxArrayLength?: number | undefined;
|
|
134
|
+
maxObjectKeys?: number | undefined;
|
|
135
|
+
}>>;
|
|
112
136
|
/**
|
|
113
137
|
* Zod schema for ObservabilityInstanceConfig
|
|
114
138
|
* Note: exporters, spanOutputProcessors, bridge, and configSelector are validated as any
|
|
@@ -153,6 +177,22 @@ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject
|
|
|
153
177
|
spanOutputProcessors: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
|
|
154
178
|
includeInternalSpans: z.ZodOptional<z.ZodBoolean>;
|
|
155
179
|
requestContextKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
180
|
+
serializationOptions: z.ZodOptional<z.ZodObject<{
|
|
181
|
+
maxStringLength: z.ZodOptional<z.ZodNumber>;
|
|
182
|
+
maxDepth: z.ZodOptional<z.ZodNumber>;
|
|
183
|
+
maxArrayLength: z.ZodOptional<z.ZodNumber>;
|
|
184
|
+
maxObjectKeys: z.ZodOptional<z.ZodNumber>;
|
|
185
|
+
}, "strip", z.ZodTypeAny, {
|
|
186
|
+
maxStringLength?: number | undefined;
|
|
187
|
+
maxDepth?: number | undefined;
|
|
188
|
+
maxArrayLength?: number | undefined;
|
|
189
|
+
maxObjectKeys?: number | undefined;
|
|
190
|
+
}, {
|
|
191
|
+
maxStringLength?: number | undefined;
|
|
192
|
+
maxDepth?: number | undefined;
|
|
193
|
+
maxArrayLength?: number | undefined;
|
|
194
|
+
maxObjectKeys?: number | undefined;
|
|
195
|
+
}>>;
|
|
156
196
|
}, "strip", z.ZodTypeAny, {
|
|
157
197
|
name: string;
|
|
158
198
|
serviceName: string;
|
|
@@ -172,6 +212,12 @@ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject
|
|
|
172
212
|
spanOutputProcessors?: any[] | undefined;
|
|
173
213
|
includeInternalSpans?: boolean | undefined;
|
|
174
214
|
requestContextKeys?: string[] | undefined;
|
|
215
|
+
serializationOptions?: {
|
|
216
|
+
maxStringLength?: number | undefined;
|
|
217
|
+
maxDepth?: number | undefined;
|
|
218
|
+
maxArrayLength?: number | undefined;
|
|
219
|
+
maxObjectKeys?: number | undefined;
|
|
220
|
+
} | undefined;
|
|
175
221
|
}, {
|
|
176
222
|
name: string;
|
|
177
223
|
serviceName: string;
|
|
@@ -191,6 +237,12 @@ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject
|
|
|
191
237
|
spanOutputProcessors?: any[] | undefined;
|
|
192
238
|
includeInternalSpans?: boolean | undefined;
|
|
193
239
|
requestContextKeys?: string[] | undefined;
|
|
240
|
+
serializationOptions?: {
|
|
241
|
+
maxStringLength?: number | undefined;
|
|
242
|
+
maxDepth?: number | undefined;
|
|
243
|
+
maxArrayLength?: number | undefined;
|
|
244
|
+
maxObjectKeys?: number | undefined;
|
|
245
|
+
} | undefined;
|
|
194
246
|
}>, {
|
|
195
247
|
name: string;
|
|
196
248
|
serviceName: string;
|
|
@@ -210,6 +262,12 @@ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject
|
|
|
210
262
|
spanOutputProcessors?: any[] | undefined;
|
|
211
263
|
includeInternalSpans?: boolean | undefined;
|
|
212
264
|
requestContextKeys?: string[] | undefined;
|
|
265
|
+
serializationOptions?: {
|
|
266
|
+
maxStringLength?: number | undefined;
|
|
267
|
+
maxDepth?: number | undefined;
|
|
268
|
+
maxArrayLength?: number | undefined;
|
|
269
|
+
maxObjectKeys?: number | undefined;
|
|
270
|
+
} | undefined;
|
|
213
271
|
}, {
|
|
214
272
|
name: string;
|
|
215
273
|
serviceName: string;
|
|
@@ -229,6 +287,12 @@ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject
|
|
|
229
287
|
spanOutputProcessors?: any[] | undefined;
|
|
230
288
|
includeInternalSpans?: boolean | undefined;
|
|
231
289
|
requestContextKeys?: string[] | undefined;
|
|
290
|
+
serializationOptions?: {
|
|
291
|
+
maxStringLength?: number | undefined;
|
|
292
|
+
maxDepth?: number | undefined;
|
|
293
|
+
maxArrayLength?: number | undefined;
|
|
294
|
+
maxObjectKeys?: number | undefined;
|
|
295
|
+
} | undefined;
|
|
232
296
|
}>;
|
|
233
297
|
/**
|
|
234
298
|
* Zod schema for config values in the configs map
|
|
@@ -272,6 +336,22 @@ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
|
|
|
272
336
|
spanOutputProcessors: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
|
|
273
337
|
includeInternalSpans: z.ZodOptional<z.ZodBoolean>;
|
|
274
338
|
requestContextKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
339
|
+
serializationOptions: z.ZodOptional<z.ZodObject<{
|
|
340
|
+
maxStringLength: z.ZodOptional<z.ZodNumber>;
|
|
341
|
+
maxDepth: z.ZodOptional<z.ZodNumber>;
|
|
342
|
+
maxArrayLength: z.ZodOptional<z.ZodNumber>;
|
|
343
|
+
maxObjectKeys: z.ZodOptional<z.ZodNumber>;
|
|
344
|
+
}, "strip", z.ZodTypeAny, {
|
|
345
|
+
maxStringLength?: number | undefined;
|
|
346
|
+
maxDepth?: number | undefined;
|
|
347
|
+
maxArrayLength?: number | undefined;
|
|
348
|
+
maxObjectKeys?: number | undefined;
|
|
349
|
+
}, {
|
|
350
|
+
maxStringLength?: number | undefined;
|
|
351
|
+
maxDepth?: number | undefined;
|
|
352
|
+
maxArrayLength?: number | undefined;
|
|
353
|
+
maxObjectKeys?: number | undefined;
|
|
354
|
+
}>>;
|
|
275
355
|
}, "strip", z.ZodTypeAny, {
|
|
276
356
|
serviceName: string;
|
|
277
357
|
sampling?: {
|
|
@@ -290,6 +370,12 @@ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
|
|
|
290
370
|
spanOutputProcessors?: any[] | undefined;
|
|
291
371
|
includeInternalSpans?: boolean | undefined;
|
|
292
372
|
requestContextKeys?: string[] | undefined;
|
|
373
|
+
serializationOptions?: {
|
|
374
|
+
maxStringLength?: number | undefined;
|
|
375
|
+
maxDepth?: number | undefined;
|
|
376
|
+
maxArrayLength?: number | undefined;
|
|
377
|
+
maxObjectKeys?: number | undefined;
|
|
378
|
+
} | undefined;
|
|
293
379
|
}, {
|
|
294
380
|
serviceName: string;
|
|
295
381
|
sampling?: {
|
|
@@ -308,6 +394,12 @@ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
|
|
|
308
394
|
spanOutputProcessors?: any[] | undefined;
|
|
309
395
|
includeInternalSpans?: boolean | undefined;
|
|
310
396
|
requestContextKeys?: string[] | undefined;
|
|
397
|
+
serializationOptions?: {
|
|
398
|
+
maxStringLength?: number | undefined;
|
|
399
|
+
maxDepth?: number | undefined;
|
|
400
|
+
maxArrayLength?: number | undefined;
|
|
401
|
+
maxObjectKeys?: number | undefined;
|
|
402
|
+
} | undefined;
|
|
311
403
|
}>, {
|
|
312
404
|
serviceName: string;
|
|
313
405
|
sampling?: {
|
|
@@ -326,6 +418,12 @@ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
|
|
|
326
418
|
spanOutputProcessors?: any[] | undefined;
|
|
327
419
|
includeInternalSpans?: boolean | undefined;
|
|
328
420
|
requestContextKeys?: string[] | undefined;
|
|
421
|
+
serializationOptions?: {
|
|
422
|
+
maxStringLength?: number | undefined;
|
|
423
|
+
maxDepth?: number | undefined;
|
|
424
|
+
maxArrayLength?: number | undefined;
|
|
425
|
+
maxObjectKeys?: number | undefined;
|
|
426
|
+
} | undefined;
|
|
329
427
|
}, {
|
|
330
428
|
serviceName: string;
|
|
331
429
|
sampling?: {
|
|
@@ -344,6 +442,12 @@ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
|
|
|
344
442
|
spanOutputProcessors?: any[] | undefined;
|
|
345
443
|
includeInternalSpans?: boolean | undefined;
|
|
346
444
|
requestContextKeys?: string[] | undefined;
|
|
445
|
+
serializationOptions?: {
|
|
446
|
+
maxStringLength?: number | undefined;
|
|
447
|
+
maxDepth?: number | undefined;
|
|
448
|
+
maxArrayLength?: number | undefined;
|
|
449
|
+
maxObjectKeys?: number | undefined;
|
|
450
|
+
} | undefined;
|
|
347
451
|
}>;
|
|
348
452
|
/**
|
|
349
453
|
* Zod schema for ObservabilityRegistryConfig
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { TracingEvent, InitExporterOptions
|
|
1
|
+
import type { TracingEvent, InitExporterOptions } from '@mastra/core/observability';
|
|
2
|
+
import type { TracingStorageStrategy } from '@mastra/core/storage';
|
|
2
3
|
import type { BaseExporterConfig } from './base.js';
|
|
3
4
|
import { BaseExporter } from './base.js';
|
|
4
5
|
interface DefaultExporterConfig extends BaseExporterConfig {
|
|
@@ -18,9 +19,9 @@ export declare class DefaultExporter extends BaseExporter {
|
|
|
18
19
|
/**
|
|
19
20
|
* Initialize the exporter (called after all dependencies are ready)
|
|
20
21
|
*/
|
|
21
|
-
init(options: InitExporterOptions): void
|
|
22
|
+
init(options: InitExporterOptions): Promise<void>;
|
|
22
23
|
/**
|
|
23
|
-
* Initialize the resolved strategy once
|
|
24
|
+
* Initialize the resolved strategy once observability store is available
|
|
24
25
|
*/
|
|
25
26
|
private initializeStrategy;
|
|
26
27
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../src/exporters/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../src/exporters/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAmB,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAErG,OAAO,KAAK,EAKV,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,UAAU,qBAAsB,SAAQ,kBAAkB;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,QAAQ,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;CAC5C;AAmED,qBAAa,eAAgB,SAAQ,YAAY;;IAC/C,IAAI,SAA2C;IAM/C,OAAO,CAAC,MAAM,CAAc;IAI5B,OAAO,CAAC,eAAe,CAA0B;gBAErC,MAAM,GAAE,qBAA0B;IAoC9C;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAgFnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAiBnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,iBAAiB;IAgDzB,OAAO,CAAC,iBAAiB;IAczB;;OAEG;YACW,mBAAmB;IAyCjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;YACW,KAAK;IAsDnB;;OAEG;YACW,gBAAgB;IA+DxB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAuBhC"}
|