sensu-plugins/sensu-plugins-zookeeper

View on GitHub
README.md

Summary

Maintainability
Test Coverage
## Sensu-Plugins-Zookeeper

[![Build Status](https://travis-ci.org/sensu-plugins/sensu-plugins-zookeeper.svg?branch=master)](https://travis-ci.org/sensu-plugins/sensu-plugins-zookeeper)
[![Gem Version](https://badge.fury.io/rb/sensu-plugins-zookeeper.svg)](http://badge.fury.io/rb/sensu-plugins-zookeeper)
[![Code Climate](https://codeclimate.com/github/sensu-plugins/sensu-plugins-zookeeper/badges/gpa.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-zookeeper)
[![Test Coverage](https://codeclimate.com/github/sensu-plugins/sensu-plugins-zookeeper/badges/coverage.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-zookeeper)
[![Dependency Status](https://gemnasium.com/sensu-plugins/sensu-plugins-zookeeper.svg)](https://gemnasium.com/sensu-plugins/sensu-plugins-zookeeper)
[![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-zookeeper)

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

* check-znode.rb - Check if zookeeper znode exists and optionally match its contents
* check-zookeeper-file-descriptors.rb - Check if Zookeeper has normal opened file descriptors rate
* check-zookeeper-latency.rb - Check average latency on Zookeeper node
* check-zookeeper-reqs.rb - Check if Zookeeper node has reliable number of outstanding requests
* check-zookeeper-ruok.rb - Check if Zookeeper node responds to 'ruok' query succesfully
* check-zookeeper-mode.rb - Check if Zookeeper node is in standalone or cluster(leader or follower) mode
* check-zookeeper-cluster.rb - Check if a exhibitor managed Zookeeper cluster is OK.
* check-netty-zookeeper-cluster.rb - Check if a zookeeper 3.5 cluster is OK.
* metrics-zookeeper.rb - Gather metrics from Zookeeper
* metrics-zookeeper-cluster.rb - Gather metrics from An Exhibitor run Zookeeper cluster

## Usage
```
$ check-znode.rb --help
Usage: ./bin/check-znode.rb (options)
    -v, --check_value REGEX          Optionally check the znode value against a regex
    -s, --servers zk-address         zk address to connect to (required)
    -z, --znode ZNODE                znode to check (required)
```

```
$ check-zookeeper-file-descriptors.rb --help
Usage: ./bin/check-zookeeper-file-descriptors.rb (options)
    -d DESCRIPTORS,                  Critical threshold for Zookeeper open files descriptors
        --file-descriptors
    -p, --port PORT                  Zookeeper port to connect to.
    -s, --server HOSTNAME            Zookeeper hostname to connect to.
    -t, --timeout SECS               How long to wait for a reply in seconds.

```

```
$ check-zookeeper-cluster.rb --help
Usage: ./bin/check-zookeeper-cluster.rb (options)
    -c, --count count                Zookeeper cluster node count
    -e, --exhibitor status end point exhibitor end node for status checks
    -l, --latency TICKS              Critical threshold for Zookeeper average latency
    -t, --timeout SECS               How long to wait for a reply in seconds.
    -p, --port port                  Zookeeper nodes' listen port

```

```
$ check-netty-zookeeper-cluster.rb --help
Usage: ./bin/check-netty-zookeeper-cluster.rb (options)
    -c, --count count                Zookeeper cluster follower count
    -l, --latency TICKS              Critical threshold for Zookeeper average latency
    -p, --port port                  Zookeeper nodes' listen port

```

```
$ metrics-zookeeper.rb --help
Usage: ./bin/metrics-zookeeper.rb (options)
        --host HOST                  ZooKeeper host
        --port PORT                  ZooKeeper port
        --scheme SCHEME              Metric naming scheme, text to prepend to metrics

```

```
$ metrics-zookeeper-cluster.rb --help
Usage: ./bin/metrics-zookeeper-cluster.rb (options)
    -e, --exhibitor status end point exhibitor end node for status checks
        --scheme SCHEME              Metric naming scheme, text to prepend to metrics
    -p, --port port                  Zookeeper nodes' listen port

```

```
$ check-zookeeper-ruok.rb --help
Usage: ./bin/check-zookeeper-ruok.rb (options)
    -p, --port PORT                  Zookeeper port to connect to.
    -s, --server HOSTNAME            Zookeeper hostname to connect to.
    -t, --timeout SECS               How long to wait for a reply in seconds.
```

```
$ check-zookeeper-reqs.rb --help
Usage: ./bin/check-zookeeper-reqs.rb (options)
    -r, --reqs REQS                  Critical threshold for Zookeeper outstanding requests
    -p, --port PORT                  Zookeeper port to connect to.
    -s, --server HOSTNAME            Zookeeper hostname to connect to.
    -t, --timeout SECS               How long to wait for a reply in seconds.
```

```
$ check-zookeeper-mode.rb --help 
Usage check-zookeeper-mode.rb (options)
    -m, --mode MODE                  Space separated expected modes. (required)
    -p, --port PORT                  Zookeeper port to connect to.
    -s, --server HOSTNAME            Zookeeper hostname to connect to.
    -t, --timeout SECS               How long to wait for a reply in seconds.
```

```
$ check-zookeeper-latency.rb --help 
Usage: ./bin/check-zookeeper-latency.rb (options)
    -l, --latency TICKS              Critical threshold for Zookeeper average latency
    -p, --port PORT                  Zookeeper port to connect to.
    -s, --server HOSTNAME            Zookeeper hostname to connect to.
    -t, --timeout SECS               How long to wait for a reply in seconds.

```

## Installation

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

## Notes