sensu-plugins-kafka 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5c93da52d25828077e631c7df8689db514736130
4
- data.tar.gz: 2e25ea38deb92b0e572572d46574d801115b126e
3
+ metadata.gz: 814e07a1f689f1395bbfec4be50c21d21dc8fdd9
4
+ data.tar.gz: 67c167b2a761d5ec26328889d3f7265ca5eb04c1
5
5
  SHA512:
6
- metadata.gz: 4d6e510d8279861a0d4caa747ea6c7c831fdf46616b3f4eddc46e379d1a6a23f54f0139c3f086a6efea7188aaa1051a73e156e594310f9c33141837db90276c3
7
- data.tar.gz: 5cc8c7555331c040b82462a2dfff5ee0e93bdcbc95a6a5693b963fca9c453c9b928a06c30268c56997e5ba6d41ec2cf6d1ed78aeeae0f04e6254c3149b90fc11
6
+ metadata.gz: e48d74364f25dd211615a314a2c1190b757229d80417943364a40022fb865dd0c677718f5648af449eb0b05f0df3531b94efd7c6499e810894df10efd2422f47
7
+ data.tar.gz: 7ca2f1ff7b776619702f2e5728fd3a34a0aa018df8ecd098a82fd124accea6cba11bd9bee42a3f38e0f460c5e3e3f10c89e71da517574f2add2d2940c1e8822c
data/CHANGELOG.md CHANGED
@@ -10,6 +10,11 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
10
10
  ### Fixed
11
11
  ### Changed
12
12
 
13
+ ## [0.11.0] - 2017-02-17
14
+
15
+ ### Added
16
+ - check-consumer-lag: threshold per partition
17
+
13
18
  ## [0.10.0] - 2017-02-16
14
19
 
15
20
  ### Added
@@ -132,6 +132,7 @@ class ConsumerLagCheck < Sensu::Plugin::Check::CLI
132
132
  min_lag = lags.map(&:values).flatten.min
133
133
  min_topics = lags.select { |a| a.key(min_lag) }.map(&:keys).flatten
134
134
 
135
+ # Global
135
136
  [:over, :under].each do |over_or_under|
136
137
  [:critical, :warning].each do |severity|
137
138
  threshold = config[:"#{severity}_#{over_or_under}"]
@@ -152,6 +153,32 @@ class ConsumerLagCheck < Sensu::Plugin::Check::CLI
152
153
  end
153
154
  end
154
155
 
156
+ # Per partition
157
+ [:over, :under].each do |over_or_under|
158
+ [:critical, :warning].each do |severity|
159
+ threshold = config[:"#{severity}_#{over_or_under}"]
160
+
161
+ next unless threshold
162
+
163
+ consumers.each do |k, v|
164
+ v.each do |partition|
165
+ case over_or_under
166
+ when :over
167
+ if partition[:lag].to_f > (threshold.to_f * 1.33 / v.size)
168
+ msg = "Topics `#{k}` partition #{partition[:partition]} lag: #{partition[:lag]} (>= #{threshold.to_f * 1.33 / v.size})"
169
+ send severity, msg
170
+ end
171
+ when :under
172
+ if min_lag < (threshold.to_f / v.size)
173
+ msg = "Topics `#{k}` partition #{partition[:partition]} lag: #{partition[:lag]} (<= #{threshold.to_f / v.size})"
174
+ send severity, msg
175
+ end
176
+ end
177
+ end
178
+ end
179
+ end
180
+ end
181
+
155
182
  ok "Group `#{config[:group]}`'s lag is ok (#{min_lag}/#{max_lag})"
156
183
 
157
184
  rescue => e
@@ -5,7 +5,7 @@ module SensuPluginsKafka
5
5
  # This defines the version of the gem
6
6
  module Version
7
7
  MAJOR = 0
8
- MINOR = 10
8
+ MINOR = 11
9
9
  PATCH = 0
10
10
 
11
11
  VER_STRING = [MAJOR, MINOR, PATCH].compact.join('.')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu-plugins-kafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sensu-Plugins and contributors
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - certs/sensu-plugins.pem
12
- date: 2017-02-16 00:00:00.000000000 Z
12
+ date: 2017-02-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: poseidon