A CollectD plugin to collect ElasticSearch stats and metrics. Uses CollectD's Python plugin.
- Place
elasticsearch_collectd.py
in/opt/collectd/lib/collectd/plugins/python
(assuming you have collectd installed to/opt/collectd
). - Configure the plugin (see below).
- Restart collectd.
- collectd 4.9+
- ElasticSearch 1.x or newer.
- See
elasticsearch.conf
- The plugin will automatically determine the version of ElasticSearch you are running.
- Per-index and cluster stats can be disabled if needed; they are enabled by default.
- Documents (total docs & deleted docs)
- Store size
- Indexing (total, time, total delete, delete time)
- Get (total, time, exists total, exists time, missing total, missing time)
- Search (total query, total time, total fetch, total fetch time)
- JVM uptime
- JVM memory (heap commited, heap Used, non heap commited, non heap used)
- JVM threads (count & peak)
- JVM GC (time & count)
- Transport stats (server open, RX count, RX size, TX count, TX size)
- HTTP stats (current open & total open)
- OS stats (CPU percent, file descriptors)
- Thread pool stats (generic, index, get, snapshot, merge, optimize, bulk, warmer, flush, search, refresh)
- Cache (field eviction, field size, filter evictions, filter size)
- JVM collectors
- FLush (total count, total time)
- Merges (current count, current docs, current size, merge total size, docs a time)
- Refresh (Total & Time)
- Transaction log (size, number of operations)
- Most of the common stats per index and per primary vs. total.
- Shard stats (active, initializing, relocating, unassigned, primaries)
- Nodes (total, data nodes)