[][src]Enum metrics::Unit

pub enum Unit {
    Count,
    Percent,
    Seconds,
    Milliseconds,
    Microseconds,
    Nanoseconds,
    Tebibytes,
    Gigibytes,
    Mebibytes,
    Kibibytes,
    Bytes,
    TerabitsPerSecond,
    GigabitsPerSecond,
    MegabitsPerSecond,
    KilobitsPerSecond,
    BitsPerSecond,
    CountPerSecond,
}

Units for a given metric.

While metrics do not necessarily need to be tied to a particular unit to be recorded, some downstream systems natively support defining units and so they can be specified during registration.

Variants

Count

Count.

Percent

Percentage.

Seconds

Seconds.

One second is equal to 1000 milliseconds.

Milliseconds

Milliseconds.

One millisecond is equal to 1000 microseconds.

Microseconds

Microseconds.

One microsecond is equal to 1000 nanoseconds.

Nanoseconds

Nanoseconds.

Tebibytes

Tebibytes.

One tebibyte is equal to 1024 gigibytes.

Gigibytes

Gigibytes.

One gigibyte is equal to 1024 mebibytes.

Mebibytes

Mebibytes.

One mebibyte is equal to 1024 kibibytes.

Kibibytes

Kibibytes.

One kibibyte is equal to 1024 bytes.

Bytes

Bytes.

TerabitsPerSecond

Terabits per second.

One terabit is equal to 1000 gigabits.

GigabitsPerSecond

Gigabits per second.

One gigabit is equal to 1000 megabits.

MegabitsPerSecond

Megabits per second.

One megabit is equal to 1000 kilobits.

KilobitsPerSecond

Kilobits per second.

One kilobit is equal to 1000 bits.

BitsPerSecond

Bits per second.

CountPerSecond

Count per second.

Implementations

impl Unit[src]

pub fn as_str(&self) -> &str[src]

Gets the string form of this Unit.

pub fn as_canonical_label(&self) -> &str[src]

Gets the canonical string label for the given unit.

For example, the canonical label for Seconds would be s, while for Nanoseconds, it would be ns.

Not all units have a meaningful display label and so some may be empty.

pub fn from_str(s: &str) -> Option<Unit>[src]

Converts the string representation of a unit back into Unit if possible.

The value passed here should match the output of Unit::as_str.

pub fn is_time_based(&self) -> bool[src]

Whether or not this unit relates to the measurement of time.

pub fn is_data_based(&self) -> bool[src]

Whether or not this unit relates to the measurement of data.

pub fn is_data_rate_based(&self) -> bool[src]

Whether or not this unit relates to the measurement of data rates.

Trait Implementations

impl Clone for Unit[src]

impl Debug for Unit[src]

impl PartialEq<Unit> for Unit[src]

impl StructuralPartialEq for Unit[src]

Auto Trait Implementations

impl RefUnwindSafe for Unit

impl Send for Unit

impl Sync for Unit

impl Unpin for Unit

impl UnwindSafe for Unit

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.