sensu-plugins-xen 0.0.3 → 0.1.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 +13 -5
- data/CHANGELOG.md +11 -3
- data/README.md +1 -2
- data/bin/metrics-xen.rb +111 -0
- data/lib/sensu-plugins-xen/version.rb +2 -2
- metadata +58 -78
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -1
- metadata.gz.sig +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MTY3YjA2N2UwZjc2NjU0OThmM2VhODBiNTdkZTQ3NTZmMDJlZDc4Zg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NGNlZDlkMmNhYzU1YWM1NGY3YjE0NDgxZDdhNjQ0ZDY2ZTA5NTljNw==
|
5
7
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NzI2YTllNDBiOGJhYzg3NDNmZTk0NTcwMTlmNzQ3ODljMmU0Yjc4OTE3MzVm
|
10
|
+
YTE5ODYxOWZlYzE1YzhkOTM1MGVjZjA5OGExYjNhODNkYjhlMWZlYTk1Yzk0
|
11
|
+
ZDY4ZDQ5ODZiZWQxZDlkMDFhNTUwNDc3NzE5NDczZTVlNWI5M2I=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NjU2NjI2NmRhZDY4MzU2OGIwNWUzZGY1ZjNjNGZiMThjZWU1YTc1OTg3MTVi
|
14
|
+
ZDgxNTgyZWI1MWFlMGU0NmE3OTNiZTQ3NmViNzU4NmJmMDJiYjMyYjRlM2M0
|
15
|
+
MjdmNWE5YWM3NjBjMjA2MjZjNWFmNzhjYmVkYTIwNTZiY2MwMzI=
|
data/CHANGELOG.md
CHANGED
@@ -3,14 +3,20 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
3
3
|
|
4
4
|
This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
|
5
5
|
|
6
|
-
## Unreleased]
|
6
|
+
## [Unreleased]
|
7
|
+
|
8
|
+
## [0.1.0] - 2016-08-16
|
9
|
+
## Changed
|
10
|
+
- Updated sensu-plugin dependency from `= 1.2.0` to `~> 1.2.0`
|
11
|
+
|
12
|
+
## Added
|
13
|
+
- metrics-xen.rb: new metric plugin added!
|
7
14
|
|
8
15
|
## [0.0.3] - 2015-07-14
|
9
16
|
### Changed
|
10
17
|
- updated sensu-plugin gem to 1.2.0
|
11
18
|
|
12
19
|
## [0.0.2] - 2015-06-03
|
13
|
-
|
14
20
|
### Fixed
|
15
21
|
- added binstubs
|
16
22
|
|
@@ -18,7 +24,9 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
|
|
18
24
|
- removed cruft from /lib
|
19
25
|
|
20
26
|
## 0.0.1 - 2015-04-30
|
21
|
-
|
22
27
|
### Added
|
23
28
|
- initial release
|
24
29
|
|
30
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-xen/compare/0.0.3...HEAD
|
31
|
+
[0.0.3]: https://github.com/sensu-plugins/sensu-plugins-xen/compare/0.0.2...0.0.3
|
32
|
+
[0.0.2]: https://github.com/sensu-plugins/sensu-plugins-xen/compare/0.0.1...0.0.2
|
data/README.md
CHANGED
@@ -5,7 +5,6 @@
|
|
5
5
|
[](https://codeclimate.com/github/sensu-plugins/sensu-plugins-xen)
|
6
6
|
[](https://codeclimate.com/github/sensu-plugins/sensu-plugins-xen)
|
7
7
|
[](https://gemnasium.com/sensu-plugins/sensu-plugins-xen)
|
8
|
-
[ ](https://codeship.com/projects/81368)
|
9
8
|
|
10
9
|
## Functionality
|
11
10
|
|
@@ -16,6 +15,6 @@
|
|
16
15
|
|
17
16
|
## Installation
|
18
17
|
|
19
|
-
[Installation and Setup](
|
18
|
+
[Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)
|
20
19
|
|
21
20
|
## Notes
|
data/bin/metrics-xen.rb
ADDED
@@ -0,0 +1,111 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# metrics-xen.rb
|
4
|
+
#
|
5
|
+
# DESCRIPTION:
|
6
|
+
# This plugin collects metrics from xentop
|
7
|
+
#
|
8
|
+
# OUTPUT:
|
9
|
+
# metric data
|
10
|
+
#
|
11
|
+
# PLATFORMS:
|
12
|
+
# Linux
|
13
|
+
#
|
14
|
+
# DEPENDENCIES:
|
15
|
+
# gem: sensu-plugin
|
16
|
+
#
|
17
|
+
# USAGE:
|
18
|
+
# metrics-xen.rb
|
19
|
+
#
|
20
|
+
# NOTES:
|
21
|
+
#
|
22
|
+
#
|
23
|
+
# LICENSE:
|
24
|
+
# Copyright Marc-Andre Gatien <m.gatien@gmail.com>
|
25
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
26
|
+
# for details.
|
27
|
+
#
|
28
|
+
require 'sensu-plugin/metric/cli'
|
29
|
+
require 'socket'
|
30
|
+
|
31
|
+
class XenGraphite < Sensu::Plugin::Metric::CLI::Graphite
|
32
|
+
option :scheme,
|
33
|
+
description: 'Metric naming scheme, text to prepend to metric',
|
34
|
+
short: '-s SCHEME',
|
35
|
+
long: '--scheme SCHEME',
|
36
|
+
default: '#{Socket.gethostbyname("#{Socket.gethostname}").first}.xen'
|
37
|
+
|
38
|
+
def run
|
39
|
+
xen = metrics_hash
|
40
|
+
xm = xm_hash
|
41
|
+
xencount = xenservers
|
42
|
+
i = 0
|
43
|
+
xen.each do |_k, v|
|
44
|
+
result = v.split(' ')
|
45
|
+
metrics = {
|
46
|
+
:"#{xencount[i]}" => {
|
47
|
+
CPUs: result[0],
|
48
|
+
CPUp: result[1],
|
49
|
+
MEMk: result[2],
|
50
|
+
MEMp: result[3],
|
51
|
+
MAXMEMk: result[4].to_i,
|
52
|
+
MAXMEMp: result[5].to_f,
|
53
|
+
VCPUs: result[6].to_i,
|
54
|
+
NETS: result[7],
|
55
|
+
NETTX: result[8],
|
56
|
+
NETRX: result[9],
|
57
|
+
VBDS: result[10],
|
58
|
+
VBD_OO: result[11],
|
59
|
+
VBD_RD: result[12],
|
60
|
+
VBD_WR: result[13],
|
61
|
+
VBD_RSECT: result[14],
|
62
|
+
VBD_WSECT: result[15],
|
63
|
+
SSID: result[16]
|
64
|
+
}
|
65
|
+
}
|
66
|
+
i += 1
|
67
|
+
metrics.each do |parent, children|
|
68
|
+
children.each do |child, value|
|
69
|
+
output [config[:scheme], parent, child].join('.'), value
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
xm.each do |k, v|
|
74
|
+
output [config[:scheme], 'Domain-0', k].join('.'), v
|
75
|
+
end
|
76
|
+
ok
|
77
|
+
end
|
78
|
+
|
79
|
+
def xenservers
|
80
|
+
xencount = []
|
81
|
+
xentop_output.each_line do |line|
|
82
|
+
xencount.push(line.split.first(1).join(' ').split('.').first)
|
83
|
+
end
|
84
|
+
xencount.uniq
|
85
|
+
end
|
86
|
+
|
87
|
+
def metrics_hash
|
88
|
+
xen = {}
|
89
|
+
xencount = xenservers
|
90
|
+
c = xencount.count - 1
|
91
|
+
xentop_output.each_line.with_index do |line, lineno|
|
92
|
+
next if lineno <= c
|
93
|
+
xen[line.split.first(1).join(' ')] = line.split.drop(2).join(' ')
|
94
|
+
end
|
95
|
+
xen
|
96
|
+
end
|
97
|
+
|
98
|
+
def xm_hash
|
99
|
+
xen_info = {}
|
100
|
+
`sudo xm info`.each_line do |line|
|
101
|
+
if /(nr_cpus|cores_per_socket|threads_per_core|total_memory|free_memory|free_cpus|nr_nodes)/ =~ line
|
102
|
+
xen_info.store((line.split(' ')[0]), line.split.drop(2).join(' ').to_i)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
xen_info
|
106
|
+
end
|
107
|
+
|
108
|
+
def xentop_output
|
109
|
+
`sudo xentop -bfi2 | grep -v NAME`
|
110
|
+
end
|
111
|
+
end
|
metadata
CHANGED
@@ -1,186 +1,166 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensu-plugins-xen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sensu-Plugins and contributors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
-
|
12
|
-
-----BEGIN CERTIFICATE-----
|
13
|
-
MIIDgDCCAmigAwIBAgIBATANBgkqhkiG9w0BAQUFADBDMRIwEAYDVQQDDAltYXR0
|
14
|
-
am9uZXMxGDAWBgoJkiaJk/IsZAEZFgh5aWVsZGJvdDETMBEGCgmSJomT8ixkARkW
|
15
|
-
A2NvbTAeFw0xNTAxMjgyMTAyNTFaFw0xNjAxMjgyMTAyNTFaMEMxEjAQBgNVBAMM
|
16
|
-
CW1hdHRqb25lczEYMBYGCgmSJomT8ixkARkWCHlpZWxkYm90MRMwEQYKCZImiZPy
|
17
|
-
LGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyTSzVYnO
|
18
|
-
CLgyrIyT1mBQakArQyW8xhi6MlDqyzXHJGeERT790U6EgoBVeS4XoK0ptFZNR8Tf
|
19
|
-
zko0w+Nv47TarSCgkPOaxY+mxWnAVR10dOmfeLr7huiMyps+YD56/EF2FqQ3jf/+
|
20
|
-
qohENfKD91qy1ieEy+Fn7Pf74ltbNKUdkb9a9eFXQ0DQ4ip5vik7DzjQkUTj4lca
|
21
|
-
k6ArwnmHX4YDhZoYtrQJ8jVktN0/+NtA40M5qkCYHNe5tUW25b/tKVYuioxG6b2Z
|
22
|
-
oIzaZxRLxf6HVAWpCVRT/F5+/yjigkX4u++eYacfLGleXQzoK7BL65vHGMJygWEE
|
23
|
-
0TKGqFOrl/L0AQIDAQABo38wfTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNV
|
24
|
-
HQ4EFgQUEf6a8Td7MrSZc8ImbLFZAENPbz0wIQYDVR0RBBowGIEWbWF0dGpvbmVz
|
25
|
-
QHlpZWxkYm90LmNvbTAhBgNVHRIEGjAYgRZtYXR0am9uZXNAeWllbGRib3QuY29t
|
26
|
-
MA0GCSqGSIb3DQEBBQUAA4IBAQBbzXAYA3BVGw8DZ0YYoY1VHPNEcH5qPIApmHO8
|
27
|
-
rvSmuUT0yMEi7u00H/5uHRFf4LleGT/+sTdyXKsNPGT9kdRuQEgwi+vf7Zfvd8aX
|
28
|
-
UF/+4VkEYf/8rV8Ere6u2QaWPgApdMV6JjKr1fAwCTd8AuGXNaWItiPPMseSQzLJ
|
29
|
-
JKP4hVvbc1d+oS925B1lcBiqn2aYvElbyNAVmQPywNNqkWmvtlqj9ZVJfV5HQLdu
|
30
|
-
8sHuVruarogxxKPBzlL2is4EUb6oN/RdpGx2l4254+nyR+abg//Ed27Ym0PkB4lk
|
31
|
-
HP0m8WSjZmFr109pE/sVsM5jtOCvogyujQOjNVGN4gz1wwPr
|
32
|
-
-----END CERTIFICATE-----
|
33
|
-
date: 2015-07-14 00:00:00.000000000 Z
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-08-19 00:00:00.000000000 Z
|
34
12
|
dependencies:
|
35
13
|
- !ruby/object:Gem::Dependency
|
36
14
|
name: sensu-plugin
|
37
15
|
requirement: !ruby/object:Gem::Requirement
|
38
16
|
requirements:
|
39
|
-
- -
|
17
|
+
- - ~>
|
40
18
|
- !ruby/object:Gem::Version
|
41
|
-
version: 1.2
|
19
|
+
version: '1.2'
|
42
20
|
type: :runtime
|
43
21
|
prerelease: false
|
44
22
|
version_requirements: !ruby/object:Gem::Requirement
|
45
23
|
requirements:
|
46
|
-
- -
|
24
|
+
- - ~>
|
47
25
|
- !ruby/object:Gem::Version
|
48
|
-
version: 1.2
|
26
|
+
version: '1.2'
|
49
27
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
28
|
+
name: bundler
|
51
29
|
requirement: !ruby/object:Gem::Requirement
|
52
30
|
requirements:
|
53
|
-
- -
|
31
|
+
- - ~>
|
54
32
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
33
|
+
version: '1.7'
|
56
34
|
type: :development
|
57
35
|
prerelease: false
|
58
36
|
version_requirements: !ruby/object:Gem::Requirement
|
59
37
|
requirements:
|
60
|
-
- -
|
38
|
+
- - ~>
|
61
39
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
40
|
+
version: '1.7'
|
63
41
|
- !ruby/object:Gem::Dependency
|
64
|
-
name:
|
42
|
+
name: codeclimate-test-reporter
|
65
43
|
requirement: !ruby/object:Gem::Requirement
|
66
44
|
requirements:
|
67
|
-
- -
|
45
|
+
- - ~>
|
68
46
|
- !ruby/object:Gem::Version
|
69
|
-
version: '0.
|
47
|
+
version: '0.4'
|
70
48
|
type: :development
|
71
49
|
prerelease: false
|
72
50
|
version_requirements: !ruby/object:Gem::Requirement
|
73
51
|
requirements:
|
74
|
-
- -
|
52
|
+
- - ~>
|
75
53
|
- !ruby/object:Gem::Version
|
76
|
-
version: '0.
|
54
|
+
version: '0.4'
|
77
55
|
- !ruby/object:Gem::Dependency
|
78
|
-
name:
|
56
|
+
name: github-markup
|
79
57
|
requirement: !ruby/object:Gem::Requirement
|
80
58
|
requirements:
|
81
|
-
- -
|
59
|
+
- - ~>
|
82
60
|
- !ruby/object:Gem::Version
|
83
|
-
version: '3
|
61
|
+
version: '1.3'
|
84
62
|
type: :development
|
85
63
|
prerelease: false
|
86
64
|
version_requirements: !ruby/object:Gem::Requirement
|
87
65
|
requirements:
|
88
|
-
- -
|
66
|
+
- - ~>
|
89
67
|
- !ruby/object:Gem::Version
|
90
|
-
version: '3
|
68
|
+
version: '1.3'
|
91
69
|
- !ruby/object:Gem::Dependency
|
92
|
-
name:
|
70
|
+
name: pry
|
93
71
|
requirement: !ruby/object:Gem::Requirement
|
94
72
|
requirements:
|
95
|
-
- -
|
73
|
+
- - ~>
|
96
74
|
- !ruby/object:Gem::Version
|
97
|
-
version: '
|
75
|
+
version: '0.10'
|
98
76
|
type: :development
|
99
77
|
prerelease: false
|
100
78
|
version_requirements: !ruby/object:Gem::Requirement
|
101
79
|
requirements:
|
102
|
-
- -
|
80
|
+
- - ~>
|
103
81
|
- !ruby/object:Gem::Version
|
104
|
-
version: '
|
82
|
+
version: '0.10'
|
105
83
|
- !ruby/object:Gem::Dependency
|
106
84
|
name: rake
|
107
85
|
requirement: !ruby/object:Gem::Requirement
|
108
86
|
requirements:
|
109
|
-
- -
|
87
|
+
- - ~>
|
110
88
|
- !ruby/object:Gem::Version
|
111
|
-
version: '10.
|
89
|
+
version: '10.5'
|
112
90
|
type: :development
|
113
91
|
prerelease: false
|
114
92
|
version_requirements: !ruby/object:Gem::Requirement
|
115
93
|
requirements:
|
116
|
-
- -
|
94
|
+
- - ~>
|
117
95
|
- !ruby/object:Gem::Version
|
118
|
-
version: '10.
|
96
|
+
version: '10.5'
|
119
97
|
- !ruby/object:Gem::Dependency
|
120
|
-
name:
|
98
|
+
name: redcarpet
|
121
99
|
requirement: !ruby/object:Gem::Requirement
|
122
100
|
requirements:
|
123
|
-
- -
|
101
|
+
- - ~>
|
124
102
|
- !ruby/object:Gem::Version
|
125
|
-
version: '
|
103
|
+
version: '3.2'
|
126
104
|
type: :development
|
127
105
|
prerelease: false
|
128
106
|
version_requirements: !ruby/object:Gem::Requirement
|
129
107
|
requirements:
|
130
|
-
- -
|
108
|
+
- - ~>
|
131
109
|
- !ruby/object:Gem::Version
|
132
|
-
version: '
|
110
|
+
version: '3.2'
|
133
111
|
- !ruby/object:Gem::Dependency
|
134
|
-
name:
|
112
|
+
name: rubocop
|
135
113
|
requirement: !ruby/object:Gem::Requirement
|
136
114
|
requirements:
|
137
|
-
- -
|
115
|
+
- - ~>
|
138
116
|
- !ruby/object:Gem::Version
|
139
|
-
version:
|
117
|
+
version: 0.40.0
|
140
118
|
type: :development
|
141
119
|
prerelease: false
|
142
120
|
version_requirements: !ruby/object:Gem::Requirement
|
143
121
|
requirements:
|
144
|
-
- -
|
122
|
+
- - ~>
|
145
123
|
- !ruby/object:Gem::Version
|
146
|
-
version:
|
124
|
+
version: 0.40.0
|
147
125
|
- !ruby/object:Gem::Dependency
|
148
|
-
name:
|
126
|
+
name: rspec
|
149
127
|
requirement: !ruby/object:Gem::Requirement
|
150
128
|
requirements:
|
151
|
-
- -
|
129
|
+
- - ~>
|
152
130
|
- !ruby/object:Gem::Version
|
153
|
-
version: '
|
131
|
+
version: '3.4'
|
154
132
|
type: :development
|
155
133
|
prerelease: false
|
156
134
|
version_requirements: !ruby/object:Gem::Requirement
|
157
135
|
requirements:
|
158
|
-
- -
|
136
|
+
- - ~>
|
159
137
|
- !ruby/object:Gem::Version
|
160
|
-
version: '
|
138
|
+
version: '3.4'
|
161
139
|
- !ruby/object:Gem::Dependency
|
162
|
-
name:
|
140
|
+
name: yard
|
163
141
|
requirement: !ruby/object:Gem::Requirement
|
164
142
|
requirements:
|
165
|
-
- -
|
143
|
+
- - ~>
|
166
144
|
- !ruby/object:Gem::Version
|
167
|
-
version: '0.
|
145
|
+
version: '0.8'
|
168
146
|
type: :development
|
169
147
|
prerelease: false
|
170
148
|
version_requirements: !ruby/object:Gem::Requirement
|
171
149
|
requirements:
|
172
|
-
- -
|
150
|
+
- - ~>
|
173
151
|
- !ruby/object:Gem::Version
|
174
|
-
version: '0.
|
152
|
+
version: '0.8'
|
175
153
|
description: Sensu plugins for working with xen
|
176
|
-
email:
|
177
|
-
executables:
|
154
|
+
email: <sensu-users@googlegroups.com>
|
155
|
+
executables:
|
156
|
+
- metrics-xen.rb
|
178
157
|
extensions: []
|
179
158
|
extra_rdoc_files: []
|
180
159
|
files:
|
181
160
|
- CHANGELOG.md
|
182
161
|
- LICENSE
|
183
162
|
- README.md
|
163
|
+
- bin/metrics-xen.rb
|
184
164
|
- lib/sensu-plugins-xen.rb
|
185
165
|
- lib/sensu-plugins-xen/version.rb
|
186
166
|
homepage: https://github.com/sensu-plugins/sensu-plugins-xen
|
@@ -199,17 +179,17 @@ require_paths:
|
|
199
179
|
- lib
|
200
180
|
required_ruby_version: !ruby/object:Gem::Requirement
|
201
181
|
requirements:
|
202
|
-
- -
|
182
|
+
- - ! '>='
|
203
183
|
- !ruby/object:Gem::Version
|
204
184
|
version: 1.9.3
|
205
185
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
206
186
|
requirements:
|
207
|
-
- -
|
187
|
+
- - ! '>='
|
208
188
|
- !ruby/object:Gem::Version
|
209
189
|
version: '0'
|
210
190
|
requirements: []
|
211
191
|
rubyforge_project:
|
212
|
-
rubygems_version: 2.4.
|
192
|
+
rubygems_version: 2.4.5
|
213
193
|
signing_key:
|
214
194
|
specification_version: 4
|
215
195
|
summary: Sensu plugins for working with xen
|
checksums.yaml.gz.sig
DELETED
Binary file
|
data.tar.gz.sig
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
��l���{t�;&���Ea����M�F�Dt����3k*e��ㆧa��к��bI�웠�DΑ|֏YG�� ��*�x�%}�@���+���99��6���R�#Mp�%|l��b� i�=��Y�(O���; ��!t������,q��?c��QZ�5��SI����n[��C�_��pV5N���}EB�����R��:njm�g�Y���A"ɦd�3��:�HV����{��6
|
metadata.gz.sig
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
w��P�Jl��^��\n���M=Q��l�.��Ƥ�#�!?C��p��~L�;<r$�K�i{9ԉ���j�;[�]%�7Nص�v�*Q���>j��u�T�v��<Zl��P���!��B�=�pGIx�'�(d����U��E�y�Dţ�_�<�g@���r�tb��a8��B@i�G�B+�ծah �M�,�]��8���9z£�Ŷ�.�b�:f~�kg�T3tX2��0
|