Skip to main content

Crate lc_callbacks

Crate lc_callbacks 

Source
Expand description

Callback and tracing system

This module provides callbacks for observability, tracing, and monitoring.

§Quick Start

use lc_callbacks::{CallbackManager, StdOutHandler, LangSmithHandler};
use std::sync::Arc;

// Create callback manager with handlers
let manager = CallbackManager::new()
    .add_handler(Arc::new(StdOutHandler::new()))
    .add_handler(Arc::new(LangSmithHandler::from_env()?));

// Use with LLM or Agent
let llm = OpenAIChat::new(config);
// llm.with_callbacks(Arc::new(manager));

§Environment Variables for LangSmith

  • LANGSMITH_API_KEY: API key (required, starts with “ls_”)
  • LANGSMITH_TRACING: Enable tracing (default: “true”)
  • LANGSMITH_PROJECT: Project name (default: “default”)
  • LANGSMITH_ENDPOINT: API endpoint (default: LangSmith official)
  • LANGSMITH_WORKSPACE_ID: Workspace ID (required for org accounts)

Re-exports§

pub use handlers::FileCallbackHandler;
pub use handlers::LangSmithHandler;
pub use handlers::LogFormat;
pub use handlers::StdOutHandler;
pub use tracing::clear_span_stack;
pub use tracing::init_task_span_stack;
pub use tracing::ConsoleTracingBackend;
pub use tracing::InMemoryTracingBackend;
pub use tracing::SpanGuard;
pub use tracing::SpanId;
pub use tracing::SpanKind;
pub use tracing::SpanStatus;
pub use tracing::SpanTokenUsage;
pub use tracing::TraceNode;
pub use tracing::TraceSpan;
pub use tracing::Tracer;
pub use tracing::TracingBackend;

Modules§

handlers
Built-in callback handlers
tracing
Agent observability / deep tracing system

Structs§

CallbackManager
Callback manager that handles multiple handlers
LangSmithClient
LangSmith API client
LangSmithConfig
LangSmith configuration
RunCreate
Simplified run structure for API requests
RunTree
Run tree node for tracing
RunUpdate
Run update structure for PATCH requests

Enums§

LangSmithError
LangSmith error type
RunType
Run type for tracing

Traits§

CallbackHandler
Callback handler trait for tracing and monitoring