sensu-plugins-elasticsearch 1.3.1 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -1
- data/bin/check-es-shard-allocation-status.rb +30 -2
- data/lib/sensu-plugins-elasticsearch/version.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b4b7956d75fed10e2ec31b024102d037cb8e43f
|
4
|
+
data.tar.gz: 11881f4536d042ec379c0fb92f641cf370628da7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 91e3c7d70b0794c9cb27ec934ccaf8e9428ef816f3deb790acb148f30f0c7da0ac0f2f2f410d23ffbc7f15eebf0249f1130ae67329663a2172d6cf16c2ae9f74
|
7
|
+
data.tar.gz: b961e207fcb45f66ac6bbceb5a29054c988c620b9d8e9939dae7a63348fe31038545170a0e2d68e24fa19e805eaf9651781f272b0fbb11d37e77929eb5d76db0
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,16 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
4
4
|
This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
|
+
## [1.4.0] - 2017-07-04
|
8
|
+
### Added
|
9
|
+
- added ruby 2.4 testing (@majormoses)
|
10
|
+
- check-es-shard-allocation-status.rb: HTTP Basic Auth support added (@cihangirbesiktas)
|
11
|
+
- check-es-shard-allocation-status.rb: timeout option for rest calls (@cihangirbesiktas)
|
12
|
+
|
13
|
+
|
14
|
+
### Fixed
|
15
|
+
- PR template spell "compatibility" correctly. (@majormoses)
|
16
|
+
|
7
17
|
## [1.3.1] - 2017-05-22
|
8
18
|
### Fixed
|
9
19
|
- Conversion of previous_months option to Seconds (@guptaishabh)
|
@@ -149,7 +159,8 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
|
|
149
159
|
### Added
|
150
160
|
- initial release
|
151
161
|
|
152
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.
|
162
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.4.0...HEAD
|
163
|
+
[1.4.0]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.3.1...1.4.0
|
153
164
|
[1.3.1]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.3.0...1.3.1
|
154
165
|
[1.3.0]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.2.0...1.3.0
|
155
166
|
[1.2.0]: https://github.com/sensu-plugins/sensu-plugins-elasticsearch/compare/1.1.3...1.2.0
|
@@ -30,6 +30,7 @@
|
|
30
30
|
require 'sensu-plugin/check/cli'
|
31
31
|
require 'rest-client'
|
32
32
|
require 'json'
|
33
|
+
require 'base64'
|
33
34
|
|
34
35
|
#
|
35
36
|
# == Elastic Search Shard Allocation Status
|
@@ -58,13 +59,40 @@ class ESShardAllocationStatus < Sensu::Plugin::Check::CLI
|
|
58
59
|
long: '--allow-non-master',
|
59
60
|
default: false
|
60
61
|
|
62
|
+
option :timeout,
|
63
|
+
description: 'Sets the connection timeout for REST client',
|
64
|
+
short: '-t SECS',
|
65
|
+
long: '--timeout SECS',
|
66
|
+
proc: proc(&:to_i),
|
67
|
+
default: 45
|
68
|
+
|
69
|
+
option :user,
|
70
|
+
description: 'Elasticsearch User',
|
71
|
+
short: '-u USER',
|
72
|
+
long: '--user USER'
|
73
|
+
|
74
|
+
option :password,
|
75
|
+
description: 'Elasticsearch Password',
|
76
|
+
short: '-P PASS',
|
77
|
+
long: '--password PASS'
|
78
|
+
|
61
79
|
def get_es_resource(resource)
|
62
|
-
|
80
|
+
headers = {}
|
81
|
+
if config[:user] && config[:password]
|
82
|
+
auth = 'Basic ' + Base64.strict_encode64("#{config[:user]}:#{config[:password]}").chomp
|
83
|
+
headers = { 'Authorization' => auth }
|
84
|
+
end
|
85
|
+
|
86
|
+
r = RestClient::Resource.new("#{config[:scheme]}://#{config[:server]}:#{config[:port]}#{resource}", timeout: config[:timeout], headers: headers)
|
63
87
|
JSON.parse(r.get)
|
64
88
|
rescue Errno::ECONNREFUSED
|
65
89
|
warning 'Connection refused'
|
66
90
|
rescue RestClient::RequestTimeout
|
67
|
-
|
91
|
+
critical 'Connection timed out'
|
92
|
+
rescue RestClient::ServiceUnavailable
|
93
|
+
critical 'Service is unavailable'
|
94
|
+
rescue Errno::ECONNRESET
|
95
|
+
critical 'Connection reset by peer'
|
68
96
|
end
|
69
97
|
|
70
98
|
def master?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensu-plugins-elasticsearch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sensu Plugins and contributors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-07-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|