Expand description
Langfuse-compatible observability engine for Juncture AI agents.
This crate provides a zero-dependency telemetry system that captures traces, observations (LLM calls, tool calls, spans), sessions, and metrics directly within the Juncture process. No external services (otel-collector, Jaeger, Prometheus) are required.
§Architecture
TelemetryCollector
└── BatchWriter (async, non-blocking)
└── TraceStore (SQLite / PostgreSQL)
└── Web Viewer (Langfuse-compatible API)§Quick Start
ⓘ
use juncture_telemetry::{TelemetryCollector, SqliteStore};
use std::sync::Arc;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let store = Arc::new(SqliteStore::new("telemetry.db").await?);
let collector = TelemetryCollector::new(store);
// ... run your graph with collector ...
collector.flush().await?;
Ok(())
}Re-exports§
pub use batch_writer::BatchWriter;pub use batch_writer::TelemetryItem;pub use collector::TelemetryCollector;pub use config::TelemetryConfig;pub use config::TelemetryHandle;pub use langfuse::LangfuseConfig;pub use langfuse::LangfuseExporter;pub use models::CaptureConfig;pub use models::EnrichedSession;pub use models::Id;pub use models::ModelStats;pub use models::Observation;pub use models::ObservationLevel;pub use models::ObservationType;pub use models::Session;pub use models::SummaryStats;pub use models::TokenUsage;pub use models::Trace;pub use sqlite_store::SqliteStore;pub use trace_store::DailyStats;pub use trace_store::PaginatedResponse;pub use trace_store::StoreError;pub use trace_store::TraceQuery;pub use trace_store::TraceStore;pub use trace_store::TraceWithObservations;
Modules§
- batch_
writer - Async batch writer for telemetry data.
- collector
- Telemetry collector - main entry point for the observability engine.
- config
- Telemetry configuration builder and handle.
- langfuse
- Langfuse cloud exporter.
- models
- Data models for the Langfuse-compatible observability engine.
- sqlite_
store - SQLite-backed implementation of
TraceStore. - trace_
store - Storage trait and query types for telemetry data.
Functions§
- init
- Create a new telemetry configuration builder.