@mastra/mcp-docs-server 0.13.24-alpha.3 → 0.13.25-alpha.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/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +8 -8
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +2 -0
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +12 -0
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +11 -0
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +29 -29
- package/.docs/organized/changelogs/%40mastra%2Fcloud.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +25 -25
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +23 -23
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +24 -24
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +24 -24
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +30 -30
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +21 -21
- package/.docs/organized/changelogs/%40mastra%2Flance.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +17 -17
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +18 -18
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +56 -56
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Frag.md +13 -13
- package/.docs/organized/changelogs/%40mastra%2Freact-hooks.md +8 -0
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +36 -36
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +13 -13
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +9 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +9 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +11 -11
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +10 -10
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +10 -10
- package/.docs/organized/changelogs/create-mastra.md +28 -28
- package/.docs/organized/changelogs/mastra.md +52 -52
- package/.docs/raw/index.mdx +1 -0
- package/.docs/raw/observability/ai-tracing/exporters/braintrust.mdx +81 -0
- package/.docs/raw/observability/ai-tracing/exporters/cloud.mdx +120 -0
- package/.docs/raw/observability/ai-tracing/exporters/default.mdx +167 -0
- package/.docs/raw/observability/ai-tracing/exporters/langfuse.mdx +121 -0
- package/.docs/raw/observability/ai-tracing/overview.mdx +565 -0
- package/.docs/raw/observability/ai-tracing/processors/sensitive-data-filter.mdx +274 -0
- package/.docs/raw/observability/{tracing.mdx → otel-tracing.mdx} +2 -2
- package/.docs/raw/observability/overview.mdx +66 -0
- package/.docs/raw/reference/agents/generate.mdx +39 -1
- package/.docs/raw/reference/agents/generateVNext.mdx +34 -2
- package/.docs/raw/reference/agents/network.mdx +34 -2
- package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +181 -0
- package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +233 -0
- package/.docs/raw/reference/observability/ai-tracing/exporters/braintrust.mdx +112 -0
- package/.docs/raw/reference/observability/ai-tracing/exporters/cloud-exporter.mdx +176 -0
- package/.docs/raw/reference/observability/ai-tracing/exporters/console-exporter.mdx +148 -0
- package/.docs/raw/reference/observability/ai-tracing/exporters/default-exporter.mdx +196 -0
- package/.docs/raw/reference/observability/ai-tracing/exporters/langfuse.mdx +116 -0
- package/.docs/raw/reference/observability/ai-tracing/interfaces.mdx +651 -0
- package/.docs/raw/reference/observability/ai-tracing/processors/sensitive-data-filter.mdx +178 -0
- package/.docs/raw/reference/observability/ai-tracing/span.mdx +371 -0
- package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +22 -0
- package/.docs/raw/reference/streaming/agents/stream.mdx +39 -1
- package/.docs/raw/reference/streaming/agents/streamVNext.mdx +34 -2
- package/.docs/raw/reference/streaming/workflows/stream.mdx +38 -0
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +38 -0
- package/.docs/raw/reference/tools/create-tool.mdx +34 -1
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +38 -0
- package/.docs/raw/reference/workflows/run-methods/start.mdx +38 -0
- package/CHANGELOG.md +15 -0
- package/package.json +5 -5
- package/.docs/raw/observability/ai-tracing.mdx +0 -597
- package/.docs/raw/reference/observability/providers/index.mdx +0 -20
- /package/.docs/raw/reference/observability/{logger.mdx → logging/pino-logger.mdx} +0 -0
- /package/.docs/raw/reference/observability/{otel-config.mdx → otel-tracing/otel-config.mdx} +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/arize-ax.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/arize-phoenix.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/braintrust.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/dash0.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/keywordsai.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/laminar.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/langfuse.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/langsmith.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/langwatch.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/new-relic.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/signoz.mdx +0 -0
- /package/.docs/raw/reference/observability/{providers → otel-tracing/providers}/traceloop.mdx +0 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "ConsoleExporter | Exporters | AI Tracing | Reference"
|
|
3
|
+
description: API reference for the ConsoleExporter
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { PropertiesTable } from "@/components/properties-table";
|
|
7
|
+
|
|
8
|
+
# ConsoleExporter
|
|
9
|
+
|
|
10
|
+
Outputs trace events to the console for debugging and development.
|
|
11
|
+
|
|
12
|
+
## Constructor
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
new ConsoleExporter(logger?: IMastraLogger)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
<PropertiesTable
|
|
19
|
+
props={[
|
|
20
|
+
{
|
|
21
|
+
name: "logger",
|
|
22
|
+
type: "IMastraLogger",
|
|
23
|
+
description: "Logger instance to use. Falls back to ConsoleLogger with INFO level if not provided",
|
|
24
|
+
required: false,
|
|
25
|
+
},
|
|
26
|
+
]}
|
|
27
|
+
/>
|
|
28
|
+
|
|
29
|
+
## Properties
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
readonly name = 'tracing-console-exporter';
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Methods
|
|
36
|
+
|
|
37
|
+
### exportEvent
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
async exportEvent(event: AITracingEvent): Promise<void>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Exports a tracing event to the console.
|
|
44
|
+
|
|
45
|
+
<PropertiesTable
|
|
46
|
+
props={[
|
|
47
|
+
{
|
|
48
|
+
name: "event",
|
|
49
|
+
type: "AITracingEvent",
|
|
50
|
+
description: "The tracing event to export",
|
|
51
|
+
required: true,
|
|
52
|
+
},
|
|
53
|
+
]}
|
|
54
|
+
/>
|
|
55
|
+
|
|
56
|
+
### shutdown
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
async shutdown(): Promise<void>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Logs shutdown message.
|
|
63
|
+
|
|
64
|
+
## Output Format
|
|
65
|
+
|
|
66
|
+
The exporter outputs different formats based on event type:
|
|
67
|
+
|
|
68
|
+
### SPAN_STARTED
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
🚀 SPAN_STARTED
|
|
72
|
+
Type: [span type]
|
|
73
|
+
Name: [span name]
|
|
74
|
+
ID: [span id]
|
|
75
|
+
Trace ID: [trace id]
|
|
76
|
+
Input: [formatted input]
|
|
77
|
+
Attributes: [formatted attributes]
|
|
78
|
+
────────────────────────────────────────
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### SPAN_ENDED
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
✅ SPAN_ENDED
|
|
85
|
+
Type: [span type]
|
|
86
|
+
Name: [span name]
|
|
87
|
+
ID: [span id]
|
|
88
|
+
Duration: [duration]ms
|
|
89
|
+
Trace ID: [trace id]
|
|
90
|
+
Input: [formatted input]
|
|
91
|
+
Output: [formatted output]
|
|
92
|
+
Error: [formatted error if present]
|
|
93
|
+
Attributes: [formatted attributes]
|
|
94
|
+
────────────────────────────────────────
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### SPAN_UPDATED
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
📝 SPAN_UPDATED
|
|
101
|
+
Type: [span type]
|
|
102
|
+
Name: [span name]
|
|
103
|
+
ID: [span id]
|
|
104
|
+
Trace ID: [trace id]
|
|
105
|
+
Input: [formatted input]
|
|
106
|
+
Output: [formatted output]
|
|
107
|
+
Error: [formatted error if present]
|
|
108
|
+
Updated Attributes: [formatted attributes]
|
|
109
|
+
────────────────────────────────────────
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Usage
|
|
113
|
+
|
|
114
|
+
```typescript
|
|
115
|
+
import { ConsoleExporter } from '@mastra/core/ai-tracing';
|
|
116
|
+
import { ConsoleLogger, LogLevel } from '@mastra/core/logger';
|
|
117
|
+
|
|
118
|
+
// Use default logger (INFO level)
|
|
119
|
+
const exporter = new ConsoleExporter();
|
|
120
|
+
|
|
121
|
+
// Use custom logger
|
|
122
|
+
const customLogger = new ConsoleLogger({ level: LogLevel.DEBUG });
|
|
123
|
+
const exporterWithLogger = new ConsoleExporter(customLogger);
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Implementation Details
|
|
127
|
+
|
|
128
|
+
- Formats attributes as JSON with 2-space indentation
|
|
129
|
+
- Calculates and displays span duration in milliseconds
|
|
130
|
+
- Handles serialization errors gracefully
|
|
131
|
+
- Logs unimplemented event types as warnings
|
|
132
|
+
- Uses 80-character separator lines between events
|
|
133
|
+
|
|
134
|
+
## See Also
|
|
135
|
+
|
|
136
|
+
### Documentation
|
|
137
|
+
- [AI Tracing Overview](/docs/observability/ai-tracing/overview) - Complete guide
|
|
138
|
+
- [Exporters](/docs/observability/ai-tracing/overview#exporters) - Exporter concepts
|
|
139
|
+
|
|
140
|
+
### Other Exporters
|
|
141
|
+
- [DefaultExporter](/reference/observability/ai-tracing/exporters/default-exporter) - Storage persistence
|
|
142
|
+
- [CloudExporter](/reference/observability/ai-tracing/exporters/cloud-exporter) - Mastra Cloud
|
|
143
|
+
- [Langfuse](/reference/observability/ai-tracing/exporters/langfuse) - Langfuse integration
|
|
144
|
+
- [Braintrust](/reference/observability/ai-tracing/exporters/braintrust) - Braintrust integration
|
|
145
|
+
|
|
146
|
+
### Reference
|
|
147
|
+
- [Configuration](/reference/observability/ai-tracing/configuration) - Configuration options
|
|
148
|
+
- [Interfaces](/reference/observability/ai-tracing/interfaces) - Type definitions
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "DefaultExporter | Exporters | AI Tracing | Reference"
|
|
3
|
+
description: API reference for the DefaultExporter
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { PropertiesTable } from "@/components/properties-table";
|
|
7
|
+
|
|
8
|
+
# DefaultExporter
|
|
9
|
+
|
|
10
|
+
Persists traces to Mastra's configured storage with automatic batching and retry logic.
|
|
11
|
+
|
|
12
|
+
## Constructor
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
new DefaultExporter(config?: BatchingConfig, logger?: IMastraLogger)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
<PropertiesTable
|
|
19
|
+
props={[
|
|
20
|
+
{
|
|
21
|
+
name: "config",
|
|
22
|
+
type: "BatchingConfig",
|
|
23
|
+
description: "Batching configuration options",
|
|
24
|
+
required: false,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: "logger",
|
|
28
|
+
type: "IMastraLogger",
|
|
29
|
+
description: "Logger instance. Falls back to ConsoleLogger with INFO level if not provided",
|
|
30
|
+
required: false,
|
|
31
|
+
},
|
|
32
|
+
]}
|
|
33
|
+
/>
|
|
34
|
+
|
|
35
|
+
## BatchingConfig
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
interface BatchingConfig {
|
|
39
|
+
/** Maximum number of spans per batch. Default: 1000 */
|
|
40
|
+
maxBatchSize?: number;
|
|
41
|
+
|
|
42
|
+
/** Maximum total buffer size before emergency flush. Default: 10000 */
|
|
43
|
+
maxBufferSize?: number;
|
|
44
|
+
|
|
45
|
+
/** Maximum time to wait before flushing batch in milliseconds. Default: 5000 */
|
|
46
|
+
maxBatchWaitMs?: number;
|
|
47
|
+
|
|
48
|
+
/** Maximum number of retry attempts. Default: 4 */
|
|
49
|
+
maxRetries?: number;
|
|
50
|
+
|
|
51
|
+
/** Base retry delay in milliseconds (uses exponential backoff). Default: 500 */
|
|
52
|
+
retryDelayMs?: number;
|
|
53
|
+
|
|
54
|
+
/** Tracing strategy or 'auto' for automatic selection. Default: 'auto' */
|
|
55
|
+
strategy?: TracingStrategy | 'auto';
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## TracingStrategy
|
|
60
|
+
|
|
61
|
+
```typescript
|
|
62
|
+
type TracingStrategy = 'realtime' | 'batch-with-updates' | 'insert-only';
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Strategy Behaviors
|
|
66
|
+
|
|
67
|
+
- **realtime**: Immediately persists each event to storage
|
|
68
|
+
- **batch-with-updates**: Batches creates and updates separately, applies in order
|
|
69
|
+
- **insert-only**: Only processes SPAN_ENDED events, ignores updates
|
|
70
|
+
|
|
71
|
+
## Properties
|
|
72
|
+
|
|
73
|
+
```typescript
|
|
74
|
+
readonly name = 'tracing-default-exporter';
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Methods
|
|
78
|
+
|
|
79
|
+
### __registerMastra
|
|
80
|
+
|
|
81
|
+
```typescript
|
|
82
|
+
__registerMastra(mastra: Mastra): void
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Registers the Mastra instance. Called automatically after Mastra construction.
|
|
86
|
+
|
|
87
|
+
### init
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
init(): void
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Initializes the exporter after dependencies are ready. Resolves tracing strategy based on storage capabilities.
|
|
94
|
+
|
|
95
|
+
### exportEvent
|
|
96
|
+
|
|
97
|
+
```typescript
|
|
98
|
+
async exportEvent(event: AITracingEvent): Promise<void>
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Processes a tracing event according to the resolved strategy.
|
|
102
|
+
|
|
103
|
+
<PropertiesTable
|
|
104
|
+
props={[
|
|
105
|
+
{
|
|
106
|
+
name: "event",
|
|
107
|
+
type: "AITracingEvent",
|
|
108
|
+
description: "The tracing event to export",
|
|
109
|
+
required: true,
|
|
110
|
+
},
|
|
111
|
+
]}
|
|
112
|
+
/>
|
|
113
|
+
|
|
114
|
+
### shutdown
|
|
115
|
+
|
|
116
|
+
```typescript
|
|
117
|
+
async shutdown(): Promise<void>
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Flushes remaining buffered events and performs cleanup.
|
|
121
|
+
|
|
122
|
+
## Automatic Strategy Selection
|
|
123
|
+
|
|
124
|
+
When `strategy: 'auto'` (default), the exporter queries the storage adapter for its capabilities:
|
|
125
|
+
|
|
126
|
+
```typescript
|
|
127
|
+
interface AITracingStrategy {
|
|
128
|
+
/** Strategies supported by this adapter */
|
|
129
|
+
supported: TracingStrategy[];
|
|
130
|
+
|
|
131
|
+
/** Preferred strategy for optimal performance */
|
|
132
|
+
preferred: TracingStrategy;
|
|
133
|
+
}
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
The exporter will:
|
|
137
|
+
1. Use the storage adapter's preferred strategy if available
|
|
138
|
+
2. Fall back to the first supported strategy if preferred isn't available
|
|
139
|
+
3. Log a warning if a user-specified strategy isn't supported
|
|
140
|
+
|
|
141
|
+
## Batching Behavior
|
|
142
|
+
|
|
143
|
+
### Flush Triggers
|
|
144
|
+
|
|
145
|
+
The buffer flushes when any of these conditions are met:
|
|
146
|
+
- Buffer size reaches `maxBatchSize`
|
|
147
|
+
- Time since first buffered event exceeds `maxBatchWaitMs`
|
|
148
|
+
- Buffer size reaches `maxBufferSize` (emergency flush)
|
|
149
|
+
- `shutdown()` is called
|
|
150
|
+
|
|
151
|
+
### Retry Logic
|
|
152
|
+
|
|
153
|
+
Failed flushes are retried with exponential backoff:
|
|
154
|
+
- Retry delay: `retryDelayMs * 2^attempt`
|
|
155
|
+
- Maximum attempts: `maxRetries`
|
|
156
|
+
- Batch is dropped after all retries fail
|
|
157
|
+
|
|
158
|
+
### Out-of-Order Handling
|
|
159
|
+
|
|
160
|
+
For `batch-with-updates` strategy:
|
|
161
|
+
- Tracks which spans have been created
|
|
162
|
+
- Rejects updates/ends for spans not yet created
|
|
163
|
+
- Logs warnings for out-of-order events
|
|
164
|
+
- Maintains sequence numbers for ordered updates
|
|
165
|
+
|
|
166
|
+
## Usage
|
|
167
|
+
|
|
168
|
+
```typescript
|
|
169
|
+
import { DefaultExporter } from '@mastra/core/ai-tracing';
|
|
170
|
+
|
|
171
|
+
// Default configuration
|
|
172
|
+
const exporter = new DefaultExporter();
|
|
173
|
+
|
|
174
|
+
// Custom batching configuration
|
|
175
|
+
const customExporter = new DefaultExporter({
|
|
176
|
+
maxBatchSize: 500,
|
|
177
|
+
maxBatchWaitMs: 2000,
|
|
178
|
+
strategy: 'batch-with-updates'
|
|
179
|
+
});
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
## See Also
|
|
183
|
+
|
|
184
|
+
### Documentation
|
|
185
|
+
- [AI Tracing Overview](/docs/observability/ai-tracing/overview) - Complete guide
|
|
186
|
+
- [Exporters](/docs/observability/ai-tracing/overview#exporters) - Exporter concepts
|
|
187
|
+
|
|
188
|
+
### Other Exporters
|
|
189
|
+
- [CloudExporter](/reference/observability/ai-tracing/exporters/cloud-exporter) - Mastra Cloud
|
|
190
|
+
- [ConsoleExporter](/reference/observability/ai-tracing/exporters/console-exporter) - Debug output
|
|
191
|
+
- [Langfuse](/reference/observability/ai-tracing/exporters/langfuse) - Langfuse integration
|
|
192
|
+
- [Braintrust](/reference/observability/ai-tracing/exporters/braintrust) - Braintrust integration
|
|
193
|
+
|
|
194
|
+
### Reference
|
|
195
|
+
- [Configuration](/reference/observability/ai-tracing/configuration) - Configuration options
|
|
196
|
+
- [Interfaces](/reference/observability/ai-tracing/interfaces) - Type definitions
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "LangfuseExporter | Exporters | AI Tracing | Reference"
|
|
3
|
+
description: Langfuse exporter for AI tracing
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { PropertiesTable } from "@/components/properties-table";
|
|
7
|
+
|
|
8
|
+
# LangfuseExporter
|
|
9
|
+
|
|
10
|
+
Sends AI tracing data to Langfuse for observability.
|
|
11
|
+
|
|
12
|
+
## Constructor
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
new LangfuseExporter(config: LangfuseExporterConfig)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## LangfuseExporterConfig
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
interface LangfuseExporterConfig {
|
|
22
|
+
publicKey?: string;
|
|
23
|
+
secretKey?: string;
|
|
24
|
+
baseUrl?: string;
|
|
25
|
+
realtime?: boolean;
|
|
26
|
+
logLevel?: 'debug' | 'info' | 'warn' | 'error';
|
|
27
|
+
options?: any;
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
<PropertiesTable
|
|
32
|
+
props={[
|
|
33
|
+
{
|
|
34
|
+
name: "publicKey",
|
|
35
|
+
type: "string",
|
|
36
|
+
description: "Langfuse API key",
|
|
37
|
+
required: false,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: "secretKey",
|
|
41
|
+
type: "string",
|
|
42
|
+
description: "Langfuse secret key",
|
|
43
|
+
required: false,
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: "baseUrl",
|
|
47
|
+
type: "string",
|
|
48
|
+
description: "Langfuse host URL",
|
|
49
|
+
required: false,
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: "realtime",
|
|
53
|
+
type: "boolean",
|
|
54
|
+
description: "Enable realtime mode - flushes after each event",
|
|
55
|
+
required: false,
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "logLevel",
|
|
59
|
+
type: "'debug' | 'info' | 'warn' | 'error'",
|
|
60
|
+
description: "Logger level (default: 'warn')",
|
|
61
|
+
required: false,
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: "options",
|
|
65
|
+
type: "any",
|
|
66
|
+
description: "Additional Langfuse client options",
|
|
67
|
+
required: false,
|
|
68
|
+
},
|
|
69
|
+
]}
|
|
70
|
+
/>
|
|
71
|
+
|
|
72
|
+
## Methods
|
|
73
|
+
|
|
74
|
+
### exportEvent
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
async exportEvent(event: AITracingEvent): Promise<void>
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Exports a tracing event to Langfuse.
|
|
81
|
+
|
|
82
|
+
### export
|
|
83
|
+
|
|
84
|
+
```typescript
|
|
85
|
+
async export(spans: ReadOnlyAISpan[]): Promise<void>
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Batch exports spans to Langfuse.
|
|
89
|
+
|
|
90
|
+
### shutdown
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
async shutdown(): Promise<void>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Flushes pending data and shuts down the client.
|
|
97
|
+
|
|
98
|
+
## Usage
|
|
99
|
+
|
|
100
|
+
```typescript
|
|
101
|
+
import { LangfuseExporter } from '@mastra/langfuse';
|
|
102
|
+
|
|
103
|
+
const exporter = new LangfuseExporter({
|
|
104
|
+
publicKey: process.env.LANGFUSE_PUBLIC_KEY,
|
|
105
|
+
secretKey: process.env.LANGFUSE_SECRET_KEY,
|
|
106
|
+
baseUrl: 'https://cloud.langfuse.com',
|
|
107
|
+
realtime: true,
|
|
108
|
+
});
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Span Mapping
|
|
112
|
+
|
|
113
|
+
- Root spans → Langfuse traces
|
|
114
|
+
- `LLM_GENERATION` spans → Langfuse generations
|
|
115
|
+
- All other spans → Langfuse spans
|
|
116
|
+
- Event spans → Langfuse events
|