Skip to main content

observability.config

Configuration for observability in agent-runtimes.

Supports:

  • OpenTelemetry configuration
  • SQLite storage configuration
  • Optional Logfire integration

ExporterType Objects

class ExporterType(str, Enum)

Supported trace exporters.

ObservabilityConfig Objects

class ObservabilityConfig(BaseModel)

Configuration for observability features.

sqlite_max_traces

Maximum traces to keep

sqlite_retention_days

Days to retain traces

sample_rate

1.0 = sample all, 0.0 = sample none

from_env

@classmethod
def from_env(cls) -> "ObservabilityConfig"

Create configuration from environment variables.

Environment variables: OTEL_ENABLED: Enable observability (default: true) OTEL_SERVICE_NAME: Service name OTEL_EXPORTER: Comma-separated exporters OTEL_SQLITE_PATH: Path to SQLite database OTEL_OTLP_ENDPOINT: OTLP collector endpoint LOGFIRE_TOKEN: Logfire authentication token

configure_observability

def configure_observability(config: ObservabilityConfig | None = None) -> None

Configure observability for agent-runtimes.

This should be called once at application startup.

Arguments:

  • config - Configuration to use. If None, loads from environment.

get_config

def get_config() -> ObservabilityConfig | None

Get the current observability configuration.

is_initialized

def is_initialized() -> bool

Check if observability is initialized.