@mastra/observability 1.0.0-beta.0 → 1.0.0-beta.10

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 CHANGED
@@ -1,5 +1,306 @@
1
1
  # @mastra/observability
2
2
 
3
+ ## 1.0.0-beta.10
4
+
5
+ ### Minor Changes
6
+
7
+ - Deprecate `default: { enabled: true }` observability configuration ([#11674](https://github.com/mastra-ai/mastra/pull/11674))
8
+
9
+ The shorthand `default: { enabled: true }` configuration is now deprecated and will be removed in a future version. Users should migrate to explicit configuration with `DefaultExporter`, `CloudExporter`, and `SensitiveDataFilter`.
10
+
11
+ **Before (deprecated):**
12
+
13
+ ```typescript
14
+ import { Observability } from '@mastra/observability';
15
+
16
+ const mastra = new Mastra({
17
+ observability: new Observability({
18
+ default: { enabled: true },
19
+ }),
20
+ });
21
+ ```
22
+
23
+ **After (recommended):**
24
+
25
+ ```typescript
26
+ import { Observability, DefaultExporter, CloudExporter, SensitiveDataFilter } from '@mastra/observability';
27
+
28
+ const mastra = new Mastra({
29
+ observability: new Observability({
30
+ configs: {
31
+ default: {
32
+ serviceName: 'mastra',
33
+ exporters: [new DefaultExporter(), new CloudExporter()],
34
+ spanOutputProcessors: [new SensitiveDataFilter()],
35
+ },
36
+ },
37
+ }),
38
+ });
39
+ ```
40
+
41
+ The explicit configuration makes it clear exactly what exporters and processors are being used, improving code readability and maintainability.
42
+
43
+ A deprecation warning will be logged when using the old configuration pattern.
44
+
45
+ - Fix processor tracing to create individual spans per processor ([#11683](https://github.com/mastra-ai/mastra/pull/11683))
46
+ - Processor spans now correctly show processor IDs (e.g., `input processor: validator`) instead of combined workflow IDs
47
+ - Each processor in a chain gets its own trace span, improving observability into processor execution
48
+ - Spans are only created for phases a processor actually implements, eliminating empty spans
49
+ - Internal agent calls within processors now properly nest under their processor span
50
+ - Added `INPUT_STEP_PROCESSOR` and `OUTPUT_STEP_PROCESSOR` entity types for finer-grained tracing
51
+ - Changed `processorType` span attribute to `processorExecutor` with values `'workflow'` or `'legacy'`
52
+
53
+ ### Patch Changes
54
+
55
+ - Add embedded documentation support for Mastra packages ([#11472](https://github.com/mastra-ai/mastra/pull/11472))
56
+
57
+ Mastra packages now include embedded documentation in the published npm package under `dist/docs/`. This enables coding agents and AI assistants to understand and use the framework by reading documentation directly from `node_modules`.
58
+
59
+ Each package includes:
60
+ - **SKILL.md** - Entry point explaining the package's purpose and capabilities
61
+ - **SOURCE_MAP.json** - Machine-readable index mapping exports to types and implementation files
62
+ - **Topic folders** - Conceptual documentation organized by feature area
63
+
64
+ Documentation is driven by the `packages` frontmatter field in MDX files, which maps docs to their corresponding packages. CI validation ensures all docs include this field.
65
+
66
+ - Fix trace-level sampling to sample entire traces instead of individual spans ([#11676](https://github.com/mastra-ai/mastra/pull/11676))
67
+
68
+ Previously, sampling decisions were made independently for each span, causing fragmented traces where some spans were sampled and others were not. This defeated the purpose of ratio or custom sampling strategies.
69
+
70
+ Now:
71
+ - Sampling decisions are made once at the root span level
72
+ - Child spans inherit the sampling decision from their parent
73
+ - Custom samplers are only called once per trace (for root spans)
74
+ - Either all spans in a trace are sampled, or none are
75
+
76
+ Fixes #11504
77
+
78
+ - Updated dependencies [[`d2d3e22`](https://github.com/mastra-ai/mastra/commit/d2d3e22a419ee243f8812a84e3453dd44365ecb0), [`bc72b52`](https://github.com/mastra-ai/mastra/commit/bc72b529ee4478fe89ecd85a8be47ce0127b82a0), [`05b8bee`](https://github.com/mastra-ai/mastra/commit/05b8bee9e50e6c2a4a2bf210eca25ee212ca24fa), [`c042bd0`](https://github.com/mastra-ai/mastra/commit/c042bd0b743e0e86199d0cb83344ca7690e34a9c), [`940a2b2`](https://github.com/mastra-ai/mastra/commit/940a2b27480626ed7e74f55806dcd2181c1dd0c2), [`e0941c3`](https://github.com/mastra-ai/mastra/commit/e0941c3d7fc75695d5d258e7008fd5d6e650800c), [`0c0580a`](https://github.com/mastra-ai/mastra/commit/0c0580a42f697cd2a7d5973f25bfe7da9055038a), [`28f5f89`](https://github.com/mastra-ai/mastra/commit/28f5f89705f2409921e3c45178796c0e0d0bbb64), [`e601b27`](https://github.com/mastra-ai/mastra/commit/e601b272c70f3a5ecca610373aa6223012704892), [`3d3366f`](https://github.com/mastra-ai/mastra/commit/3d3366f31683e7137d126a3a57174a222c5801fb), [`5a4953f`](https://github.com/mastra-ai/mastra/commit/5a4953f7d25bb15ca31ed16038092a39cb3f98b3), [`eb9e522`](https://github.com/mastra-ai/mastra/commit/eb9e522ce3070a405e5b949b7bf5609ca51d7fe2), [`20e6f19`](https://github.com/mastra-ai/mastra/commit/20e6f1971d51d3ff6dd7accad8aaaae826d540ed), [`4f0b3c6`](https://github.com/mastra-ai/mastra/commit/4f0b3c66f196c06448487f680ccbb614d281e2f7), [`74c4f22`](https://github.com/mastra-ai/mastra/commit/74c4f22ed4c71e72598eacc346ba95cdbc00294f), [`81b6a8f`](https://github.com/mastra-ai/mastra/commit/81b6a8ff79f49a7549d15d66624ac1a0b8f5f971), [`e4d366a`](https://github.com/mastra-ai/mastra/commit/e4d366aeb500371dd4210d6aa8361a4c21d87034), [`a4f010b`](https://github.com/mastra-ai/mastra/commit/a4f010b22e4355a5fdee70a1fe0f6e4a692cc29e), [`73b0bb3`](https://github.com/mastra-ai/mastra/commit/73b0bb394dba7c9482eb467a97ab283dbc0ef4db), [`5627a8c`](https://github.com/mastra-ai/mastra/commit/5627a8c6dc11fe3711b3fa7a6ffd6eb34100a306), [`3ff45d1`](https://github.com/mastra-ai/mastra/commit/3ff45d10e0c80c5335a957ab563da72feb623520), [`251df45`](https://github.com/mastra-ai/mastra/commit/251df4531407dfa46d805feb40ff3fb49769f455), [`f894d14`](https://github.com/mastra-ai/mastra/commit/f894d148946629af7b1f452d65a9cf864cec3765), [`c2b9547`](https://github.com/mastra-ai/mastra/commit/c2b9547bf435f56339f23625a743b2147ab1c7a6), [`580b592`](https://github.com/mastra-ai/mastra/commit/580b5927afc82fe460dfdf9a38a902511b6b7e7f), [`58e3931`](https://github.com/mastra-ai/mastra/commit/58e3931af9baa5921688566210f00fb0c10479fa), [`08bb631`](https://github.com/mastra-ai/mastra/commit/08bb631ae2b14684b2678e3549d0b399a6f0561e), [`4fba91b`](https://github.com/mastra-ai/mastra/commit/4fba91bec7c95911dc28e369437596b152b04cd0), [`12b0cc4`](https://github.com/mastra-ai/mastra/commit/12b0cc4077d886b1a552637dedb70a7ade93528c)]:
79
+ - @mastra/core@1.0.0-beta.20
80
+
81
+ ## 1.0.0-beta.9
82
+
83
+ ### Patch Changes
84
+
85
+ - Fix SensitiveDataFilter destroying Date objects ([#11437](https://github.com/mastra-ai/mastra/pull/11437))
86
+
87
+ The `deepFilter` method now correctly preserves `Date` objects instead of converting them to empty objects `{}`. This fixes issues with downstream exporters like `BraintrustExporter` that rely on `Date` methods like `getTime()`.
88
+
89
+ Previously, `Object.keys(new Date())` returned `[]`, causing Date objects to be incorrectly converted to `{}`. The fix adds an explicit check for `Date` instances before generic object processing.
90
+
91
+ - Updated dependencies [[`5947fcd`](https://github.com/mastra-ai/mastra/commit/5947fcdd425531f29f9422026d466c2ee3113c93)]:
92
+ - @mastra/core@1.0.0-beta.18
93
+
94
+ ## 1.0.0-beta.8
95
+
96
+ ### Patch Changes
97
+
98
+ - fix(observability): start MODEL_STEP span at beginning of LLM execution ([#11409](https://github.com/mastra-ai/mastra/pull/11409))
99
+
100
+ The MODEL_STEP span was being created when the step-start chunk arrived (after the model API call completed), causing the span's startTime to be close to its endTime instead of accurately reflecting when the step began.
101
+
102
+ This fix ensures MODEL_STEP spans capture the full duration of each LLM execution step, including the API call latency, by starting the span at the beginning of the step execution rather than when the response starts streaming.
103
+
104
+ Fixes #11271
105
+
106
+ - Updated dependencies [[`3d93a15`](https://github.com/mastra-ai/mastra/commit/3d93a15796b158c617461c8b98bede476ebb43e2), [`efe406a`](https://github.com/mastra-ai/mastra/commit/efe406a1353c24993280ebc2ed61dd9f65b84b26), [`119e5c6`](https://github.com/mastra-ai/mastra/commit/119e5c65008f3e5cfca954eefc2eb85e3bf40da4), [`74e504a`](https://github.com/mastra-ai/mastra/commit/74e504a3b584eafd2f198001c6a113bbec589fd3), [`e33fdbd`](https://github.com/mastra-ai/mastra/commit/e33fdbd07b33920d81e823122331b0c0bee0bb59), [`929f69c`](https://github.com/mastra-ai/mastra/commit/929f69c3436fa20dd0f0e2f7ebe8270bd82a1529), [`8a73529`](https://github.com/mastra-ai/mastra/commit/8a73529ca01187f604b1f3019d0a725ac63ae55f)]:
107
+ - @mastra/core@1.0.0-beta.16
108
+
109
+ ## 1.0.0-beta.7
110
+
111
+ ### Minor Changes
112
+
113
+ - Unified observability schema with entity-based span identification ([#11132](https://github.com/mastra-ai/mastra/pull/11132))
114
+
115
+ ## What changed
116
+
117
+ Spans now use a unified identification model with `entityId`, `entityType`, and `entityName` instead of separate `agentId`, `toolId`, `workflowId` fields.
118
+
119
+ **Before:**
120
+
121
+ ```typescript
122
+ // Old span structure
123
+ span.agentId; // 'my-agent'
124
+ span.toolId; // undefined
125
+ span.workflowId; // undefined
126
+ ```
127
+
128
+ **After:**
129
+
130
+ ```typescript
131
+ // New span structure
132
+ span.entityType; // EntityType.AGENT
133
+ span.entityId; // 'my-agent'
134
+ span.entityName; // 'My Agent'
135
+ ```
136
+
137
+ ## New `listTraces()` API
138
+
139
+ Query traces with filtering, pagination, and sorting:
140
+
141
+ ```typescript
142
+ const { spans, pagination } = await storage.listTraces({
143
+ filters: {
144
+ entityType: EntityType.AGENT,
145
+ entityId: 'my-agent',
146
+ userId: 'user-123',
147
+ environment: 'production',
148
+ status: TraceStatus.SUCCESS,
149
+ startedAt: { start: new Date('2024-01-01'), end: new Date('2024-01-31') },
150
+ },
151
+ pagination: { page: 0, perPage: 50 },
152
+ orderBy: { field: 'startedAt', direction: 'DESC' },
153
+ });
154
+ ```
155
+
156
+ **Available filters:** date ranges (`startedAt`, `endedAt`), entity (`entityType`, `entityId`, `entityName`), identity (`userId`, `organizationId`), correlation IDs (`runId`, `sessionId`, `threadId`), deployment (`environment`, `source`, `serviceName`), `tags`, `metadata`, and `status`.
157
+
158
+ ## New retrieval methods
159
+ - `getSpan({ traceId, spanId })` - Get a single span
160
+ - `getRootSpan({ traceId })` - Get the root span of a trace
161
+ - `getTrace({ traceId })` - Get all spans for a trace
162
+
163
+ ## Backward compatibility
164
+
165
+ The legacy `getTraces()` method continues to work. When you pass `name: "agent run: my-agent"`, it automatically transforms to `entityId: "my-agent", entityType: AGENT`.
166
+
167
+ ## Migration
168
+
169
+ **Automatic:** SQL-based stores (PostgreSQL, LibSQL, MSSQL) automatically add new columns to existing `spans` tables on initialization. Existing data is preserved with new columns set to `NULL`.
170
+
171
+ **No action required:** Your existing code continues to work. Adopt the new fields and `listTraces()` API at your convenience.
172
+
173
+ ### Patch Changes
174
+
175
+ - Refactor storage architecture to use domain-specific stores via `getStore()` pattern ([#11361](https://github.com/mastra-ai/mastra/pull/11361))
176
+
177
+ ### Summary
178
+
179
+ This release introduces a new storage architecture that replaces passthrough methods on `MastraStorage` with domain-specific storage interfaces accessed via `getStore()`. This change reduces code duplication across storage adapters and provides a cleaner, more modular API.
180
+
181
+ ### Migration Guide
182
+
183
+ All direct method calls on storage instances should be updated to use `getStore()`:
184
+
185
+ ```typescript
186
+ // Before
187
+ const thread = await storage.getThreadById({ threadId });
188
+ await storage.persistWorkflowSnapshot({ workflowName, runId, snapshot });
189
+ await storage.createSpan(span);
190
+
191
+ // After
192
+ const memory = await storage.getStore('memory');
193
+ const thread = await memory?.getThreadById({ threadId });
194
+
195
+ const workflows = await storage.getStore('workflows');
196
+ await workflows?.persistWorkflowSnapshot({ workflowName, runId, snapshot });
197
+
198
+ const observability = await storage.getStore('observability');
199
+ await observability?.createSpan(span);
200
+ ```
201
+
202
+ ### Available Domains
203
+ - **`memory`**: Thread and message operations (`getThreadById`, `saveThread`, `saveMessages`, etc.)
204
+ - **`workflows`**: Workflow state persistence (`persistWorkflowSnapshot`, `loadWorkflowSnapshot`, `getWorkflowRunById`, etc.)
205
+ - **`scores`**: Evaluation scores (`saveScore`, `listScoresByScorerId`, etc.)
206
+ - **`observability`**: Tracing and spans (`createSpan`, `updateSpan`, `getTrace`, etc.)
207
+ - **`agents`**: Stored agent configurations (`createAgent`, `getAgentById`, `listAgents`, etc.)
208
+
209
+ ### Breaking Changes
210
+ - Passthrough methods have been removed from `MastraStorage` base class
211
+ - All storage adapters now require accessing domains via `getStore()`
212
+ - The `stores` property on storage instances is now the canonical way to access domain storage
213
+
214
+ ### Internal Changes
215
+ - Each storage adapter now initializes domain-specific stores in its constructor
216
+ - Domain stores share database connections and handle their own table initialization
217
+
218
+ - Updated dependencies [[`33a4d2e`](https://github.com/mastra-ai/mastra/commit/33a4d2e4ed8af51f69256232f00c34d6b6b51d48), [`4aaa844`](https://github.com/mastra-ai/mastra/commit/4aaa844a4f19d054490f43638a990cc57bda8d2f), [`4a1a6cb`](https://github.com/mastra-ai/mastra/commit/4a1a6cb3facad54b2bb6780b00ce91d6de1edc08), [`31d13d5`](https://github.com/mastra-ai/mastra/commit/31d13d5fdc2e2380e2e3ee3ec9fb29d2a00f265d), [`4c62166`](https://github.com/mastra-ai/mastra/commit/4c621669f4a29b1f443eca3ba70b814afa286266), [`7bcbf10`](https://github.com/mastra-ai/mastra/commit/7bcbf10133516e03df964b941f9a34e9e4ab4177), [`4353600`](https://github.com/mastra-ai/mastra/commit/43536005a65988a8eede236f69122e7f5a284ba2), [`6986fb0`](https://github.com/mastra-ai/mastra/commit/6986fb064f5db6ecc24aa655e1d26529087b43b3), [`053e979`](https://github.com/mastra-ai/mastra/commit/053e9793b28e970086b0507f7f3b76ea32c1e838), [`e26dc9c`](https://github.com/mastra-ai/mastra/commit/e26dc9c3ccfec54ae3dc3e2b2589f741f9ae60a6), [`55edf73`](https://github.com/mastra-ai/mastra/commit/55edf7302149d6c964fbb7908b43babfc2b52145), [`27c0009`](https://github.com/mastra-ai/mastra/commit/27c0009777a6073d7631b0eb7b481d94e165b5ca), [`dee388d`](https://github.com/mastra-ai/mastra/commit/dee388dde02f2e63c53385ae69252a47ab6825cc), [`3f3fc30`](https://github.com/mastra-ai/mastra/commit/3f3fc3096f24c4a26cffeecfe73085928f72aa63), [`d90ea65`](https://github.com/mastra-ai/mastra/commit/d90ea6536f7aa51c6545a4e9215b55858e98e16d), [`d171e55`](https://github.com/mastra-ai/mastra/commit/d171e559ead9f52ec728d424844c8f7b164c4510), [`10c2735`](https://github.com/mastra-ai/mastra/commit/10c27355edfdad1ee2b826b897df74125eb81fb8), [`1924cf0`](https://github.com/mastra-ai/mastra/commit/1924cf06816e5e4d4d5333065ec0f4bb02a97799), [`b339816`](https://github.com/mastra-ai/mastra/commit/b339816df0984d0243d944ac2655d6ba5f809cde)]:
219
+ - @mastra/core@1.0.0-beta.15
220
+
221
+ ## 1.0.0-beta.6
222
+
223
+ ### Patch Changes
224
+
225
+ - Limits the size of large payloads in span data. ([#11237](https://github.com/mastra-ai/mastra/pull/11237))
226
+
227
+ - Updated dependencies [[`4f94ed8`](https://github.com/mastra-ai/mastra/commit/4f94ed8177abfde3ec536e3574883e075423350c), [`ac3cc23`](https://github.com/mastra-ai/mastra/commit/ac3cc2397d1966bc0fc2736a223abc449d3c7719), [`a86f4df`](https://github.com/mastra-ai/mastra/commit/a86f4df0407311e0d2ea49b9a541f0938810d6a9), [`029540c`](https://github.com/mastra-ai/mastra/commit/029540ca1e582fc2dd8d288ecd4a9b0f31a954ef), [`66741d1`](https://github.com/mastra-ai/mastra/commit/66741d1a99c4f42cf23a16109939e8348ac6852e), [`01b20fe`](https://github.com/mastra-ai/mastra/commit/01b20fefb7c67c2b7d79417598ef4e60256d1225), [`0dbf199`](https://github.com/mastra-ai/mastra/commit/0dbf199110f22192ce5c95b1c8148d4872b4d119), [`a7ce182`](https://github.com/mastra-ai/mastra/commit/a7ce1822a8785ce45d62dd5c911af465e144f7d7)]:
228
+ - @mastra/core@1.0.0-beta.14
229
+
230
+ ## 1.0.0-beta.5
231
+
232
+ ### Patch Changes
233
+
234
+ - Move `zod` from `dependencies` to `devDependencies` as users should install it themselves to avoid version conflicts. ([#11114](https://github.com/mastra-ai/mastra/pull/11114))
235
+
236
+ - Updated dependencies [[`d5ed981`](https://github.com/mastra-ai/mastra/commit/d5ed981c8701c1b8a27a5f35a9a2f7d9244e695f), [`9650cce`](https://github.com/mastra-ai/mastra/commit/9650cce52a1d917ff9114653398e2a0f5c3ba808), [`932d63d`](https://github.com/mastra-ai/mastra/commit/932d63dd51be9c8bf1e00e3671fe65606c6fb9cd), [`b760b73`](https://github.com/mastra-ai/mastra/commit/b760b731aca7c8a3f041f61d57a7f125ae9cb215), [`695a621`](https://github.com/mastra-ai/mastra/commit/695a621528bdabeb87f83c2277cf2bb084c7f2b4), [`2b459f4`](https://github.com/mastra-ai/mastra/commit/2b459f466fd91688eeb2a44801dc23f7f8a887ab), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`24b76d8`](https://github.com/mastra-ai/mastra/commit/24b76d8e17656269c8ed09a0c038adb9cc2ae95a), [`243a823`](https://github.com/mastra-ai/mastra/commit/243a8239c5906f5c94e4f78b54676793f7510ae3), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`c61fac3`](https://github.com/mastra-ai/mastra/commit/c61fac3add96f0dcce0208c07415279e2537eb62), [`6f14f70`](https://github.com/mastra-ai/mastra/commit/6f14f706ccaaf81b69544b6c1b75ab66a41e5317), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`4524734`](https://github.com/mastra-ai/mastra/commit/45247343e384717a7c8404296275c56201d6470f), [`2a53598`](https://github.com/mastra-ai/mastra/commit/2a53598c6d8cfeb904a7fc74e57e526d751c8fa6), [`c7cd3c7`](https://github.com/mastra-ai/mastra/commit/c7cd3c7a187d7aaf79e2ca139de328bf609a14b4), [`847c212`](https://github.com/mastra-ai/mastra/commit/847c212caba7df0d6f2fc756b494ac3c75c3720d), [`6f941c4`](https://github.com/mastra-ai/mastra/commit/6f941c438ca5f578619788acc7608fc2e23bd176)]:
237
+ - @mastra/core@1.0.0-beta.12
238
+
239
+ ## 1.0.0-beta.4
240
+
241
+ ### Patch Changes
242
+
243
+ - Fixed CachedToken tracking in all Observability Exporters. Also fixed TimeToFirstToken in Langfuse, Braintrust, PostHog exporters. Fixed trace formatting in Posthog Exporter. ([#11029](https://github.com/mastra-ai/mastra/pull/11029))
244
+
245
+ - Updated dependencies [[`edb07e4`](https://github.com/mastra-ai/mastra/commit/edb07e49283e0c28bd094a60e03439bf6ecf0221), [`b7e17d3`](https://github.com/mastra-ai/mastra/commit/b7e17d3f5390bb5a71efc112204413656fcdc18d), [`261473a`](https://github.com/mastra-ai/mastra/commit/261473ac637e633064a22076671e2e02b002214d), [`5d7000f`](https://github.com/mastra-ai/mastra/commit/5d7000f757cd65ea9dc5b05e662fd83dfd44e932), [`4f0331a`](https://github.com/mastra-ai/mastra/commit/4f0331a79bf6eb5ee598a5086e55de4b5a0ada03), [`8a000da`](https://github.com/mastra-ai/mastra/commit/8a000da0c09c679a2312f6b3aa05b2ca78ca7393)]:
246
+ - @mastra/core@1.0.0-beta.10
247
+
248
+ ## 1.0.0-beta.3
249
+
250
+ ### Patch Changes
251
+
252
+ - Add time-to-first-token (TTFT) support for Braintrust integration ([#10840](https://github.com/mastra-ai/mastra/pull/10840))
253
+
254
+ Adds `time_to_first_token` metric to Braintrust spans, populated from the `completionStartTime` attribute captured when the first streaming chunk arrives.
255
+
256
+ ```typescript
257
+ // time_to_first_token is now automatically sent to Braintrust
258
+ // as part of span metrics during streaming
259
+ const result = await agent.stream('Hello');
260
+ ```
261
+
262
+ - Add time-to-first-token (TTFT) support for Langfuse integration ([#10781](https://github.com/mastra-ai/mastra/pull/10781))
263
+
264
+ Adds `completionStartTime` to model generation spans, which Langfuse uses to calculate TTFT metrics. The timestamp is automatically captured when the first content chunk arrives during streaming.
265
+
266
+ ```typescript
267
+ // completionStartTime is now automatically captured and sent to Langfuse
268
+ // enabling TTFT metrics in your Langfuse dashboard
269
+ const result = await agent.stream('Hello');
270
+ ```
271
+
272
+ - Consolidated tool-output chunks from nested agents into single tool-result spans ([#10836](https://github.com/mastra-ai/mastra/pull/10836))
273
+
274
+ - link langfuse prompts and helper functions ([#10738](https://github.com/mastra-ai/mastra/pull/10738))
275
+
276
+ - Updated dependencies [[`3076c67`](https://github.com/mastra-ai/mastra/commit/3076c6778b18988ae7d5c4c5c466366974b2d63f), [`85d7ee1`](https://github.com/mastra-ai/mastra/commit/85d7ee18ff4e14d625a8a30ec6656bb49804989b), [`c6c1092`](https://github.com/mastra-ai/mastra/commit/c6c1092f8fbf76109303f69e000e96fd1960c4ce), [`81dc110`](https://github.com/mastra-ai/mastra/commit/81dc11008d147cf5bdc8996ead1aa61dbdebb6fc), [`7aedb74`](https://github.com/mastra-ai/mastra/commit/7aedb74883adf66af38e270e4068fd42e7a37036), [`8f02d80`](https://github.com/mastra-ai/mastra/commit/8f02d800777397e4b45d7f1ad041988a8b0c6630), [`d7aad50`](https://github.com/mastra-ai/mastra/commit/d7aad501ce61646b76b4b511e558ac4eea9884d0), [`ce0a73a`](https://github.com/mastra-ai/mastra/commit/ce0a73abeaa75b10ca38f9e40a255a645d50ebfb), [`a02e542`](https://github.com/mastra-ai/mastra/commit/a02e542d23179bad250b044b17ff023caa61739f), [`a372c64`](https://github.com/mastra-ai/mastra/commit/a372c640ad1fd12e8f0613cebdc682fc156b4d95), [`8846867`](https://github.com/mastra-ai/mastra/commit/8846867ffa9a3746767618e314bebac08eb77d87), [`42a42cf`](https://github.com/mastra-ai/mastra/commit/42a42cf3132b9786feecbb8c13c583dce5b0e198), [`ae08bf0`](https://github.com/mastra-ai/mastra/commit/ae08bf0ebc6a4e4da992b711c4a389c32ba84cf4), [`21735a7`](https://github.com/mastra-ai/mastra/commit/21735a7ef306963554a69a89b44f06c3bcd85141), [`1d877b8`](https://github.com/mastra-ai/mastra/commit/1d877b8d7b536a251c1a7a18db7ddcf4f68d6f8b)]:
277
+ - @mastra/core@1.0.0-beta.7
278
+
279
+ ## 1.0.0-beta.2
280
+
281
+ ### Minor Changes
282
+
283
+ - Adds trace tagging support to the BrainTrust and Langfuse tracing exporters. ([#10765](https://github.com/mastra-ai/mastra/pull/10765))
284
+
285
+ - Adds bidirectional integration with otel tracing via a new @mastra/otel-bridge package. ([#10482](https://github.com/mastra-ai/mastra/pull/10482))
286
+
287
+ ### Patch Changes
288
+
289
+ - Fix SensitiveDataFilter to redact structured data in JSON strings ([#10776](https://github.com/mastra-ai/mastra/pull/10776))
290
+ - Fixed issue where SensitiveDataFilter failed to redact tool results in MODEL_STEP span input messages ([#9846](https://github.com/mastra-ai/mastra/issues/9846))
291
+
292
+ - Updated dependencies [[`ac0d2f4`](https://github.com/mastra-ai/mastra/commit/ac0d2f4ff8831f72c1c66c2be809706d17f65789), [`1a0d3fc`](https://github.com/mastra-ai/mastra/commit/1a0d3fc811482c9c376cdf79ee615c23bae9b2d6), [`85a628b`](https://github.com/mastra-ai/mastra/commit/85a628b1224a8f64cd82ea7f033774bf22df7a7e), [`c237233`](https://github.com/mastra-ai/mastra/commit/c23723399ccedf7f5744b3f40997b79246bfbe64), [`15f9e21`](https://github.com/mastra-ai/mastra/commit/15f9e216177201ea6e3f6d0bfb063fcc0953444f), [`ff94dea`](https://github.com/mastra-ai/mastra/commit/ff94dea935f4e34545c63bcb6c29804732698809), [`5b2ff46`](https://github.com/mastra-ai/mastra/commit/5b2ff4651df70c146523a7fca773f8eb0a2272f8), [`db41688`](https://github.com/mastra-ai/mastra/commit/db4168806d007417e2e60b4f68656dca4e5f40c9), [`5ca599d`](https://github.com/mastra-ai/mastra/commit/5ca599d0bb59a1595f19f58473fcd67cc71cef58), [`bff1145`](https://github.com/mastra-ai/mastra/commit/bff114556b3cbadad9b2768488708f8ad0e91475), [`5c8ca24`](https://github.com/mastra-ai/mastra/commit/5c8ca247094e0cc2cdbd7137822fb47241f86e77), [`e191844`](https://github.com/mastra-ai/mastra/commit/e1918444ca3f80e82feef1dad506cd4ec6e2875f), [`22553f1`](https://github.com/mastra-ai/mastra/commit/22553f11c63ee5e966a9c034a349822249584691), [`7237163`](https://github.com/mastra-ai/mastra/commit/72371635dbf96a87df4b073cc48fc655afbdce3d), [`2500740`](https://github.com/mastra-ai/mastra/commit/2500740ea23da067d6e50ec71c625ab3ce275e64), [`873ecbb`](https://github.com/mastra-ai/mastra/commit/873ecbb517586aa17d2f1e99283755b3ebb2863f), [`4f9bbe5`](https://github.com/mastra-ai/mastra/commit/4f9bbe5968f42c86f4930b8193de3c3c17e5bd36), [`02e51fe`](https://github.com/mastra-ai/mastra/commit/02e51feddb3d4155cfbcc42624fd0d0970d032c0), [`8f3fa3a`](https://github.com/mastra-ai/mastra/commit/8f3fa3a652bb77da092f913ec51ae46e3a7e27dc), [`cd29ad2`](https://github.com/mastra-ai/mastra/commit/cd29ad23a255534e8191f249593849ed29160886), [`bdf4d8c`](https://github.com/mastra-ai/mastra/commit/bdf4d8cdc656d8a2c21d81834bfa3bfa70f56c16), [`854e3da`](https://github.com/mastra-ai/mastra/commit/854e3dad5daac17a91a20986399d3a51f54bf68b), [`ce18d38`](https://github.com/mastra-ai/mastra/commit/ce18d38678c65870350d123955014a8432075fd9), [`cccf9c8`](https://github.com/mastra-ai/mastra/commit/cccf9c8b2d2dfc1a5e63919395b83d78c89682a0), [`61a5705`](https://github.com/mastra-ai/mastra/commit/61a570551278b6743e64243b3ce7d73de915ca8a), [`db70a48`](https://github.com/mastra-ai/mastra/commit/db70a48aeeeeb8e5f92007e8ede52c364ce15287), [`f0fdc14`](https://github.com/mastra-ai/mastra/commit/f0fdc14ee233d619266b3d2bbdeea7d25cfc6d13), [`db18bc9`](https://github.com/mastra-ai/mastra/commit/db18bc9c3825e2c1a0ad9a183cc9935f6691bfa1), [`9b37b56`](https://github.com/mastra-ai/mastra/commit/9b37b565e1f2a76c24f728945cc740c2b09be9da), [`41a23c3`](https://github.com/mastra-ai/mastra/commit/41a23c32f9877d71810f37e24930515df2ff7a0f), [`5d171ad`](https://github.com/mastra-ai/mastra/commit/5d171ad9ef340387276b77c2bb3e83e83332d729), [`f03ae60`](https://github.com/mastra-ai/mastra/commit/f03ae60500fe350c9d828621006cdafe1975fdd8), [`d1e74a0`](https://github.com/mastra-ai/mastra/commit/d1e74a0a293866dece31022047f5dbab65a304d0), [`39e7869`](https://github.com/mastra-ai/mastra/commit/39e7869bc7d0ee391077ce291474d8a84eedccff), [`5761926`](https://github.com/mastra-ai/mastra/commit/57619260c4a2cdd598763abbacd90de594c6bc76), [`c900fdd`](https://github.com/mastra-ai/mastra/commit/c900fdd504c41348efdffb205cfe80d48c38fa33), [`604a79f`](https://github.com/mastra-ai/mastra/commit/604a79fecf276e26a54a3fe01bb94e65315d2e0e), [`887f0b4`](https://github.com/mastra-ai/mastra/commit/887f0b4746cdbd7cb7d6b17ac9f82aeb58037ea5), [`2562143`](https://github.com/mastra-ai/mastra/commit/256214336b4faa78646c9c1776612393790d8784), [`ef11a61`](https://github.com/mastra-ai/mastra/commit/ef11a61920fa0ed08a5b7ceedd192875af119749)]:
293
+ - @mastra/core@1.0.0-beta.6
294
+
295
+ ## 1.0.0-beta.1
296
+
297
+ ### Patch Changes
298
+
299
+ - Updates console warning when cloud access token env is not set. ([#9149](https://github.com/mastra-ai/mastra/pull/9149))
300
+
301
+ - Updated dependencies [[`2319326`](https://github.com/mastra-ai/mastra/commit/2319326f8c64e503a09bbcf14be2dd65405445e0), [`d629361`](https://github.com/mastra-ai/mastra/commit/d629361a60f6565b5bfb11976fdaf7308af858e2), [`08c31c1`](https://github.com/mastra-ai/mastra/commit/08c31c188ebccd598acaf55e888b6397d01f7eae), [`fd3d338`](https://github.com/mastra-ai/mastra/commit/fd3d338a2c362174ed5b383f1f011ad9fb0302aa), [`c30400a`](https://github.com/mastra-ai/mastra/commit/c30400a49b994b1b97256fe785eb6c906fc2b232), [`69e0a87`](https://github.com/mastra-ai/mastra/commit/69e0a878896a2da9494945d86e056a5f8f05b851), [`01f8878`](https://github.com/mastra-ai/mastra/commit/01f88783de25e4de048c1c8aace43e26373c6ea5), [`4c77209`](https://github.com/mastra-ai/mastra/commit/4c77209e6c11678808b365d545845918c40045c8), [`d827d08`](https://github.com/mastra-ai/mastra/commit/d827d0808ffe1f3553a84e975806cc989b9735dd), [`23c10a1`](https://github.com/mastra-ai/mastra/commit/23c10a1efdd9a693c405511ab2dc8a1236603162), [`676ccc7`](https://github.com/mastra-ai/mastra/commit/676ccc7fe92468d2d45d39c31a87825c89fd1ea0), [`c10398d`](https://github.com/mastra-ai/mastra/commit/c10398d5b88f1d4af556f4267ff06f1d11e89179), [`00c2387`](https://github.com/mastra-ai/mastra/commit/00c2387f5f04a365316f851e58666ac43f8c4edf), [`ad6250d`](https://github.com/mastra-ai/mastra/commit/ad6250dbdaad927e29f74a27b83f6c468b50a705), [`3a73998`](https://github.com/mastra-ai/mastra/commit/3a73998fa4ebeb7f3dc9301afe78095fc63e7999), [`e16d553`](https://github.com/mastra-ai/mastra/commit/e16d55338403c7553531cc568125c63d53653dff), [`4d59f58`](https://github.com/mastra-ai/mastra/commit/4d59f58de2d90d6e2810a19d4518e38ddddb9038), [`e1bb9c9`](https://github.com/mastra-ai/mastra/commit/e1bb9c94b4eb68b019ae275981be3feb769b5365), [`351a11f`](https://github.com/mastra-ai/mastra/commit/351a11fcaf2ed1008977fa9b9a489fc422e51cd4)]:
302
+ - @mastra/core@1.0.0-beta.3
303
+
3
304
  ## 1.0.0-beta.0
4
305
 
5
306
  ### Major Changes
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, 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
@@ -49,6 +49,8 @@ export interface ObservabilityInstanceConfig {
49
49
  sampling?: SamplingStrategy;
50
50
  /** Custom exporters */
51
51
  exporters?: ObservabilityExporter[];
52
+ /** Observability bridge (e.g., OpenTelemetry bridge for context extraction) */
53
+ bridge?: ObservabilityBridge;
52
54
  /** Custom span output processors */
53
55
  spanOutputProcessors?: SpanOutputProcessor[];
54
56
  /** Set to `true` if you want to see spans internal to the operation of mastra */
@@ -59,12 +61,21 @@ export interface ObservabilityInstanceConfig {
59
61
  * Supports dot notation for nested values.
60
62
  */
61
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;
62
69
  }
63
70
  /**
64
71
  * Complete Observability registry configuration
65
72
  */
66
73
  export interface ObservabilityRegistryConfig {
67
- /** Enables default exporters, with sampling: always, and sensitive data filtering */
74
+ /**
75
+ * Enables default exporters, with sampling: always, and sensitive data filtering
76
+ * @deprecated Use explicit `configs` with DefaultExporter, CloudExporter, and SensitiveDataFilter instead.
77
+ * This option will be removed in a future version.
78
+ */
68
79
  default?: {
69
80
  enabled?: boolean;
70
81
  };
@@ -107,12 +118,31 @@ export declare const samplingStrategySchema: z.ZodDiscriminatedUnion<"type", [z.
107
118
  type: SamplingStrategyType.CUSTOM;
108
119
  sampler: (args_0: any, ...args: unknown[]) => boolean;
109
120
  }>]>;
121
+ /**
122
+ * Zod schema for SerializationOptions
123
+ */
124
+ export declare const serializationOptionsSchema: z.ZodOptional<z.ZodObject<{
125
+ maxStringLength: z.ZodOptional<z.ZodNumber>;
126
+ maxDepth: z.ZodOptional<z.ZodNumber>;
127
+ maxArrayLength: z.ZodOptional<z.ZodNumber>;
128
+ maxObjectKeys: z.ZodOptional<z.ZodNumber>;
129
+ }, "strip", z.ZodTypeAny, {
130
+ maxStringLength?: number | undefined;
131
+ maxDepth?: number | undefined;
132
+ maxArrayLength?: number | undefined;
133
+ maxObjectKeys?: number | undefined;
134
+ }, {
135
+ maxStringLength?: number | undefined;
136
+ maxDepth?: number | undefined;
137
+ maxArrayLength?: number | undefined;
138
+ maxObjectKeys?: number | undefined;
139
+ }>>;
110
140
  /**
111
141
  * Zod schema for ObservabilityInstanceConfig
112
- * Note: exporters, spanOutputProcessors, and configSelector are validated as any
142
+ * Note: exporters, spanOutputProcessors, bridge, and configSelector are validated as any
113
143
  * since they're complex runtime objects
114
144
  */
115
- export declare const observabilityInstanceConfigSchema: z.ZodObject<{
145
+ export declare const observabilityInstanceConfigSchema: z.ZodEffects<z.ZodObject<{
116
146
  name: z.ZodString;
117
147
  serviceName: z.ZodString;
118
148
  sampling: z.ZodOptional<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
@@ -147,9 +177,26 @@ export declare const observabilityInstanceConfigSchema: z.ZodObject<{
147
177
  sampler: (args_0: any, ...args: unknown[]) => boolean;
148
178
  }>]>>;
149
179
  exporters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
180
+ bridge: z.ZodOptional<z.ZodAny>;
150
181
  spanOutputProcessors: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
151
182
  includeInternalSpans: z.ZodOptional<z.ZodBoolean>;
152
183
  requestContextKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
184
+ serializationOptions: z.ZodOptional<z.ZodObject<{
185
+ maxStringLength: z.ZodOptional<z.ZodNumber>;
186
+ maxDepth: z.ZodOptional<z.ZodNumber>;
187
+ maxArrayLength: z.ZodOptional<z.ZodNumber>;
188
+ maxObjectKeys: z.ZodOptional<z.ZodNumber>;
189
+ }, "strip", z.ZodTypeAny, {
190
+ maxStringLength?: number | undefined;
191
+ maxDepth?: number | undefined;
192
+ maxArrayLength?: number | undefined;
193
+ maxObjectKeys?: number | undefined;
194
+ }, {
195
+ maxStringLength?: number | undefined;
196
+ maxDepth?: number | undefined;
197
+ maxArrayLength?: number | undefined;
198
+ maxObjectKeys?: number | undefined;
199
+ }>>;
153
200
  }, "strip", z.ZodTypeAny, {
154
201
  name: string;
155
202
  serviceName: string;
@@ -165,9 +212,66 @@ export declare const observabilityInstanceConfigSchema: z.ZodObject<{
165
212
  sampler: (args_0: any, ...args: unknown[]) => boolean;
166
213
  } | undefined;
167
214
  exporters?: any[] | undefined;
215
+ bridge?: any;
216
+ spanOutputProcessors?: any[] | undefined;
217
+ includeInternalSpans?: boolean | undefined;
218
+ requestContextKeys?: string[] | undefined;
219
+ serializationOptions?: {
220
+ maxStringLength?: number | undefined;
221
+ maxDepth?: number | undefined;
222
+ maxArrayLength?: number | undefined;
223
+ maxObjectKeys?: number | undefined;
224
+ } | undefined;
225
+ }, {
226
+ name: string;
227
+ serviceName: string;
228
+ sampling?: {
229
+ type: SamplingStrategyType.ALWAYS;
230
+ } | {
231
+ type: SamplingStrategyType.NEVER;
232
+ } | {
233
+ type: SamplingStrategyType.RATIO;
234
+ probability: number;
235
+ } | {
236
+ type: SamplingStrategyType.CUSTOM;
237
+ sampler: (args_0: any, ...args: unknown[]) => boolean;
238
+ } | undefined;
239
+ exporters?: any[] | undefined;
240
+ bridge?: any;
168
241
  spanOutputProcessors?: any[] | undefined;
169
242
  includeInternalSpans?: boolean | undefined;
170
243
  requestContextKeys?: string[] | undefined;
244
+ serializationOptions?: {
245
+ maxStringLength?: number | undefined;
246
+ maxDepth?: number | undefined;
247
+ maxArrayLength?: number | undefined;
248
+ maxObjectKeys?: number | undefined;
249
+ } | undefined;
250
+ }>, {
251
+ name: string;
252
+ serviceName: string;
253
+ sampling?: {
254
+ type: SamplingStrategyType.ALWAYS;
255
+ } | {
256
+ type: SamplingStrategyType.NEVER;
257
+ } | {
258
+ type: SamplingStrategyType.RATIO;
259
+ probability: number;
260
+ } | {
261
+ type: SamplingStrategyType.CUSTOM;
262
+ sampler: (args_0: any, ...args: unknown[]) => boolean;
263
+ } | undefined;
264
+ exporters?: any[] | undefined;
265
+ bridge?: any;
266
+ spanOutputProcessors?: any[] | undefined;
267
+ includeInternalSpans?: boolean | undefined;
268
+ requestContextKeys?: string[] | undefined;
269
+ serializationOptions?: {
270
+ maxStringLength?: number | undefined;
271
+ maxDepth?: number | undefined;
272
+ maxArrayLength?: number | undefined;
273
+ maxObjectKeys?: number | undefined;
274
+ } | undefined;
171
275
  }, {
172
276
  name: string;
173
277
  serviceName: string;
@@ -183,15 +287,22 @@ export declare const observabilityInstanceConfigSchema: z.ZodObject<{
183
287
  sampler: (args_0: any, ...args: unknown[]) => boolean;
184
288
  } | undefined;
185
289
  exporters?: any[] | undefined;
290
+ bridge?: any;
186
291
  spanOutputProcessors?: any[] | undefined;
187
292
  includeInternalSpans?: boolean | undefined;
188
293
  requestContextKeys?: string[] | undefined;
294
+ serializationOptions?: {
295
+ maxStringLength?: number | undefined;
296
+ maxDepth?: number | undefined;
297
+ maxArrayLength?: number | undefined;
298
+ maxObjectKeys?: number | undefined;
299
+ } | undefined;
189
300
  }>;
190
301
  /**
191
302
  * Zod schema for config values in the configs map
192
303
  * This is the config object without the name field
193
304
  */
194
- export declare const observabilityConfigValueSchema: z.ZodObject<{
305
+ export declare const observabilityConfigValueSchema: z.ZodEffects<z.ZodObject<{
195
306
  serviceName: z.ZodString;
196
307
  sampling: z.ZodOptional<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
197
308
  type: z.ZodLiteral<SamplingStrategyType.ALWAYS>;
@@ -225,9 +336,26 @@ export declare const observabilityConfigValueSchema: z.ZodObject<{
225
336
  sampler: (args_0: any, ...args: unknown[]) => boolean;
226
337
  }>]>>;
227
338
  exporters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
339
+ bridge: z.ZodOptional<z.ZodAny>;
228
340
  spanOutputProcessors: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
229
341
  includeInternalSpans: z.ZodOptional<z.ZodBoolean>;
230
342
  requestContextKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
343
+ serializationOptions: z.ZodOptional<z.ZodObject<{
344
+ maxStringLength: z.ZodOptional<z.ZodNumber>;
345
+ maxDepth: z.ZodOptional<z.ZodNumber>;
346
+ maxArrayLength: z.ZodOptional<z.ZodNumber>;
347
+ maxObjectKeys: z.ZodOptional<z.ZodNumber>;
348
+ }, "strip", z.ZodTypeAny, {
349
+ maxStringLength?: number | undefined;
350
+ maxDepth?: number | undefined;
351
+ maxArrayLength?: number | undefined;
352
+ maxObjectKeys?: number | undefined;
353
+ }, {
354
+ maxStringLength?: number | undefined;
355
+ maxDepth?: number | undefined;
356
+ maxArrayLength?: number | undefined;
357
+ maxObjectKeys?: number | undefined;
358
+ }>>;
231
359
  }, "strip", z.ZodTypeAny, {
232
360
  serviceName: string;
233
361
  sampling?: {
@@ -242,9 +370,64 @@ export declare const observabilityConfigValueSchema: z.ZodObject<{
242
370
  sampler: (args_0: any, ...args: unknown[]) => boolean;
243
371
  } | undefined;
244
372
  exporters?: any[] | undefined;
373
+ bridge?: any;
374
+ spanOutputProcessors?: any[] | undefined;
375
+ includeInternalSpans?: boolean | undefined;
376
+ requestContextKeys?: string[] | undefined;
377
+ serializationOptions?: {
378
+ maxStringLength?: number | undefined;
379
+ maxDepth?: number | undefined;
380
+ maxArrayLength?: number | undefined;
381
+ maxObjectKeys?: number | undefined;
382
+ } | undefined;
383
+ }, {
384
+ serviceName: string;
385
+ sampling?: {
386
+ type: SamplingStrategyType.ALWAYS;
387
+ } | {
388
+ type: SamplingStrategyType.NEVER;
389
+ } | {
390
+ type: SamplingStrategyType.RATIO;
391
+ probability: number;
392
+ } | {
393
+ type: SamplingStrategyType.CUSTOM;
394
+ sampler: (args_0: any, ...args: unknown[]) => boolean;
395
+ } | undefined;
396
+ exporters?: any[] | undefined;
397
+ bridge?: any;
398
+ spanOutputProcessors?: any[] | undefined;
399
+ includeInternalSpans?: boolean | undefined;
400
+ requestContextKeys?: string[] | undefined;
401
+ serializationOptions?: {
402
+ maxStringLength?: number | undefined;
403
+ maxDepth?: number | undefined;
404
+ maxArrayLength?: number | undefined;
405
+ maxObjectKeys?: number | undefined;
406
+ } | undefined;
407
+ }>, {
408
+ serviceName: string;
409
+ sampling?: {
410
+ type: SamplingStrategyType.ALWAYS;
411
+ } | {
412
+ type: SamplingStrategyType.NEVER;
413
+ } | {
414
+ type: SamplingStrategyType.RATIO;
415
+ probability: number;
416
+ } | {
417
+ type: SamplingStrategyType.CUSTOM;
418
+ sampler: (args_0: any, ...args: unknown[]) => boolean;
419
+ } | undefined;
420
+ exporters?: any[] | undefined;
421
+ bridge?: any;
245
422
  spanOutputProcessors?: any[] | undefined;
246
423
  includeInternalSpans?: boolean | undefined;
247
424
  requestContextKeys?: string[] | undefined;
425
+ serializationOptions?: {
426
+ maxStringLength?: number | undefined;
427
+ maxDepth?: number | undefined;
428
+ maxArrayLength?: number | undefined;
429
+ maxObjectKeys?: number | undefined;
430
+ } | undefined;
248
431
  }, {
249
432
  serviceName: string;
250
433
  sampling?: {
@@ -259,9 +442,16 @@ export declare const observabilityConfigValueSchema: z.ZodObject<{
259
442
  sampler: (args_0: any, ...args: unknown[]) => boolean;
260
443
  } | undefined;
261
444
  exporters?: any[] | undefined;
445
+ bridge?: any;
262
446
  spanOutputProcessors?: any[] | undefined;
263
447
  includeInternalSpans?: boolean | undefined;
264
448
  requestContextKeys?: string[] | undefined;
449
+ serializationOptions?: {
450
+ maxStringLength?: number | undefined;
451
+ maxDepth?: number | undefined;
452
+ maxArrayLength?: number | undefined;
453
+ maxObjectKeys?: number | undefined;
454
+ } | undefined;
265
455
  }>;
266
456
  /**
267
457
  * Zod schema for ObservabilityRegistryConfig
@@ -269,7 +459,7 @@ export declare const observabilityConfigValueSchema: z.ZodObject<{
269
459
  * both plain config objects and pre-instantiated ObservabilityInstance objects.
270
460
  * The schema is permissive to handle edge cases gracefully (arrays, null values).
271
461
  */
272
- export declare const observabilityRegistryConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
462
+ export declare const observabilityRegistryConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
273
463
  default: z.ZodNullable<z.ZodOptional<z.ZodObject<{
274
464
  enabled: z.ZodOptional<z.ZodBoolean>;
275
465
  }, "strip", z.ZodTypeAny, {
@@ -339,5 +529,25 @@ export declare const observabilityRegistryConfigSchema: z.ZodEffects<z.ZodEffect
339
529
  }>>>;
340
530
  configs: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny, "many">, z.ZodNull]>>;
341
531
  configSelector: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
532
+ }, z.ZodTypeAny, "passthrough">>, z.objectOutputType<{
533
+ default: z.ZodNullable<z.ZodOptional<z.ZodObject<{
534
+ enabled: z.ZodOptional<z.ZodBoolean>;
535
+ }, "strip", z.ZodTypeAny, {
536
+ enabled?: boolean | undefined;
537
+ }, {
538
+ enabled?: boolean | undefined;
539
+ }>>>;
540
+ configs: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny, "many">, z.ZodNull]>>;
541
+ configSelector: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
542
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
543
+ default: z.ZodNullable<z.ZodOptional<z.ZodObject<{
544
+ enabled: z.ZodOptional<z.ZodBoolean>;
545
+ }, "strip", z.ZodTypeAny, {
546
+ enabled?: boolean | undefined;
547
+ }, {
548
+ enabled?: boolean | undefined;
549
+ }>>>;
550
+ configs: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny, "many">, z.ZodNull]>>;
551
+ configSelector: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
342
552
  }, z.ZodTypeAny, "passthrough">>;
343
553
  //# sourceMappingURL=config.d.ts.map