Skip to main content
Mastra v1 is coming in January 2026. Get ahead by starting new projects with the beta or upgrade your existing project today.

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

ReferenceDirect link to Reference

ExamplesDirect link to Examples

ExportersDirect link to Exporters