Skip to main content

ProcessRssGrowthRule

Struct ProcessRssGrowthRule 

Source
pub struct ProcessRssGrowthRule { /* private fields */ }
Expand description

A process whose resident set has been rising across the window (§11.2).

§What this rule does not say

It reports growth, with the samples and the span it was measured over, and nothing else. §11.3 forbids concluding why memory is growing from a size series: a cache filling to its configured bound, a JIT warming up, and a genuine bug all look identical here, and only the user knows which is expected.

Evidence comes from the retained contributor lists (§2.2), which are bounded to the top K per sample. A process that dropped out of the top K leaves a gap rather than a zero, and gaps do not count towards the minimum sample requirement.

Implementations§

Source§

impl ProcessRssGrowthRule

Source

pub const fn new(thresholds: Thresholds) -> Self

Builds the rule from sanitized thresholds.

Trait Implementations§

Source§

impl Clone for ProcessRssGrowthRule

Source§

fn clone(&self) -> ProcessRssGrowthRule

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for ProcessRssGrowthRule

Source§

impl Debug for ProcessRssGrowthRule

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl DiagnosticRule for ProcessRssGrowthRule

Source§

fn id(&self) -> &'static str

The stable identifier used in logs, exports, and tests.
Source§

fn evaluate( &self, current: &SystemSnapshot, history: &HistoryWindow<'_>, ) -> Option<Finding>

Evaluates the rule, returning a finding only when the rule actually fires. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.