Struct glean_core::metrics::CustomDistributionMetric
source · pub struct CustomDistributionMetric { /* private fields */ }
Expand description
A custom distribution metric.
Implementations§
source§impl CustomDistributionMetric
impl CustomDistributionMetric
sourcepub fn new(
meta: CommonMetricData,
range_min: i64,
range_max: i64,
bucket_count: i64,
histogram_type: HistogramType
) -> Self
pub fn new( meta: CommonMetricData, range_min: i64, range_max: i64, bucket_count: i64, histogram_type: HistogramType ) -> Self
Creates a new memory distribution metric.
sourcepub fn accumulate_samples(&self, samples: Vec<i64>)
pub fn accumulate_samples(&self, 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.
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.
sourcepub fn accumulate_single_sample(&self, sample: i64)
pub fn accumulate_single_sample(&self, sample: i64)
Accumulates precisely one signed sample and appends it to the metric.
Signed is required so that the platform-specific code can provide us with a
64 bit signed integer if no u64
comparable type is available. This
will take care of filtering and reporting errors.
Arguments
sample
- The singular sample to be recorded by the metric.
Notes
Discards any negative value of sample
and reports an
ErrorType::InvalidValue
.
sourcepub fn test_get_value(
&self,
ping_name: Option<String>
) -> Option<DistributionData>
pub fn test_get_value( &self, ping_name: Option<String> ) -> Option<DistributionData>
Test-only API (exported for FFI purposes).
Gets the currently stored value as an integer.
This doesn’t clear the stored value.
Arguments
ping_name
- the optional name of the ping to retrieve the metric for. Defaults to the first value insend_in_pings
.
Returns
The stored value or None
if nothing stored.
sourcepub fn test_get_num_recorded_errors(&self, error: ErrorType) -> i32
pub fn test_get_num_recorded_errors(&self, error: ErrorType) -> i32
sourcepub fn start_buffer(&self) -> LocalCustomDistribution<'_>
pub fn start_buffer(&self) -> LocalCustomDistribution<'_>
Experimental: Start a new histogram buffer associated with this custom distribution metric.
A histogram buffer accumulates in-memory. Data is recorded into the metric on drop.
Trait Implementations§
source§impl Clone for CustomDistributionMetric
impl Clone for CustomDistributionMetric
source§fn clone(&self) -> CustomDistributionMetric
fn clone(&self) -> CustomDistributionMetric
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CustomDistributionMetric
impl Debug for CustomDistributionMetric
source§impl MetricType for CustomDistributionMetric
impl MetricType for CustomDistributionMetric
source§fn with_dynamic_label(&self, label: String) -> Self
fn with_dynamic_label(&self, label: String) -> Self
Auto Trait Implementations§
impl RefUnwindSafe for CustomDistributionMetric
impl Send for CustomDistributionMetric
impl Sync for CustomDistributionMetric
impl Unpin for CustomDistributionMetric
impl UnwindSafe for CustomDistributionMetric
Blanket Implementations§
source§impl<T> AllowLabeled for Twhere
T: MetricType + Sealed,
impl<T> AllowLabeled for Twhere
T: MetricType + Sealed,
source§fn new_labeled(meta: LabeledMetricData) -> T
fn new_labeled(meta: LabeledMetricData) -> T
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, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
Read more