pub struct ToolExecutionTracker { /* private fields */ }Expand description
Thread-safe tool execution tracker
Implementations§
Source§impl ToolExecutionTracker
impl ToolExecutionTracker
Sourcepub fn with_capacity(max_executions: usize) -> Self
pub fn with_capacity(max_executions: usize) -> Self
Create a tracker with specified capacity
Sourcepub fn record(&self, execution: ToolExecution)
pub fn record(&self, execution: ToolExecution)
Record a completed tool execution
Sourcepub fn get(&self, id: ToolExecId) -> Option<ToolExecution>
pub fn get(&self, id: ToolExecId) -> Option<ToolExecution>
Get execution by ID
Sourcepub fn get_by_tool(&self, tool_name: &str) -> Vec<ToolExecution>
pub fn get_by_tool(&self, tool_name: &str) -> Vec<ToolExecution>
Get all executions for a tool
Sourcepub fn get_by_file(&self, path: &str) -> Vec<ToolExecution>
pub fn get_by_file(&self, path: &str) -> Vec<ToolExecution>
Get all executions that affected a file
Sourcepub fn recent(&self, count: usize) -> Vec<ToolExecution>
pub fn recent(&self, count: usize) -> Vec<ToolExecution>
Get recent executions (last N)
Sourcepub fn all_file_changes(&self) -> Vec<(ToolExecId, FileChange)>
pub fn all_file_changes(&self) -> Vec<(ToolExecId, FileChange)>
Get all file changes across all executions
Sourcepub fn stats(&self) -> ToolExecutionStats
pub fn stats(&self) -> ToolExecutionStats
Get statistics
Trait Implementations§
Source§impl Debug for ToolExecutionTracker
impl Debug for ToolExecutionTracker
Auto Trait Implementations§
impl !Freeze for ToolExecutionTracker
impl !RefUnwindSafe for ToolExecutionTracker
impl Send for ToolExecutionTracker
impl Sync for ToolExecutionTracker
impl Unpin for ToolExecutionTracker
impl UnwindSafe for ToolExecutionTracker
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more