Skip to main content

Telemetry

Trait Telemetry 

Source
pub trait Telemetry:
    Send
    + Sync
    + 'static {
Show 20 methods // Provided methods fn on_start<'a>(&'a self, _event: &'a StartEvent) -> BoxFuture<'a, ()> { ... } fn on_step_start<'a>( &'a self, _event: &'a StepStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_language_model_call_start<'a>( &'a self, _event: &'a ModelCallStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_language_model_call_end<'a>( &'a self, _event: &'a ModelCallEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_tool_execution_start<'a>( &'a self, _event: &'a ToolExecutionStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_tool_execution_end<'a>( &'a self, _event: &'a ToolExecutionEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_step_end<'a>(&'a self, _event: &'a StepEndEvent) -> BoxFuture<'a, ()> { ... } fn on_embed_start<'a>( &'a self, _event: &'a EmbedStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_embed_end<'a>( &'a self, _event: &'a EmbedEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_rerank_start<'a>( &'a self, _event: &'a RerankStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_rerank_end<'a>( &'a self, _event: &'a RerankEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_embed_operation_start<'a>( &'a self, _event: &'a EmbedCallStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_embed_operation_end<'a>( &'a self, _event: &'a EmbedCallEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_rerank_operation_start<'a>( &'a self, _event: &'a RerankCallStartEvent, ) -> BoxFuture<'a, ()> { ... } fn on_rerank_operation_end<'a>( &'a self, _event: &'a RerankCallEndEvent, ) -> BoxFuture<'a, ()> { ... } fn on_end<'a>(&'a self, _event: &'a EndEvent) -> BoxFuture<'a, ()> { ... } fn on_abort<'a>(&'a self, _event: &'a AbortEvent) -> BoxFuture<'a, ()> { ... } fn on_error<'a>(&'a self, _event: &'a ErrorEvent<'_>) -> BoxFuture<'a, ()> { ... } fn execute_language_model_call<'a>( &'a self, _ctx: &'a ModelCallContext, call: BoxFuture<'a, Result<ModelCallOutcome, Error>>, ) -> BoxFuture<'a, Result<ModelCallOutcome, Error>> { ... } fn execute_tool<'a>( &'a self, _ctx: &'a ToolExecutionContext, call: BoxFuture<'a, Result<ToolOutcome, ToolError>>, ) -> BoxFuture<'a, Result<ToolOutcome, ToolError>> { ... }
}
Expand description

A telemetry integration with awaited lifecycle callbacks.

Every method has a no-op default. Integrations for the same event run concurrently; unwinding callback panics cannot interrupt the operation.

Provided Methods§

Source

fn on_start<'a>(&'a self, _event: &'a StartEvent) -> BoxFuture<'a, ()>

A call started.

Source

fn on_step_start<'a>(&'a self, _event: &'a StepStartEvent) -> BoxFuture<'a, ()>

A step started.

Source

fn on_language_model_call_start<'a>( &'a self, _event: &'a ModelCallStartEvent, ) -> BoxFuture<'a, ()>

A model call is about to be made.

Source

fn on_language_model_call_end<'a>( &'a self, _event: &'a ModelCallEndEvent, ) -> BoxFuture<'a, ()>

A model call finished.

Source

fn on_tool_execution_start<'a>( &'a self, _event: &'a ToolExecutionStartEvent, ) -> BoxFuture<'a, ()>

A tool execution started.

Source

fn on_tool_execution_end<'a>( &'a self, _event: &'a ToolExecutionEndEvent, ) -> BoxFuture<'a, ()>

A tool execution finished.

Source

fn on_step_end<'a>(&'a self, _event: &'a StepEndEvent) -> BoxFuture<'a, ()>

A step finished.

Source

fn on_embed_start<'a>( &'a self, _event: &'a EmbedStartEvent, ) -> BoxFuture<'a, ()>

An embedding call started.

Source

fn on_embed_end<'a>(&'a self, _event: &'a EmbedEndEvent) -> BoxFuture<'a, ()>

An embedding call finished.

Source

fn on_rerank_start<'a>( &'a self, _event: &'a RerankStartEvent, ) -> BoxFuture<'a, ()>

A rerank call started.

Source

fn on_rerank_end<'a>(&'a self, _event: &'a RerankEndEvent) -> BoxFuture<'a, ()>

A rerank call finished.

Source

fn on_embed_operation_start<'a>( &'a self, _event: &'a EmbedCallStartEvent, ) -> BoxFuture<'a, ()>

An embedding operation started before its attempts.

Source

fn on_embed_operation_end<'a>( &'a self, _event: &'a EmbedCallEndEvent, ) -> BoxFuture<'a, ()>

An embedding operation completed all its attempts.

Source

fn on_rerank_operation_start<'a>( &'a self, _event: &'a RerankCallStartEvent, ) -> BoxFuture<'a, ()>

A reranking operation started before its attempts.

Source

fn on_rerank_operation_end<'a>( &'a self, _event: &'a RerankCallEndEvent, ) -> BoxFuture<'a, ()>

A reranking operation completed all its attempts.

Source

fn on_end<'a>(&'a self, _event: &'a EndEvent) -> BoxFuture<'a, ()>

A call finished.

Source

fn on_abort<'a>(&'a self, _event: &'a AbortEvent) -> BoxFuture<'a, ()>

A streaming call was aborted.

Source

fn on_error<'a>(&'a self, _event: &'a ErrorEvent<'_>) -> BoxFuture<'a, ()>

An error occurred.

Source

fn execute_language_model_call<'a>( &'a self, _ctx: &'a ModelCallContext, call: BoxFuture<'a, Result<ModelCallOutcome, Error>>, ) -> BoxFuture<'a, Result<ModelCallOutcome, Error>>

Runs a model call inside integration-specific context (for example an OpenTelemetry span). The default runs call unchanged.

Source

fn execute_tool<'a>( &'a self, _ctx: &'a ToolExecutionContext, call: BoxFuture<'a, Result<ToolOutcome, ToolError>>, ) -> BoxFuture<'a, Result<ToolOutcome, ToolError>>

Runs a tool execution inside integration-specific context.

Implementations§

Source§

impl dyn Telemetry

Source

pub fn ptr_eq(this: &Arc<Self>, other: &Arc<Self>) -> bool

Convenience for tests: returns true when self is the same object.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§