onering-report-plugins 0.0.54 → 0.0.55

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.
@@ -38,8 +38,8 @@ report do
38
38
  val = cleanup_dirty_values(key, Facter.value(line.first))
39
39
 
40
40
  property key.to_sym, val
41
- rescue Exception
42
- STDERR.puts e.message
41
+ rescue Exception => e
42
+ Onering::Logger.debug(e.message, "onering-report-plugins/properties_facter/#{e.class.name}")
43
43
  next
44
44
  end
45
45
  end
@@ -0,0 +1,10 @@
1
+ # Onering Collector - IPMI plugin
2
+ # provides collection of IPMI data using vendor tools
3
+ #
4
+
5
+ report do
6
+ property :ipmi_ip, Facter.value('ipmi_ip')
7
+ property :ipmi_netmask, Facter.value('ipmi_netmask')
8
+ property :ipmi_gateway, Facter.value('ipmi_gateway')
9
+ property :ipmi_macaddress, Facter.value('ipmi_macaddress')
10
+ end
@@ -7,8 +7,4 @@ report do
7
7
  property :environment, Facter.value('environment')
8
8
  property :slot, Facter.value('slot')
9
9
  property :virtual, (Facter.value('is_virtual').to_s == 'true' ? true : false)
10
- property :ipmi_ip, Facter.value('ipmi_ip')
11
- property :ipmi_netmask, Facter.value('ipmi_netmask')
12
- property :ipmi_gateway, Facter.value('ipmi_gateway')
13
- property :ipmi_macaddress, Facter.value('ipmi_macaddress')
14
10
  end
@@ -0,0 +1,30 @@
1
+ report do
2
+ # ------------------------------------------------------------------------------
3
+ # cpu
4
+ #
5
+ stats_cpu = {
6
+ :count => 0,
7
+ :processors => []
8
+ }
9
+
10
+ current_cpu = nil
11
+
12
+ File.open("/proc/cpuinfo").each do |line|
13
+ case line
14
+ when /processor\s+:\s(.+)/
15
+ current_cpu = $1.to_i
16
+ stats_cpu[:count] += 1
17
+ stats_cpu[:processors][current_cpu] = {
18
+ :number => current_cpu
19
+ }
20
+ when /cpu MHz\s+:\s(.+)/
21
+ stats_cpu[:processors][current_cpu][:speed] = $1.to_f
22
+ end
23
+ end
24
+
25
+ stat :cpu, ({
26
+ 'count' => Facter.value('processorcount').to_i,
27
+ 'physical' => Facter.value('physicalprocessorcount').to_i,
28
+ 'speed' => stats_cpu[:processors].collect{|i| i[:speed] }.compact.uniq.sort{|a,b| a.to_f <=> b.to_f }.last.to_f
29
+ } rescue nil)
30
+ end
@@ -0,0 +1,35 @@
1
+ report do
2
+ # ------------------------------------------------------------------------------
3
+ # block devices
4
+ #
5
+ blocks = []
6
+
7
+ Facter.value('blockdevices').split(/\W+/).each do |dev|
8
+
9
+ block = {
10
+ :name => dev,
11
+ :device => (File.exists?("/dev/#{dev}") ? "/dev/#{dev}" : nil),
12
+ :vendor => Facter.value("blockdevice_#{dev}_vendor"),
13
+ :model => Facter.value("blockdevice_#{dev}_model"),
14
+ :size => (Integer(Facter.value("blockdevice_#{dev}_size")) rescue nil)
15
+ }
16
+
17
+ if File.directory?("/sys/block/#{dev}")
18
+ block[:removable] = (File.read("/sys/block/#{dev}/removable").to_s.chomp.strip == '1' rescue nil)
19
+ block[:readonly] = (File.read("/sys/block/#{dev}/ro").to_s.chomp.strip == '1' rescue nil)
20
+ block[:solidstate] = (File.read("/sys/block/#{dev}/queue/rotational").to_s.chomp.strip == '0' rescue nil)
21
+ block[:sectorsize] = {}
22
+
23
+ %w{
24
+ logical
25
+ physical
26
+ }.each do |s|
27
+ block[:sectorsize][s.to_sym] = (Integer(File.read("/sys/block/#{dev}/queue/#{s}_block_size").chomp.strip) rescue nil)
28
+ end
29
+ end
30
+
31
+ blocks << block.compact
32
+ end
33
+
34
+ stat 'disk.@block', blocks unless blocks.empty?
35
+ end
@@ -1,52 +1,4 @@
1
- # Onering Collector - Disk Statistics plugin
2
- # provides data on disks, mounts, and RAID configuration
3
- #
4
-
5
1
  report do
6
- # ------------------------------------------------------------------------------
7
- # mounts
8
- #
9
- mounts = {}
10
- current_dev = nil
11
-
12
- uuids = Hash[Dir["/dev/disk/by-uuid/*"].collect{|i|
13
- [File.expand_path(File.readlink(i), File.dirname(i)), File.basename(i)]
14
- }]
15
-
16
- File.read("/etc/mtab").lines.each do |line|
17
- dev,mount,fstype,flags,dump,pass = line.split(/\s+/)
18
-
19
- mounts[dev] = {
20
- :mount => mount,
21
- :device => dev,
22
- :filesystem => fstype,
23
- :flags => flags.split(/\s*,\s*/),
24
- :uuid => uuids[dev]
25
- }.compact
26
- end
27
-
28
- # logical space utilization
29
- Facter::Util::Resolution.exec("df 2> /dev/null").to_s.lines.each do |line|
30
- next if line =~ /^Filesystem/
31
- parts = line.split(/\s+/)
32
-
33
- if parts.length == 1
34
- current_dev = parts.first
35
- next
36
-
37
- else
38
- dev,kblk,used,free,percent,mount = parts
39
- dev = current_dev if dev.empty?
40
- next unless mounts[dev] and mounts[dev].is_a?(Hash)
41
-
42
- mounts[dev][:used] = (used.to_i * 1024)
43
- mounts[dev][:available] = (free.to_i * 1024)
44
- mounts[dev][:total] = (mounts[dev][:available] + mounts[dev][:used])
45
- mounts[dev][:percent_used] = percent.delete('%').to_i
46
- end
47
- end
48
-
49
-
50
2
  # ------------------------------------------------------------------------------
51
3
  # LVM
52
4
  #
@@ -112,15 +64,10 @@ report do
112
64
  end
113
65
  end
114
66
 
115
-
116
- d = {}
117
-
118
- d[:@mounts] = (Hash[mounts.select{|k,v| k =~ /^\/dev\/((h|s|xv|v)d|mapper|vgc)/ }].values rescue nil)
119
- d[:lvm] = {
67
+ lvm = {}
68
+ lvm = {
120
69
  :@groups => vg.values
121
70
  } unless vg.values.empty?
122
71
 
123
- d[:@smart] = Facter.value('smart')
124
-
125
- stat :disk, d.compact
126
- end
72
+ stat 'disk.@lvm', lvm unless lvm.empty?
73
+ end
@@ -0,0 +1,46 @@
1
+ report do
2
+ # ------------------------------------------------------------------------------
3
+ # mounts
4
+ #
5
+ mounts = {}
6
+ current_dev = nil
7
+
8
+ uuids = Hash[Dir["/dev/disk/by-uuid/*"].collect{|i|
9
+ [File.expand_path(File.readlink(i), File.dirname(i)), File.basename(i)]
10
+ }]
11
+
12
+ File.read("/etc/mtab").lines.each do |line|
13
+ dev,mount,fstype,flags,dump,pass = line.split(/\s+/)
14
+
15
+ mounts[dev] = {
16
+ :mount => mount,
17
+ :device => dev,
18
+ :filesystem => fstype,
19
+ :flags => flags.split(/\s*,\s*/),
20
+ :uuid => uuids[dev]
21
+ }.compact
22
+ end
23
+
24
+ # logical space utilization
25
+ Facter::Util::Resolution.exec("df 2> /dev/null").to_s.lines.each do |line|
26
+ next if line =~ /^Filesystem/
27
+ parts = line.split(/\s+/)
28
+
29
+ if parts.length == 1
30
+ current_dev = parts.first
31
+ next
32
+
33
+ else
34
+ dev,kblk,used,free,percent,mount = parts
35
+ dev = current_dev if dev.empty?
36
+ next unless mounts[dev] and mounts[dev].is_a?(Hash)
37
+
38
+ mounts[dev][:used] = (used.to_i * 1024)
39
+ mounts[dev][:available] = (free.to_i * 1024)
40
+ mounts[dev][:total] = (mounts[dev][:available] + mounts[dev][:used])
41
+ mounts[dev][:percent_used] = percent.delete('%').to_i
42
+ end
43
+ end
44
+
45
+ stat 'disk.@mounts', (Hash[mounts.select{|k,v| k =~ /^\/dev\/((h|s|xv|v)d|mapper|vgc)/ }].values rescue nil)
46
+ end
@@ -0,0 +1,3 @@
1
+ report do
2
+ stat 'disk.@smart', Facter.value('smart')
3
+ end
@@ -1,7 +1,3 @@
1
- # Onering Collector - Base Statistics plugin
2
- # provides basic system statistics and hardware profile to the Onering API
3
- #
4
-
5
1
  report do
6
2
  # ------------------------------------------------------------------------------
7
3
  # memory
@@ -111,39 +107,5 @@ report do
111
107
  end
112
108
  end
113
109
 
114
-
115
-
116
- # ------------------------------------------------------------------------------
117
- # cpu
118
- #
119
- stats_cpu = {
120
- :count => 0,
121
- :processors => []
122
- }
123
-
124
- current_cpu = nil
125
-
126
- File.open("/proc/cpuinfo").each do |line|
127
- case line
128
- when /processor\s+:\s(.+)/
129
- current_cpu = $1.to_i
130
- stats_cpu[:count] += 1
131
- stats_cpu[:processors][current_cpu] = {
132
- :number => current_cpu
133
- }
134
- when /cpu MHz\s+:\s(.+)/
135
- stats_cpu[:processors][current_cpu][:speed] = $1.to_f
136
- end
137
- end
138
-
139
-
140
- # ------------------------------------------------------------------------------
141
- # set stat properties
142
- #
143
110
  stat :memory, stats_mem
144
- stat :cpu, ({
145
- 'count' => Facter.value('processorcount').to_i,
146
- 'physical' => Facter.value('physicalprocessorcount').to_i,
147
- 'speed' => stats_cpu[:processors].collect{|i| i[:speed] }.compact.uniq.sort{|a,b| a.to_f <=> b.to_f }.last.to_f
148
- } rescue nil)
149
- end
111
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: onering-report-plugins
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.54
4
+ version: 0.0.55
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -34,17 +34,22 @@ executables: []
34
34
  extensions: []
35
35
  extra_rdoc_files: []
36
36
  files:
37
+ - lib/reporter/default/properties_system_disk_mounts.rb
37
38
  - lib/reporter/default/properties_facter.rb
38
39
  - lib/reporter/default/stats_virident.rb
39
- - lib/reporter/default/stats_disk.rb
40
+ - lib/reporter/default/properties_system_cpu.rb
41
+ - lib/reporter/default/properties_system_disk_lvm.rb
40
42
  - lib/reporter/default/properties_xen.rb
41
43
  - lib/reporter/default/properties_openvz.rb
44
+ - lib/reporter/default/properties_system_disk_block.rb
42
45
  - lib/reporter/default/properties_haproxy.rb
46
+ - lib/reporter/default/properties_system_memory.rb
43
47
  - lib/reporter/default/properties_network.rb
44
48
  - lib/reporter/default/properties_physical.rb
45
49
  - lib/reporter/default/properties_ohai.rb
50
+ - lib/reporter/default/properties_system_disk_smart.rb
46
51
  - lib/reporter/default/stats_zfs.rb
47
- - lib/reporter/default/stats_base.rb
52
+ - lib/reporter/default/properties_ipmi.rb
48
53
  - lib/reporter/default/properties_services.rb
49
54
  - lib/reporter/default/properties_chef.rb
50
55
  - lib/facter/onering_properties_openvz.rb