Configuration
ObservabilityRegistryConfigDirect link to ObservabilityRegistryConfig
interface ObservabilityRegistryConfig {
default?: { enabled?: boolean };
configs?: Record<string, TracingConfig | AITracing>;
configSelector?: ConfigSelector;
}
TracingConfigDirect link to TracingConfig
interface TracingConfig {
name: string;
serviceName: string;
sampling?: SamplingStrategy;
exporters?: AITracingExporter[];
processors?: AISpanProcessor[];
}
SamplingStrategyDirect link to SamplingStrategy
type SamplingStrategy =
| { type: "always" }
| { type: "never" }
| { type: "ratio"; probability: number }
| { type: "custom"; sampler: (options?: TracingOptions) => boolean };
ConfigSelectorDirect link to ConfigSelector
type ConfigSelector = (
options: ConfigSelectorOptions,
availableConfigs: Map<string, AITracing>,
) => string | undefined;
ConfigSelectorOptionsDirect link to ConfigSelectorOptions
interface ConfigSelectorOptions {
metadata?: Record<string, any>;
runtimeContext?: Map<string, any>;
}
Registry Functions
setupAITracingDirect link to setupAITracing
function setupAITracing(config: ObservabilityRegistryConfig): void;
Initializes AI tracing from configuration. Called automatically by Mastra constructor.
registerAITracingDirect link to registerAITracing
function registerAITracing(
name: string,
instance: AITracing,
isDefault?: boolean,
): void;
Registers a tracing config in the global registry.
getAITracingDirect link to getAITracing
function getAITracing(name: string): AITracing | undefined;
Retrieves a tracing config by name.
getDefaultAITracingDirect link to getDefaultAITracing
function getDefaultAITracing(): AITracing | undefined;
Returns the default tracing config.
getSelectedAITracingDirect link to getSelectedAITracing
function getSelectedAITracing(
options: ConfigSelectorOptions,
): AITracing | undefined;
Returns the tracing config selected by the config selector or default.
setSelectorDirect link to setSelector
function setSelector(selector: ConfigSelector): void;
Sets the global config selector function.
unregisterAITracingDirect link to unregisterAITracing
function unregisterAITracing(name: string): boolean;
Removes a tracing config from the registry.
shutdownAITracingRegistryDirect link to shutdownAITracingRegistry
async function shutdownAITracingRegistry(): Promise<void>;
Shuts down all tracing configs and clears the registry.
clearAITracingRegistryDirect link to clearAITracingRegistry
function clearAITracingRegistry(): void;
Clears all configs without shutdown.
getAllAITracingDirect link to getAllAITracing
function getAllAITracing(): ReadonlyMap<string, AITracing>;
Returns all registered tracing configs.
hasAITracingDirect link to hasAITracing
function hasAITracing(name: string): boolean;
Checks if a tracing instance exists and is enabled.
See AlsoDirect link to See Also
DocumentationDirect link to Documentation
- AI Tracing Overview - Concepts and usage guide
- Sampling Strategies - Sampling configuration details
- Multi-Config Setup - Using multiple configurations
ReferenceDirect link to Reference
- AITracing Classes - Core tracing classes
- Interfaces - Type definitions
- Span Reference - Span lifecycle
ExamplesDirect link to Examples
- Basic AI Tracing - Getting started
ExportersDirect link to Exporters
- DefaultExporter - Storage configuration
- CloudExporter - Cloud setup
- Braintrust - Braintrust integration
- Langfuse - Langfuse integration
- LangSmith - LangSmith integration