pub struct MetricsCollector {Show 32 fields
pub queries_total: Arc<AtomicU64>,
pub queries_success: Arc<AtomicU64>,
pub queries_error: Arc<AtomicU64>,
pub queries_duration_us: Arc<AtomicU64>,
pub db_queries_total: Arc<AtomicU64>,
pub db_queries_duration_us: Arc<AtomicU64>,
pub validation_errors_total: Arc<AtomicU64>,
pub parse_errors_total: Arc<AtomicU64>,
pub execution_errors_total: Arc<AtomicU64>,
pub http_requests_total: Arc<AtomicU64>,
pub http_responses_2xx: Arc<AtomicU64>,
pub http_responses_4xx: Arc<AtomicU64>,
pub http_responses_5xx: Arc<AtomicU64>,
pub cache_hits: Arc<AtomicU64>,
pub cache_misses: Arc<AtomicU64>,
pub federation_entity_resolutions_total: Arc<AtomicU64>,
pub federation_entity_resolutions_errors: Arc<AtomicU64>,
pub federation_entity_resolution_duration_us: Arc<AtomicU64>,
pub federation_subgraph_requests_total: Arc<AtomicU64>,
pub federation_subgraph_requests_errors: Arc<AtomicU64>,
pub federation_subgraph_request_duration_us: Arc<AtomicU64>,
pub federation_mutations_total: Arc<AtomicU64>,
pub federation_mutations_errors: Arc<AtomicU64>,
pub federation_mutation_duration_us: Arc<AtomicU64>,
pub federation_entity_cache_hits: Arc<AtomicU64>,
pub federation_entity_cache_misses: Arc<AtomicU64>,
pub federation_errors_total: Arc<AtomicU64>,
pub operation_metrics: Arc<OperationMetricsRegistry>,
pub http_request_duration: Arc<Histogram>,
pub db_query_duration: Arc<Histogram>,
pub schema_reloads_total: Arc<AtomicU64>,
pub schema_reload_errors_total: Arc<AtomicU64>,
}Expand description
Metrics collector for the server.
Fields§
§queries_total: Arc<AtomicU64>Total GraphQL queries executed
queries_success: Arc<AtomicU64>Total successful queries
queries_error: Arc<AtomicU64>Total failed queries
queries_duration_us: Arc<AtomicU64>Total query execution time (microseconds)
db_queries_total: Arc<AtomicU64>Total database queries executed
db_queries_duration_us: Arc<AtomicU64>Total database query time (microseconds)
validation_errors_total: Arc<AtomicU64>Total validation errors
parse_errors_total: Arc<AtomicU64>Total parse errors
execution_errors_total: Arc<AtomicU64>Total execution errors
http_requests_total: Arc<AtomicU64>Total HTTP requests
http_responses_2xx: Arc<AtomicU64>Total HTTP 2xx responses
http_responses_4xx: Arc<AtomicU64>Total HTTP 4xx responses
http_responses_5xx: Arc<AtomicU64>Total HTTP 5xx responses
cache_hits: Arc<AtomicU64>Cache hits
cache_misses: Arc<AtomicU64>Cache misses
federation_entity_resolutions_total: Arc<AtomicU64>Federation entity resolutions (total)
federation_entity_resolutions_errors: Arc<AtomicU64>Federation entity resolutions (errors)
federation_entity_resolution_duration_us: Arc<AtomicU64>Federation entity resolution duration (microseconds)
federation_subgraph_requests_total: Arc<AtomicU64>Federation subgraph requests (total)
federation_subgraph_requests_errors: Arc<AtomicU64>Federation subgraph requests (errors)
federation_subgraph_request_duration_us: Arc<AtomicU64>Federation subgraph request duration (microseconds)
federation_mutations_total: Arc<AtomicU64>Federation mutations (total)
federation_mutations_errors: Arc<AtomicU64>Federation mutations (errors)
federation_mutation_duration_us: Arc<AtomicU64>Federation mutation duration (microseconds)
federation_entity_cache_hits: Arc<AtomicU64>Federation entity cache hits
federation_entity_cache_misses: Arc<AtomicU64>Federation entity cache misses
federation_errors_total: Arc<AtomicU64>Federation errors
operation_metrics: Arc<OperationMetricsRegistry>Per-operation metrics (histogram + error counter)
http_request_duration: Arc<Histogram>HTTP request duration histogram
db_query_duration: Arc<Histogram>Database query duration histogram
schema_reloads_total: Arc<AtomicU64>Total successful schema reloads
schema_reload_errors_total: Arc<AtomicU64>Total failed schema reload attempts
Implementations§
Source§impl MetricsCollector
impl MetricsCollector
Sourcepub fn record_entity_resolution(&self, duration_us: u64, success: bool)
pub fn record_entity_resolution(&self, duration_us: u64, success: bool)
Record entity resolution completion (all strategies).
§Arguments
duration_us- Resolution duration in microsecondssuccess- Whether resolution succeeded
Sourcepub fn record_subgraph_request(&self, duration_us: u64, success: bool)
pub fn record_subgraph_request(&self, duration_us: u64, success: bool)
Record subgraph request completion.
§Arguments
duration_us- Request duration in microsecondssuccess- Whether request succeeded (HTTP 2xx)
Sourcepub fn record_mutation(&self, duration_us: u64, success: bool)
pub fn record_mutation(&self, duration_us: u64, success: bool)
Record federation mutation execution.
§Arguments
duration_us- Mutation duration in microsecondssuccess- Whether mutation succeeded
Sourcepub fn record_entity_cache_hit(&self)
pub fn record_entity_cache_hit(&self)
Record entity cache hit.
Sourcepub fn record_entity_cache_miss(&self)
pub fn record_entity_cache_miss(&self)
Record entity cache miss.
Trait Implementations§
Source§impl Clone for MetricsCollector
impl Clone for MetricsCollector
Source§fn clone(&self) -> MetricsCollector
fn clone(&self) -> MetricsCollector
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MetricsCollector
impl Debug for MetricsCollector
Source§impl Default for MetricsCollector
impl Default for MetricsCollector
Source§impl From<&MetricsCollector> for PrometheusMetrics
impl From<&MetricsCollector> for PrometheusMetrics
Source§fn from(collector: &MetricsCollector) -> Self
fn from(collector: &MetricsCollector) -> Self
Auto Trait Implementations§
impl Freeze for MetricsCollector
impl !RefUnwindSafe for MetricsCollector
impl Send for MetricsCollector
impl Sync for MetricsCollector
impl Unpin for MetricsCollector
impl UnsafeUnpin for MetricsCollector
impl !UnwindSafe for MetricsCollector
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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 more