Skip to main content

SqliteVfsMetrics

Trait SqliteVfsMetrics 

Source
pub trait SqliteVfsMetrics: Send + Sync {
Show 32 methods // Required methods fn profiling_enabled(&self) -> bool; fn max_profiled_get_pages_requests(&self) -> usize; fn observe_operation_profile(&self, profile: &SqliteOperationMetric) -> bool; fn observe_transaction_profile( &self, profile: &SqliteTransactionMetric, ) -> bool; fn emit_operation_diagnostic_event( &self, actor_id: &str, generation: Option<u64>, profile: &SqliteOperationMetric, ); fn emit_transaction_diagnostic_event( &self, actor_id: &str, generation: Option<u64>, profile: &SqliteTransactionMetric, ); fn record_fingerprint_catalog( &self, operation_type: &'static str, fingerprint: &str, identity: &str, format_version: u8, ); fn record_resolve_pages(&self, requested_pages: u64); fn record_resolve_cache_hits(&self, pages: u64); fn record_resolve_cache_misses(&self, pages: u64); fn record_get_pages_request( &self, pages: u64, prefetch_pages: u64, page_size: u64, ); fn observe_get_pages_duration(&self, duration_ns: u64); fn observe_open_phase( &self, phase: SqliteOpenPhase, outcome: &'static str, duration_ns: u64, ); fn record_startup_preload_pages(&self, kind: &'static str, pages: u64); fn record_commit(&self, dirty_pages: u64); fn observe_commit_phases( &self, request_build_ns: u64, serialize_ns: u64, transport_ns: u64, state_update_ns: u64, total_ns: u64, ); fn set_worker_queue_depth(&self, depth: u64); fn set_worker_active(&self, active: bool); fn set_worker_inflight(&self, active: bool); fn set_vfs_cached_bytes(&self, bytes: u64); fn set_coordinator_queue_depth(&self, depth: u64); fn record_worker_queue_overload(&self); fn observe_worker_command_duration( &self, operation: &'static str, in_tx: bool, stmt_kind: &'static str, duration_ns: u64, ); fn observe_transaction_round_trips( &self, get_pages_round_trips: u64, commit_round_trips: u64, ); fn record_worker_command_error( &self, operation: &'static str, code: &'static str, ); fn observe_worker_close_duration(&self, duration_ns: u64); fn record_worker_close_timeout(&self); fn record_worker_crash(&self); fn record_worker_unclean_close(&self); // Provided methods fn operation_diagnostic_selected( &self, _profile: &SqliteOperationMetric, ) -> bool { ... } fn transaction_diagnostic_selected( &self, _profile: &SqliteTransactionMetric, ) -> bool { ... } fn record_prefetch_unused_pages(&self, _pages: u64) { ... }
}

Required Methods§

Source

fn profiling_enabled(&self) -> bool

Source

fn max_profiled_get_pages_requests(&self) -> usize

Source

fn observe_operation_profile(&self, profile: &SqliteOperationMetric) -> bool

Records an operation and returns whether its selected fingerprint was admitted.

Source

fn observe_transaction_profile(&self, profile: &SqliteTransactionMetric) -> bool

Records a transaction and returns whether its selected fingerprint was admitted.

Source

fn emit_operation_diagnostic_event( &self, actor_id: &str, generation: Option<u64>, profile: &SqliteOperationMetric, )

Emits an event already selected by operation_diagnostic_selected.

Source

fn emit_transaction_diagnostic_event( &self, actor_id: &str, generation: Option<u64>, profile: &SqliteTransactionMetric, )

Source

fn record_fingerprint_catalog( &self, operation_type: &'static str, fingerprint: &str, identity: &str, format_version: u8, )

Source

fn record_resolve_pages(&self, requested_pages: u64)

Source

fn record_resolve_cache_hits(&self, pages: u64)

Source

fn record_resolve_cache_misses(&self, pages: u64)

Source

fn record_get_pages_request( &self, pages: u64, prefetch_pages: u64, page_size: u64, )

Source

fn observe_get_pages_duration(&self, duration_ns: u64)

Source

fn observe_open_phase( &self, phase: SqliteOpenPhase, outcome: &'static str, duration_ns: u64, )

Source

fn record_startup_preload_pages(&self, kind: &'static str, pages: u64)

Source

fn record_commit(&self, dirty_pages: u64)

Records one successful commit and the dirty pages it wrote.

Source

fn observe_commit_phases( &self, request_build_ns: u64, serialize_ns: u64, transport_ns: u64, state_update_ns: u64, total_ns: u64, )

Source

fn set_worker_queue_depth(&self, depth: u64)

Source

fn set_worker_active(&self, active: bool)

Source

fn set_worker_inflight(&self, active: bool)

Source

fn set_vfs_cached_bytes(&self, bytes: u64)

Reports the bytes this database’s VFS page caches hold, after each command, after an idle release and as zero when the worker stops.

Source

fn set_coordinator_queue_depth(&self, depth: u64)

Source

fn record_worker_queue_overload(&self)

Source

fn observe_worker_command_duration( &self, operation: &'static str, in_tx: bool, stmt_kind: &'static str, duration_ns: u64, )

Source

fn observe_transaction_round_trips( &self, get_pages_round_trips: u64, commit_round_trips: u64, )

Source

fn record_worker_command_error( &self, operation: &'static str, code: &'static str, )

Source

fn observe_worker_close_duration(&self, duration_ns: u64)

Source

fn record_worker_close_timeout(&self)

Source

fn record_worker_crash(&self)

Source

fn record_worker_unclean_close(&self)

Provided Methods§

Source

fn operation_diagnostic_selected( &self, _profile: &SqliteOperationMetric, ) -> bool

Selects a diagnostic before its caller computes SQL fingerprints.

Source

fn transaction_diagnostic_selected( &self, _profile: &SqliteTransactionMetric, ) -> bool

Source

fn record_prefetch_unused_pages(&self, _pages: u64)

Prefetched pages discarded before their first use, including close and lazy TTL expiry.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§