ConsoleExporter
Outputs trace events to the console for debugging and development.
Constructor
new ConsoleExporter(config?: BaseExporterConfig)
BaseExporterConfig
interface BaseExporterConfig {
logger?: IMastraLogger;
logLevel?: LogLevel | 'debug' | 'info' | 'warn' | 'error';
}
Properties
readonly name = 'tracing-console-exporter';
Methods
exportTracingEvent
async exportTracingEvent(event: TracingEvent): Promise<void>
Exports a tracing event to the console.
shutdown
async shutdown(): Promise<void>
Logs shutdown message.
Output Format
The exporter outputs different formats based on event type:
SPAN_STARTED
🚀 SPAN_STARTED
Type: [span type]
Name: [span name]
ID: [span id]
Trace ID: [trace id]
Input: [formatted input]
Attributes: [formatted attributes]
────────────────────────────────────────
SPAN_ENDED
✅ SPAN_ENDED
Type: [span type]
Name: [span name]
ID: [span id]
Duration: [duration]ms
Trace ID: [trace id]
Input: [formatted input]
Output: [formatted output]
Error: [formatted error if present]
Attributes: [formatted attributes]
────────────────────────────────────────
SPAN_UPDATED
📝 SPAN_UPDATED
Type: [span type]
Name: [span name]
ID: [span id]
Trace ID: [trace id]
Input: [formatted input]
Output: [formatted output]
Error: [formatted error if present]
Updated Attributes: [formatted attributes]
────────────────────────────────────────
Usage
import { ConsoleExporter } from "@mastra/observability";
import { ConsoleLogger, LogLevel } from "@mastra/core/logger";
// Use default logger (INFO level)
const exporter = new ConsoleExporter();
// Use custom log level
const exporter = new ConsoleExporter({
logLevel: 'debug'
});
// Use custom logger instance
const customLogger = new ConsoleLogger({ level: LogLevel.DEBUG });
const exporterWithLogger = new ConsoleExporter({
logger: customLogger
});
Implementation Details
- Formats attributes as JSON with 2-space indentation
- Calculates and displays span duration in milliseconds
- Handles serialization errors gracefully
- Logs unimplemented event types as warnings
- Uses 80-character separator lines between events
See Also
Documentation
- Tracing Overview - Complete guide
- Exporters - Exporter concepts
Other Exporters
- DefaultExporter - Storage persistence
- CloudExporter - Mastra Cloud
- Langfuse - Langfuse integration
- Braintrust - Braintrust integration
Reference
- Configuration - Configuration options
- Interfaces - Type definitions