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.