sensu-plugins/sensu-plugins-elasticsearch

View on GitHub
README.md

Summary

Maintainability
Test Coverage
## Sensu-Plugins-elasticsearch

[![Build Status](https://travis-ci.org/sensu-plugins/sensu-plugins-elasticsearch.svg?branch=master)](https://travis-ci.org/sensu-plugins/sensu-plugins-elasticsearch)
[![Gem Version](https://badge.fury.io/rb/sensu-plugins-elasticsearch.svg)](http://badge.fury.io/rb/sensu-plugins-elasticsearch)
[![Code Climate](https://codeclimate.com/github/sensu-plugins/sensu-plugins-elasticsearch/badges/gpa.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-elasticsearch)
[![Test Coverage](https://codeclimate.com/github/sensu-plugins/sensu-plugins-elasticsearch/badges/coverage.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-elasticsearch)
[![Dependency Status](https://gemnasium.com/sensu-plugins/sensu-plugins-elasticsearch.svg)](https://gemnasium.com/sensu-plugins/sensu-plugins-elasticsearch)
[![Sensu Bonsai Asset](https://img.shields.io/badge/Bonsai-Download%20Me-brightgreen.svg?colorB=89C967&logo=sensu)](https://bonsai.sensu.io/assets/sensu-plugins/sensu-plugins-elasticsearch)

## Sensu Asset  
  The Sensu assets packaged from this repository are built against the Sensu ruby runtime environment. When using these assets as part of a Sensu Go resource (check, mutator or handler), make sure you include the corresponding Sensu ruby runtime asset in the list of assets needed by the resource.  The current ruby-runtime assets can be found [here](https://bonsai.sensu.io/assets/sensu/sensu-ruby-runtime) in the [Bonsai Asset Index](bonsai.sensu.io).

## Functionality

## Files
 * /bin/check-es-circuit-breakers.rb
 * /bin/check-es-cluster-health.rb
 * /bin/check-es-cluster-status.rb
 * /bin/check-es-file-descriptors.rb
 * /bin/check-es-heap.rb
 * /bin/check-es-indices-field-count.rb
 * /bin/check-es-indexes.rb
 * /bin/check-es-indicies-sizes.rb
 * /bin/check-es-node-status.rb
 * /bin/check-es-query-count.rb
 * /bin/check-es-query-exists.rb
 * /bin/check-es-query-ratio.rb
 * /bin/check-es-shard-allocation-status.rb
 * /bin/handler-es-delete-indices.rb
 * /bin/metrics-es-cluster.rb
 * /bin/metrics-es-node.rb
 * /bin/metrics-es-node-graphite.rb

## Usage

## Installation

[Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)

## Notes
When using `handler-es-delete-indices.rb` with Sensu Go, you will need to use the event mapping commandline option, see `handler-es-delete-indices.rb --help` for details. And please read [the sensu-plugin README](https://github.com/sensu-plugins/sensu-plugin#sensu-go-enablement) for more information on the event mapping functionality.

## Testing

This repository uses the [Kitchen](https://kitchen.ci/) suite for it's tests.

Note: The test suite uses an elasticsearch instance in order to have passing tests. Execute the following command to create a mock elasticsearch 6 instance:

```bash
docker run -d --name sensu-elasticsearch-6 docker.elastic.co/elasticsearch/elasticsearch:6.2.2
```

Running the tests:

```bash
bundle install --path vendor/bundle
bundle exec kitchen test
```

You can find sample output for all tests running successfully in [this gist](https://gist.github.com/alexandrustaetu/d19feea1296d2ce7e367542265252d7a).