https://github.com/github/collectd-elasticsearch
CollectD ElasticSearch plugin
https://github.com/github/collectd-elasticsearch
Last synced: 5 months ago
JSON representation
CollectD ElasticSearch plugin
- Host: GitHub
- URL: https://github.com/github/collectd-elasticsearch
- Owner: github
- License: apache-2.0
- Archived: true
- Fork: true (signalfx/collectd-elasticsearch)
- Created: 2018-02-20T20:08:53.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-02-20T22:47:20.000Z (about 8 years ago)
- Last Synced: 2024-09-29T00:21:22.747Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 224 KB
- Stars: 7
- Watchers: 13
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Elasticsearch CollectD plugin
A [CollectD](http://collectd.org) plugin to collect [Elasticsearch](https://github.com/elastic/elasticsearch) stats and metrics. Uses CollectD's [Python plugin](http://collectd.org/documentation/manpages/collectd-python.5.shtml).
## Installation
1. Place the `elasticsearch_collectd.py` file into a directory on the host. The recommended directory is `/usr/share/collectd/collectd-elasticsearch`.
1. Configure the plugin (see below).
1. Restart collectd.
### Requirements
* collectd 4.9+
* Elasticsearch 1.x or newer.
* python v2.6 or newer (https support requires v2.7.9)
## Configuration
* See [`elasticsearch.conf`](https://github.com/signalfx/integrations/blob/master/collectd-elasticsearch/20-elasticsearch.conf)
* The plugin will automatically determine the version of Elasticsearch you are running as well as the cluster name.
* Per-index and cluster stats can be disabled if needed; they are enabled by default. These settings are collected only on master eligible nodes.
* If you are running the Elasticsearch plugin via a collectd deployment within a container, please configure the Host and Port values inside of the 20-elasticsearch.conf file that correspond to the desired Elasticsearch instance.
ex:
```
Host "XXX.XXX.XXX.XXX"
Port "XXXX"
```
## Metrics
### Node stats
* 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 committed, heap Used, non heap committed, 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)
### Index stats
* Transaction log (size, number of operations)
* Most of the common stats per index and per primary vs. total.
### Cluster stats
* Shard stats (active, initializing, relocating, unassigned, primaries)
* Nodes (total, data nodes)