genesis_collector 0.1.38 → 0.1.39

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6ce03ac802920f9d1f795c7d10c709b0d8e827d4
4
- data.tar.gz: 99b013aafd16152ec22166fc77db3f88d7200c4f
3
+ metadata.gz: 786f6dd29cd14a5639c1e4eec5fe7982080437b9
4
+ data.tar.gz: 8190331cde2e80f19bf1a28441fa9ae7f7bc341c
5
5
  SHA512:
6
- metadata.gz: 8c0b936e3906a7a048f9a97acf8d1938228f0097e5f00d1a5c94dc50bc3a890e73ad90a642232e9a3c903a2d58cd58dfbf7e7317a79282ea5c64318ef2a3be05
7
- data.tar.gz: 0e05d3f2702559b057d5234be03328b49d2b87547dc7c0327daed8a1152b90af46feb3c31d29aab1df2180a4c680b14d65b2c1ceab4616cf09691d752a33f0f7
6
+ metadata.gz: 149431d6981a13bae50971fd274e232769cbcfc2576a7cf3aab5a3b711624490086c4d2f99432177b952ff4e84aaa2efd8cce0e798ff9d668182ec15b3f5d661
7
+ data.tar.gz: 79a1611e350c4922e583e99b133e0a0151403be9a70c321c3617399a6d6c8f22be53badf0dc8801cf827b35a636aef1f5b5f74929b058a75d95f7c5bb085cbf2
@@ -16,7 +16,7 @@ module GenesisCollector
16
16
  if d[:dev].start_with?("/dev/sd")
17
17
  d[:slot] = get_scsi_slot(d[:dev])
18
18
  d[:uuid] = disk_uuid(d[:dev])
19
- d[:status] = disk_healthy(d[:dev]) ? "healthy" : "unhealthy"
19
+ d[:status] = disk_status(d[:dev])
20
20
  end
21
21
  end
22
22
  @payload[:disks].delete_if { |d| d[:serial_number].nil? }
@@ -28,11 +28,23 @@ module GenesisCollector
28
28
 
29
29
  private
30
30
 
31
- def disk_healthy(disk)
32
- shellout_with_timeout("smartctl -H #{disk}", 5)
33
- $CHILD_STATUS.success?
31
+ def disk_status(disk)
32
+ output = shellout_with_timeout("smartctl -H #{disk}", 5)
33
+
34
+ case output
35
+ when /SMART overall-health self-assessment test result: FAILED/
36
+ "unhealthy"
37
+ when /SMART overall-health self-assessment test result: PASSED/
38
+ "healthy"
39
+ when /SMART overall-health self-assessment test result: UNKNOWN/
40
+ "unknown"
41
+ when /SMART Health Status: OK/
42
+ "healthy"
43
+ else
44
+ "unhealthy"
45
+ end
34
46
  rescue
35
- true
47
+ "healthy"
36
48
  end
37
49
 
38
50
  def enumerate_disks
@@ -1,3 +1,3 @@
1
1
  module GenesisCollector
2
- VERSION = '0.1.38'
2
+ VERSION = '0.1.39'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: genesis_collector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.38
4
+ version: 0.1.39
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Radcliffe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-26 00:00:00.000000000 Z
11
+ date: 2016-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler