sensu-plugins-network-interface 0.1.5 → 0.1.6

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: 7f94718b438b707a03a7da135019a1bbd4fd2ecc
4
- data.tar.gz: df97414807339c594d5e7c22ee39b5de160876fb
3
+ metadata.gz: 3543ad3e7d3e5c7e8968474424c48140ca59d616
4
+ data.tar.gz: 65afcc6aeb8ced2ca322423121bc33e8862623ac
5
5
  SHA512:
6
- metadata.gz: 9052437bd91c72bb2aa7ab9f7a47d072fa84b9c8b4646b964138f97cf4b72501b91fcd33e04ef07202b14bbe7624625f0538fa324c36ad2a4746fb9a8170b128
7
- data.tar.gz: 45ac7497bc63c04450ec97271ec1c24ad61f43632bc6afce88c2a4ab388dbf76607024509dc8a337cc8d1c8ccdbaa2043d80f39e7a77b39edced31d0e689218a
6
+ metadata.gz: caa34f80eacbabde310d4a89f4c6f8e6bc4067d631cd7b79d6eaae1fe37017aeed2bbb13fc7d7388aafbf49384e8218ecf2e4d7b3be137b2ec3c727b7a2f77dc
7
+ data.tar.gz: 3816f886d3c536314c3f15b04813fb696ccc8c5c54cc7ae1b661c91ce456a5e3367fb07e5782e71d0afb1f5fff0ae639e58df875d8ecb8f740ca2f639b4fd4b7
data/CHANGELOG.md CHANGED
@@ -5,13 +5,18 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
5
5
 
6
6
  ## Unreleased
7
7
 
8
+ ## [0.1.6] - 2015-12-29
9
+ ### Added
10
+ - No longer send UNKNOWN events when metrics cannot be computed for specific interface (e.g. speed & bridge interfaces)
11
+ - Filter out dummy interfaces as well as loopback ones.
12
+
8
13
  ## [0.1.5] - 2015-12-29
9
14
  ### Added
10
15
  - Fixed typo
11
16
 
12
17
  ## [0.1.4] - 2015-12-29
13
18
  ### Added
14
- - Added ifcfg-<interface> support
19
+ - Added ifcfg support (supplement optional JSON configuration file)
15
20
 
16
21
  ## [0.1.3] - 2015-12-28
17
22
  ### Added
@@ -156,7 +156,7 @@ class CheckNetworkInterface < Sensu::Plugin::Check::CLI
156
156
  end
157
157
 
158
158
  def find_interfaces()
159
- Dir["/sys/class/net/*"].map { |i| File.basename(i) }.reject { |i| i =~ /^lo/ }
159
+ Dir["/sys/class/net/*"].select { |i| File.symlink?(i) }.map { |i| File.basename(i) }.reject { |i| i =~ /^lo/ or i =~ /^dummy/ }
160
160
  end
161
161
 
162
162
  def get_info(interface)
@@ -165,20 +165,24 @@ class CheckNetworkInterface < Sensu::Plugin::Check::CLI
165
165
  # https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
166
166
  ["tx_queue_len", "speed", "mtu", "duplex", "carrier", "operstate"].each do |metric|
167
167
  if File.exists?("/sys/class/net/#{interface}/#{metric}")
168
- value = File.read("/sys/class/net/#{interface}/#{metric}").chomp
168
+ begin
169
+ value = File.read("/sys/class/net/#{interface}/#{metric}").chomp
169
170
 
170
- case metric
171
- when "speed", "mtu"
172
- info[metric] = value.to_i
171
+ case metric
172
+ when "speed", "mtu"
173
+ info[metric] = value.to_i
173
174
 
174
- when "tx_queue_len"
175
- info['txqueuelen'] = value.to_i
175
+ when "tx_queue_len"
176
+ info['txqueuelen'] = value.to_i
176
177
 
177
- when "carrier"
178
- info[metric] = value.to_i > 0 ? "up" : "down"
178
+ when "carrier"
179
+ info[metric] = value.to_i > 0 ? "up" : "down"
179
180
 
180
- else
181
- info[metric] = value
181
+ else
182
+ info[metric] = value
183
+ end
184
+ rescue
185
+ info[metric] = nil
182
186
  end
183
187
  else
184
188
  info[metric] = nil
@@ -259,9 +263,9 @@ class CheckNetworkInterface < Sensu::Plugin::Check::CLI
259
263
  send_ok(check_name, "#{metric} #{interface}")
260
264
  end
261
265
  end
262
- else
263
- send_unknown(check_name, "Failed to look up #{metric} on #{interface}")
264
- problems += 1
266
+ #else
267
+ # send_unknown(check_name, "Failed to look up #{metric} on #{interface}")
268
+ # problems += 1
265
269
  end
266
270
  end
267
271
  end
@@ -2,7 +2,7 @@ module SensuPluginsNetworkInterface
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 1
5
- PATCH = 5
5
+ PATCH = 6
6
6
 
7
7
  VER_STRING = [MAJOR, MINOR, PATCH].compact.join('.')
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu-plugins-network-interface
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matteo Cerutti