Docs » Integrations Guide » Use the Smart Agent » Monitors » collectd/etcd

collectd/etcd 🔗

Monitor Type: collectd/etcd (Source)

Accepts Endpoints: Yes

Multiple Instances Allowed: Yes

Overview 🔗

Monitors an etcd key/value store using the collectd etcd Python plugin.

Requires etcd 2.0.8 or later.

Configuration 🔗

To activate this monitor in the Smart Agent, add the following to your agent config:

monitors:  # All monitor config goes under this key
 - type: collectd/etcd
   ...  # Additional config

For a list of monitor options that are common to all monitors, see Common Configuration.

Config option Required Type Description
pythonBinary no string Path to a python binary that should be used to execute the Python code. If not set, a built-in runtime will be used. Can include arguments to the binary as well.
host yes string
port yes integer
clusterName yes string An arbitrary name of the etcd cluster to make it easier to group together and identify instances.
sslKeyFile no string Client private key if using client certificate authentication.
sslCertificate no string Client public key if using client certificate authentication.
sslCACerts no string Certificate authority or host certificate to trust.
skipSSLValidation no bool If true, etcd's SSL certificate will not be verified. Enabling this option results in the sslCACerts option being ignored. (default: false)
enhancedMetrics no bool (default: false)

Metrics 🔗

These are the metrics available for this monitor. Metrics that are categorized as container/host (default) are in bold and italics in the list below.

  • counter.etcd.leader.counts.fail (counter)
    Total number of failed rpc requests to with a follower
  • counter.etcd.leader.counts.success (counter)
    Total number of successful rpc requests to with a follower
  • counter.etcd.self.recvappendreq.cnt (counter)
    Total number of append requests received by a member
  • counter.etcd.self.sendappendreq.cnt (counter)
    Total number of append requests sent by a member
  • counter.etcd.store.compareanddelete.fail (counter)
    Total number of failed compare-and-delete operations
  • counter.etcd.store.compareanddelete.success (counter)
    Total number of successful compare-and-delete operations
  • counter.etcd.store.compareandswap.fail (counter)
    Total number of failed compare-and-swap operations
  • counter.etcd.store.compareandswap.success (counter)
    Total number of successful compare-and-swap operations
  • counter.etcd.store.create.fail (counter)
    Total number of failed create operations
  • counter.etcd.store.create.success (counter)
    Total number of successful create operations
  • counter.etcd.store.delete.fail (counter)
    Total number of failed delete operations
  • counter.etcd.store.delete.success (counter)
    Total number of successful delete operations
  • counter.etcd.store.expire.count (counter)
    Total number of items expired due to TTL
  • counter.etcd.store.gets.fail (counter)
    Total number of failed get operations
  • counter.etcd.store.gets.success (counter)
    Total number of successful get operations
  • counter.etcd.store.sets.fail (counter)
    Total number of failed set operations
  • counter.etcd.store.sets.success (counter)
    Total number of successful set operations
  • counter.etcd.store.update.fail (counter)
    Total number of failed update operations
  • counter.etcd.store.update.success (counter)
    Total number of successful update operations
  • gauge.etcd.leader.latency.average (gauge)
    Average latency of a follower with respect to the leader
  • gauge.etcd.leader.latency.current (gauge)
    Current latency of a follower with respect to the leader
  • gauge.etcd.leader.latency.max (gauge)
    Max latency of a follower with respect to the leader
  • gauge.etcd.leader.latency.min (gauge)
    Min latency of a follower with respect to the leader
  • gauge.etcd.leader.latency.stddev (gauge)
    Std dev latency of a follower with respect to the leader
  • gauge.etcd.self.recvbandwidth.rate (gauge)
    Bandwidth rate of a follower
  • gauge.etcd.self.recvpkg.rate (gauge)
    Rate at which a follower receives packages
  • gauge.etcd.self.sendbandwidth.rate (gauge)
    Bandwidth rate of a leader
  • gauge.etcd.self.sendpkg.rate (gauge)
    Rate at which a leader sends packages
  • gauge.etcd.store.watchers (gauge)
    Number of watchers

Non-default metrics (version 4.7.0+) 🔗

To emit metrics that are not default, you can add those metrics in the generic monitor-level extraMetrics config option. Metrics that are derived from specific configuration options that do not appear in the above list of metrics do not need to be added to extraMetrics.

To see a list of metrics that will be emitted you can run agent-status monitors after configuring this monitor in a running agent instance.