pub struct StatusReport {
pub services: Vec<ServiceStatus>,
pub version: Option<String>,
pub github_rate_limit: Option<RateLimitSnapshot>,
pub provenance: Provenance,
}Expand description
The payload of a built-in status reply: per-service status snapshots.
Fields§
§services: Vec<ServiceStatus>One entry per registered service, in registration order.
version: Option<String>The daemon binary’s crate version (CARGO_PKG_VERSION), so a client can
detect it is driving a stale resident daemon after a binary upgrade
(#1113). Absent from a pre-#1113 daemon; a client shows “unknown” then.
github_rate_limit: Option<RateLimitSnapshot>The daemon’s latest GitHub API rate-limit reading (#1375), when its
monitor has polled at least once. Absent before the first poll, when no
gh is available, or on a pre-#1375 daemon — a client shows nothing then.
provenance: ProvenanceGit provenance (commit SHA, dirty flag, dates) of the daemon binary,
flattened as sibling fields of version so two builds
of the same crate version can be told apart (#1374). Every field is
omitted when absent, so a daemon built without git metadata stays
byte-identical on the wire to a pre-#1374 one.
Implementations§
Source§impl StatusReport
impl StatusReport
Sourcepub fn current(services: Vec<ServiceStatus>) -> Self
pub fn current(services: Vec<ServiceStatus>) -> Self
Builds a status report stamped with this daemon binary’s own version and
git provenance (from crate::build_info). Runtime-only fields (e.g. the
GitHub rate-limit reading) default to absent and are injected by the
caller after construction.
Trait Implementations§
Source§impl Clone for StatusReport
impl Clone for StatusReport
Source§fn clone(&self) -> StatusReport
fn clone(&self) -> StatusReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for StatusReport
impl Debug for StatusReport
Source§impl Default for StatusReport
impl Default for StatusReport
Source§fn default() -> StatusReport
fn default() -> StatusReport
Source§impl<'de> Deserialize<'de> for StatusReport
impl<'de> Deserialize<'de> for StatusReport
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for StatusReport
impl RefUnwindSafe for StatusReport
impl Send for StatusReport
impl Sync for StatusReport
impl Unpin for StatusReport
impl UnsafeUnpin for StatusReport
impl UnwindSafe for StatusReport
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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