pub struct Health {
pub refresh_interval_ms: u64,
pub max_memory_bytes: Option<ByteSize>,
pub max_memory_percent: f32,
pub probe_timeout_ms: u64,
pub memory_stat_refresh_frequency_ms: u64,
}Expand description
Settings to control Relay’s health checks.
After breaching one of the configured thresholds, Relay will
return an unhealthy status from its health endpoint.
Fields§
§refresh_interval_ms: u64Interval to refresh internal health checks.
Shorter intervals will decrease the time it takes the health check endpoint to report issues, but can also increase sporadic unhealthy responses.
Defaults to `3000`` (3 seconds).
max_memory_bytes: Option<ByteSize>Maximum memory watermark in bytes.
By default, there is no absolute limit set and the watermark
is only controlled by setting Self::max_memory_percent.
max_memory_percent: f32Maximum memory watermark as a percentage of maximum system memory.
Defaults to 0.95 (95%).
probe_timeout_ms: u64Health check probe timeout in milliseconds.
Any probe exceeding the timeout will be considered failed. This limits the max execution time of Relay health checks.
Defaults to 900 milliseconds.
memory_stat_refresh_frequency_ms: u64The refresh frequency of memory stats which are used to poll memory usage of Relay.
The implementation of memory stats guarantees that the refresh will happen at
least every x ms since memory readings are lazy and are updated only if needed.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Health
impl<'de> Deserialize<'de> for Health
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 Health
impl RefUnwindSafe for Health
impl Send for Health
impl Sync for Health
impl Unpin for Health
impl UnsafeUnpin for Health
impl UnwindSafe for Health
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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