[−][src]Enum collectd_plugin::Value
The value that a plugin reports can be any one of the following types
Variants
Counter(u64)A COUNTER value is for continuous incrementing counters like the ifInOctets counter in a router. The COUNTER data source assumes that the observed value never decreases, except when it overflows. The update function takes the overflow into account. If a counter is reset to zero, for example because an application was restarted, the wrap-around calculation may result in a huge rate. Thus setting a reasonable maximum value is essential when using COUNTER data sources. Because of this, COUNTER data sources are only recommended for counters that wrap-around often, for example 32 bit octet counters of a busy switch port.
Gauge(f64)A GAUGE value is simply stored as-is. This is the right choice for values which may increase as well as decrease, such as temperatures or the amount of memory used
Derive(i64)DERIVE will store the derivative of the observed values source. If the data type has a minimum of zero, negative rates will be discarded. Using DERIVE is a good idea for measuring cgroup's cpuacct.usage as that stores the total number of CPU nanoseconds by all tasks in the cgroup; the change (derivative) in CPU nanoseconds is more interesting than the current value.
Absolute(u64)ABSOLUTE is for counters which get reset upon reading. This is used for fast counters which tend to overflow. So instead of reading them normally you reset them after every read to make sure you have a maximum time available before the next overflow.
Methods
impl Value[src]
pub fn is_nan(&self) -> bool[src]
Returns if an underlying value is nan
assert_eq!(true, Value::Gauge(::std::f64::NAN).is_nan()); assert_eq!(false, Value::Gauge(0.0).is_nan()); assert_eq!(false, Value::Derive(0).is_nan());
Trait Implementations
impl Clone for Value[src]
fn clone(&self) -> Value[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl Into<value_u> for Value[src]
impl Copy for Value[src]
impl PartialEq<Value> for Value[src]
impl Debug for Value[src]
impl Display for Value[src]
impl Serialize for Value[src]
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized, [src]
T: Display + ?Sized,
impl<T> From for T[src]
impl<T, U> TryFrom for T where
U: Into<T>, [src]
U: Into<T>,
type Error = !
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,