Struct glean_core::metrics::MemoryDistributionMetric
source · [−]pub struct MemoryDistributionMetric { /* private fields */ }
Expand description
A memory distribution metric.
Memory distributions are used to accumulate and store memory sizes.
Implementations
sourceimpl MemoryDistributionMetric
impl MemoryDistributionMetric
sourcepub fn new(meta: CommonMetricData, memory_unit: MemoryUnit) -> Self
pub fn new(meta: CommonMetricData, memory_unit: MemoryUnit) -> Self
Creates a new memory distribution metric.
sourcepub fn accumulate(&self, glean: &Glean, sample: u64)
pub fn accumulate(&self, glean: &Glean, sample: u64)
Accumulates the provided sample in the metric.
Arguments
sample
- The sample to be recorded by the metric. The sample is assumed to be in the configured memory unit of the metric.
Notes
Values bigger than 1 Terabyte (240 bytes) are truncated
and an ErrorType::InvalidValue
error is recorded.
sourcepub fn accumulate_samples_signed(&self, glean: &Glean, samples: Vec<i64>)
pub fn accumulate_samples_signed(&self, glean: &Glean, samples: Vec<i64>)
Accumulates the provided signed samples in the metric.
This is required so that the platform-specific code can provide us with
64 bit signed integers if no u64
comparable type is available. This
will take care of filtering and reporting errors for any provided negative
sample.
Please note that this assumes that the provided samples are already in
the “unit” declared by the instance of the metric type (e.g. if the the
instance this method was called on is using MemoryUnit::Kilobyte
, then
samples
are assumed to be in that unit).
Arguments
samples
- The vector holding the samples to be recorded by the metric.
Notes
Discards any negative value in samples
and report an ErrorType::InvalidValue
for each of them.
Values bigger than 1 Terabyte (240 bytes) are truncated
and an ErrorType::InvalidValue
error is recorded.
sourcepub fn test_get_value(
&self,
glean: &Glean,
storage_name: &str
) -> Option<DistributionData>
pub fn test_get_value(
&self,
glean: &Glean,
storage_name: &str
) -> Option<DistributionData>
Test-only API (exported for FFI purposes).
Gets the currently stored value as an integer.
This doesn’t clear the stored value.
Trait Implementations
sourceimpl Debug for MemoryDistributionMetric
impl Debug for MemoryDistributionMetric
sourceimpl MetricType for MemoryDistributionMetric
impl MetricType for MemoryDistributionMetric
sourcefn meta(&self) -> &CommonMetricData
fn meta(&self) -> &CommonMetricData
Access the stored metadata
sourcefn meta_mut(&mut self) -> &mut CommonMetricData
fn meta_mut(&mut self) -> &mut CommonMetricData
Access the stored metadata mutable
sourcefn should_record(&self, glean: &Glean) -> bool
fn should_record(&self, glean: &Glean) -> bool
Whether this metric should currently be recorded Read more
Auto Trait Implementations
impl RefUnwindSafe for MemoryDistributionMetric
impl Send for MemoryDistributionMetric
impl Sync for MemoryDistributionMetric
impl Unpin for MemoryDistributionMetric
impl UnwindSafe for MemoryDistributionMetric
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more