Enum collectd_plugin::Value [] [src]

pub enum Value {
    Counter(u64),
    Gauge(f64),
    Derive(i64),
    Absolute(u64),
}

The value that a plugin reports can be any one of the following types

Variants

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.

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 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 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.

Trait Implementations

impl Debug for Value
[src]

[src]

Formats the value using the given formatter. Read more

impl Clone for Value
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Copy for Value
[src]

impl PartialEq for Value
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

[src]

This method tests for !=.

impl Display for Value
[src]

[src]

Formats the value using the given formatter. Read more

impl Into<value_t> for Value
[src]

[src]

Performs the conversion.

Auto Trait Implementations

impl Send for Value

impl Sync for Value