Struct glean_core::LabeledMetric
source · pub struct LabeledMetric<T> { /* private fields */ }
Expand description
A labeled metric.
Labeled metrics allow to record multiple sub-metrics of the same type under different string labels.
Implementations§
source§impl<T> LabeledMetric<T>where
T: AllowLabeled + Clone,
impl<T> LabeledMetric<T>where
T: AllowLabeled + Clone,
sourcepub fn new(
meta: LabeledMetricData,
labels: Option<Vec<Cow<'static, str>>>
) -> LabeledMetric<T>
pub fn new( meta: LabeledMetricData, labels: Option<Vec<Cow<'static, str>>> ) -> LabeledMetric<T>
Creates a new labeled metric from the given metric instance and optional list of labels.
See get
for information on how static or dynamic labels are handled.
sourcepub fn get<S: AsRef<str>>(&self, label: S) -> Arc<T>
pub fn get<S: AsRef<str>>(&self, label: S) -> Arc<T>
Gets a specific metric for a given label.
If a set of acceptable labels were specified in the metrics.yaml
file,
and the given label is not in the set, it will be recorded under the special OTHER_LABEL
label.
If a set of acceptable labels was not specified in the metrics.yaml
file,
only the first 16 unique labels will be used.
After that, any additional labels will be recorded under the special OTHER_LABEL
label.
Labels must be snake_case
and less than 30 characters.
If an invalid label is used, the metric will be recorded in the special OTHER_LABEL
label.
Trait Implementations§
Auto Trait Implementations§
impl<T> RefUnwindSafe for LabeledMetric<T>where
T: RefUnwindSafe,
impl<T> Send for LabeledMetric<T>
impl<T> Sync for LabeledMetric<T>
impl<T> Unpin for LabeledMetric<T>where
T: Unpin,
impl<T> UnwindSafe for LabeledMetric<T>where
T: UnwindSafe,
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, 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