org.llm4s.trace.Tracing
See theTracing companion object
trait Tracing
Type-safe tracing interface for observability and debugging.
Provides a functional approach to tracing with Result[Unit] return types for proper error handling and composition. Supports multiple backends including console output, Langfuse, and custom implementations.
== Implementations ==
- LangfuseTracing - Production observability via Langfuse
- ConsoleTracing - Colored console output for development
- NoOpTracing - Silent implementation for testing/disabled tracing
== Usage ==
// Create from settings
val tracing = Tracing.create(settings)
// Or use directly
val tracing: Tracing = new ConsoleTracing()
// Trace events functionally
for {
_ <- tracing.traceEvent(TraceEvent.AgentInitialized("query", tools))
_ <- tracing.traceTokenUsage(usage, "gpt-4", "completion")
} yield ()
== Composition ==
Tracers can be composed using TracingComposer:
val combined = TracingComposer.combine(consoleTracer, langfuseTracer)
val filtered = TracingComposer.filter(tracer)(_.eventType == "error_occurred")
Attributes
- See also
-
TraceEvent for available event types
TracingComposer for composition utilities
- Companion
- object
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Members list
In this article