Skip to main content

Observability Instances

DefaultObservabilityInstance
Direct link to DefaultObservabilityInstance

Default implementation of the ObservabilityInstance interface.

Constructor
Direct link to Constructor

new DefaultObservabilityInstance(config: ObservabilityInstanceConfig)

Creates a new DefaultObservabilityInstance with the specified configuration.

Properties
Direct link to Properties

Inherits all properties and methods from BaseObservabilityInstance.

BaseObservabilityInstance
Direct link to BaseObservabilityInstance

Base class for custom ObservabilityInstance implementations.

Methods
Direct link to Methods

getConfig
Direct link to getConfig

getConfig(): Readonly<Required<ObservabilityInstanceConfig>>

Returns the current observability configuration.

getExporters
Direct link to getExporters

getExporters(): readonly ObservabilityExporter[]

Returns all configured exporters.

getSpanOutputProcessors
Direct link to getSpanOutputProcessors

getSpanOutputProcessors(): readonly SpanOutputProcessor[]

Returns all configured span output processors.

getLogger
Direct link to getLogger

getLogger(): IMastraLogger

Returns the logger instance for exporters and other components.

startSpan
Direct link to startSpan

startSpan<TType extends SpanType>(
options: StartSpanOptions<TType>
): Span<TType>

Start a new span of a specific SpanType. Creates the root span of a trace if no parent is provided.

shutdown
Direct link to shutdown

async shutdown(): Promise<void>

Shuts down all exporters and processors, cleaning up resources.

Custom Implementation
Direct link to Custom Implementation

To create a custom ObservabilityInstance implementation, extend BaseObservabilityInstance:

class CustomObservabilityInstance extends BaseObservabilityInstance {
constructor(config: ObservabilityInstanceConfig) {
super(config);
// Custom initialization
}

// Override methods as needed
startSpan<TType extends SpanType>(
options: StartSpanOptions<TType>,
): Span<TType> {
// Custom span creation logic
return super.startSpan(options);
}
}

See Also
Direct link to See Also

Documentation
Direct link to Documentation

Exporters
Direct link to Exporters