sensu-plugins-disk-checks 2.5.1 → 3.0.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 +4 -4
- data/CHANGELOG.md +15 -3
- data/bin/check-disk-usage.rb +3 -3
- data/bin/check-smart-status.rb +3 -2
- data/bin/check-smart-tests.rb +3 -2
- data/bin/check-smart.rb +8 -7
- data/bin/metrics-disk-capacity.rb +2 -3
- data/bin/metrics-disk-usage.rb +0 -1
- data/bin/metrics-disk.rb +1 -2
- data/lib/sensu-plugins-disk-checks/version.rb +3 -3
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7bf5513d304d4157a83a33571861bb105e35a3f47a867b0d77d6b2c0e0b54037
|
4
|
+
data.tar.gz: feafc7c7df2fbd162d34406fc199fa500ce646f41d74601347cc1c9991160936
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a1536ade75fa3ac7f047fe7bfe8adcbcbea0adeef3c8bef27a32f5b264744934272b8c7c67195674d52002278d48bde7f59ca23a34d344261c85283fe1add10
|
7
|
+
data.tar.gz: ed3039e31f4c1ffff1226b9279ad1187e7cf26506395e16002a0d320243be8a934e5dab27d54c0ba1e757d14c1a3ddff988d82cd7f4939933a65e323cea2a47f
|
data/CHANGELOG.md
CHANGED
@@ -1,13 +1,24 @@
|
|
1
1
|
# Change Log
|
2
2
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
3
3
|
|
4
|
-
This CHANGELOG follows the format listed
|
4
|
+
This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins/community/blob/master/HOW_WE_CHANGELOG.md)
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
7
|
|
8
|
+
## [3.0.0] - 2018-03-07
|
9
|
+
### Security
|
10
|
+
- updated rubocop dependency to `~> 0.51.0` per: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8418. (@majormoses)
|
11
|
+
|
12
|
+
### Breaking Changes
|
13
|
+
- removed ruby `< 2.1` support (@majormoses)
|
14
|
+
|
15
|
+
### Changed
|
16
|
+
- updated the changelog location guidelines (@majormoses)
|
17
|
+
- appeased the cops and created TODOs for refactoring (@majormoses)
|
18
|
+
|
8
19
|
## [2.5.1] - 2017-12-05
|
9
20
|
### Fixed
|
10
|
-
- check-disk-usage.rb: now exits unknown instead of critical when retrieving mountpoints fail
|
21
|
+
- check-disk-usage.rb: now exits unknown instead of critical when retrieving mountpoints fail (@exeral)
|
11
22
|
|
12
23
|
## [2.5.0] - 2017-08-28
|
13
24
|
### Changed
|
@@ -160,7 +171,8 @@ https://mathias-kettner.de/checkmk_filesystems.html
|
|
160
171
|
### Added
|
161
172
|
- initial release
|
162
173
|
|
163
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/
|
174
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/3.0.0...HEAD
|
175
|
+
[3.0.0]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/2.5.1...3.0.0
|
164
176
|
[2.5.1]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/2.5.0...2.5.1
|
165
177
|
[2.5.0]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/2.4.2...2.5.0
|
166
178
|
[2.4.2]: https://github.com/sensu-plugins/sensu-plugins-disk-checks/compare/2.4.1...2.4.2
|
data/bin/check-disk-usage.rb
CHANGED
@@ -120,7 +120,7 @@ class CheckDisk < Sensu::Plugin::Check::CLI
|
|
120
120
|
def fs_mounts
|
121
121
|
begin
|
122
122
|
mounts = Filesystem.mounts
|
123
|
-
rescue
|
123
|
+
rescue StandardError
|
124
124
|
unknown 'An error occured getting the mount info'
|
125
125
|
end
|
126
126
|
mounts.each do |line|
|
@@ -131,7 +131,7 @@ class CheckDisk < Sensu::Plugin::Check::CLI
|
|
131
131
|
next if config[:ignorepathre] && config[:ignorepathre].match(line.mount_point)
|
132
132
|
next if config[:ignoreopt] && config[:ignoreopt].include?(line.options)
|
133
133
|
next if config[:includemnt] && !config[:includemnt].include?(line.mount_point)
|
134
|
-
rescue
|
134
|
+
rescue StandardError
|
135
135
|
unknown 'An error occured getting the mount info'
|
136
136
|
end
|
137
137
|
check_mount(line)
|
@@ -150,7 +150,7 @@ class CheckDisk < Sensu::Plugin::Check::CLI
|
|
150
150
|
def check_mount(line)
|
151
151
|
begin
|
152
152
|
fs_info = Filesystem.stat(line.mount_point)
|
153
|
-
rescue
|
153
|
+
rescue StandardError
|
154
154
|
@warn_fs << "#{line.mount_point} Unable to read."
|
155
155
|
return
|
156
156
|
end
|
data/bin/check-smart-status.rb
CHANGED
@@ -174,7 +174,7 @@ class SmartCheckStatus < Sensu::Plugin::Check::CLI
|
|
174
174
|
unless config[:threshold].nil?
|
175
175
|
thresholds = config[:threshold].split(',')
|
176
176
|
# Check threshold parameter length
|
177
|
-
raise 'Invalid threshold parameter count' unless thresholds.size % 5
|
177
|
+
raise 'Invalid threshold parameter count' unless (thresholds.size % 5).zero?
|
178
178
|
|
179
179
|
(0..(thresholds.size / 5 - 1)).each do |i|
|
180
180
|
att_id = @smart_attributes.index { |att| att[:id] == thresholds[i + 0].to_i }
|
@@ -203,7 +203,8 @@ class SmartCheckStatus < Sensu::Plugin::Check::CLI
|
|
203
203
|
output = {}
|
204
204
|
warnings = []
|
205
205
|
criticals = []
|
206
|
-
|
206
|
+
# TODO: refactor me
|
207
|
+
devices.each do |dev| # rubocop:disable Metrics/BlockLength
|
207
208
|
puts "#{config[:binary]} #{parameters} #{dev.device_path}" if @smart_debug
|
208
209
|
# check if debug file specified
|
209
210
|
if config[:debug_file].nil?
|
data/bin/check-smart-tests.rb
CHANGED
@@ -59,7 +59,7 @@ class Device
|
|
59
59
|
|
60
60
|
def selftest_results
|
61
61
|
results = []
|
62
|
-
headers = %w
|
62
|
+
headers = %w[num test_description status remaining lifetime lba_of_first_error]
|
63
63
|
|
64
64
|
`sudo #{@exec} -l selftest #{@name}`.split("\n").grep(/^#/).each do |test|
|
65
65
|
test = test.gsub!(/\s\s+/m, "\t").split("\t")
|
@@ -146,7 +146,8 @@ class CheckSMARTTests < Sensu::Plugin::Check::CLI
|
|
146
146
|
end
|
147
147
|
end
|
148
148
|
|
149
|
-
|
149
|
+
# TODO: refactor me
|
150
|
+
unless config[:long_test_interval].nil? # rubocop:disable Style/GuardClause
|
150
151
|
dev.str.each_with_index do |t, i|
|
151
152
|
if t['test_description'] != 'Extended offline'
|
152
153
|
if i == dev.str.length - 1
|
data/bin/check-smart.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
|
-
# encoding: UTF-8
|
3
2
|
#
|
4
3
|
# check-smart
|
5
4
|
#
|
@@ -110,14 +109,14 @@ class CheckSMART < Sensu::Plugin::Check::CLI
|
|
110
109
|
description: 'Exit code when SMART is unavailable/disabled on a disk',
|
111
110
|
proc: proc(&:to_sym),
|
112
111
|
default: :unknown,
|
113
|
-
in: %i
|
112
|
+
in: %i[unknown ok warn critical]
|
114
113
|
|
115
114
|
option :no_smart_capable_disks,
|
116
115
|
long: '--no-smart-capable-disks EXIT_CODE',
|
117
116
|
description: 'Exit code when there are no SMART capable disks',
|
118
117
|
proc: proc(&:to_sym),
|
119
118
|
default: :unknown,
|
120
|
-
in: %i
|
119
|
+
in: %i[unknown ok warn critical]
|
121
120
|
|
122
121
|
option :binary,
|
123
122
|
short: '-b path/to/smartctl',
|
@@ -170,10 +169,12 @@ class CheckSMART < Sensu::Plugin::Check::CLI
|
|
170
169
|
# Main function
|
171
170
|
#
|
172
171
|
def run
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
172
|
+
unless @devices.length > 0
|
173
|
+
exit_with(
|
174
|
+
config[:no_smart_capable_disks],
|
175
|
+
'No SMART capable devices found'
|
176
|
+
)
|
177
|
+
end
|
177
178
|
|
178
179
|
unhealthy_disks = @devices.select { |disk| disk.smart_capable? && !disk.healthy? }
|
179
180
|
unknown_disks = @devices.reject(&:smart_capable?)
|
@@ -1,5 +1,4 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
|
-
# encoding: UTF-8
|
3
2
|
#
|
4
3
|
# disk-capacity-metrics
|
5
4
|
#
|
@@ -78,7 +77,7 @@ class DiskCapacity < Sensu::Plugin::Metric::CLI::Graphite
|
|
78
77
|
end
|
79
78
|
end
|
80
79
|
end
|
81
|
-
rescue
|
80
|
+
rescue StandardError
|
82
81
|
unknown "malformed line from df: #{line}"
|
83
82
|
end
|
84
83
|
end
|
@@ -104,7 +103,7 @@ class DiskCapacity < Sensu::Plugin::Metric::CLI::Graphite
|
|
104
103
|
end
|
105
104
|
end
|
106
105
|
end
|
107
|
-
rescue
|
106
|
+
rescue StandardError
|
108
107
|
unknown "malformed line from df: #{line}"
|
109
108
|
end
|
110
109
|
end
|
data/bin/metrics-disk-usage.rb
CHANGED
data/bin/metrics-disk.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
|
-
# encoding: UTF-8
|
3
2
|
#
|
4
3
|
# disk-metrics
|
5
4
|
#
|
@@ -66,7 +65,7 @@ class DiskGraphite < Sensu::Plugin::Metric::CLI::Graphite
|
|
66
65
|
# Main function
|
67
66
|
def run
|
68
67
|
# http://www.kernel.org/doc/Documentation/iostats.txt
|
69
|
-
metrics = %w
|
68
|
+
metrics = %w[reads readsMerged sectorsRead readTime writes writesMerged sectorsWritten writeTime ioInProgress ioTime ioTimeWeighted]
|
70
69
|
|
71
70
|
File.open('/proc/diskstats', 'r').each_line do |line|
|
72
71
|
stats = line.strip.split(/\s+/)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensu-plugins-disk-checks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.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:
|
11
|
+
date: 2018-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sensu-plugin
|
@@ -142,14 +142,14 @@ dependencies:
|
|
142
142
|
requirements:
|
143
143
|
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 0.
|
145
|
+
version: 0.51.0
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 0.
|
152
|
+
version: 0.51.0
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: yard
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -212,7 +212,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
212
212
|
requirements:
|
213
213
|
- - ">="
|
214
214
|
- !ruby/object:Gem::Version
|
215
|
-
version: 2.
|
215
|
+
version: '2.1'
|
216
216
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
217
|
requirements:
|
218
218
|
- - ">="
|
@@ -220,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
220
220
|
version: '0'
|
221
221
|
requirements: []
|
222
222
|
rubyforge_project:
|
223
|
-
rubygems_version: 2.7.
|
223
|
+
rubygems_version: 2.7.6
|
224
224
|
signing_key:
|
225
225
|
specification_version: 4
|
226
226
|
summary: Sensu plugins for disk checks
|