pub struct StatsResponse {
pub uptime_seconds: u64,
pub requests_total: u64,
pub errors_total: u64,
pub cache_hits: u64,
pub cache_misses: u64,
pub tokens_prompt_total: u64,
pub tokens_generated_total: u64,
pub last_request_age_seconds: Option<f64>,
pub generating_now: usize,
pub queue_depth: Option<usize>,
pub queue_rejected_total: Option<u64>,
pub recent: Vec<RecentRequest>,
}Fields§
§uptime_seconds: u64§requests_total: u64§errors_total: u64§cache_hits: u64§cache_misses: u64§tokens_prompt_total: u64§tokens_generated_total: u64§last_request_age_seconds: Option<f64>Seconds since the last request finished; null when none has.
generating_now: usizeStreamed generations decoding right now – the ones that could
be stopped by POST /v1/cancel at this instant.
Not a queue depth: nothing is queued in front of a decode here, so this counts work in progress, not work waiting. Named for what it is so no one reads a backlog into it.
queue_depth: Option<usize>Requests waiting for a decode slot, from the continuous-batching scheduler’s own queue.
null – not 0 – when continuous batching is off, because
then there is no queue at all: every request goes straight onto
its own blocking thread. A gauge reading 0 claims an empty
queue was measured; null says there was nothing to measure,
and a UI must be able to tell those apart.
queue_rejected_total: Option<u64>Requests the queue turned away because it was full, since start.
null under the same condition as Self::queue_depth.
recent: Vec<RecentRequest>Newest last, capped server-side. See RecentRequest.
Trait Implementations§
Source§impl Clone for StatsResponse
impl Clone for StatsResponse
Source§fn clone(&self) -> StatsResponse
fn clone(&self) -> StatsResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more