Skip to main content
Mastra v1 was released! Start new projects with v1 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