sensu-plugins-statuspage 1.1.1 → 1.2.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 +6 -1
- data/README.md +11 -0
- data/bin/check-statuspage-status.rb +61 -0
- data/lib/sensu-plugins-statuspage/version.rb +2 -2
- metadata +3 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5d1fe598ca1e022f60f0b744165bb78aca10dda2
|
|
4
|
+
data.tar.gz: f7c01757ed924ce79e47fa7ccaa1b57a3240c1cd
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fe45106f6f0e511c81542c93b3d4f8468d713c3a52f767859d91b391bea541ccf962ef6ccd61d1d02a9300e5ea801a77e723bb37df7bc6e21438091c2e796d36
|
|
7
|
+
data.tar.gz: 68180f42518cbb4657b5f18cec1494b8b11c3e209b63997a08f59c1566d9201ea69d6b804e2f14aef018e28e20f3f7c6670f19233eb07adb9353a45954b35dab
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,10 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [1.2.0] - 2017-07-21
|
|
9
|
+
### Added
|
|
10
|
+
- check-statuspage-status.rb: a plugin to check the status rollup of a statuspage instance (@spacepants)
|
|
11
|
+
|
|
8
12
|
## [1.1.1] - 2017-07-21
|
|
9
13
|
### Fixed
|
|
10
14
|
- metrics-statuspageio.rb: remove 'handlers' key from settings variable(@chrissav)
|
|
@@ -38,7 +42,8 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
|
|
|
38
42
|
### Added
|
|
39
43
|
- initial release
|
|
40
44
|
|
|
41
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/1.
|
|
45
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/1.2.0...HEAD
|
|
46
|
+
[1.2.0]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/1.1.1...1.2.0
|
|
42
47
|
[1.1.1]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/1.1.0...1.1.1
|
|
43
48
|
[1.1.0]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/1.0.0...1.1.0
|
|
44
49
|
[1.0.0]: https://github.com/sensu-plugins/sensu-plugins-statuspage/compare/0.0.3...1.0.0
|
data/README.md
CHANGED
|
@@ -16,7 +16,12 @@ Creates an issue on StatusPage.io and (optionally) updates a component status.
|
|
|
16
16
|
|
|
17
17
|
Sends graphite-style metrics to statuspage.io, for displaying public metrics. Note, this forks and is not meant for high-throughput. Rather, it is meant for high-value, low-throughput metrics for display on status page.
|
|
18
18
|
|
|
19
|
+
**check-statuspage-status**
|
|
20
|
+
|
|
21
|
+
Check the status rollup of a statuspage instance
|
|
22
|
+
|
|
19
23
|
## Files
|
|
24
|
+
* bin/check-statuspage-status
|
|
20
25
|
* bin/handler-statuspage
|
|
21
26
|
* bin/metrics-statuspageio
|
|
22
27
|
|
|
@@ -57,6 +62,12 @@ For use of a basic proxy, use "proxy_address" and "proxy_port":
|
|
|
57
62
|
}
|
|
58
63
|
}
|
|
59
64
|
```
|
|
65
|
+
|
|
66
|
+
**check-statuspage-status**
|
|
67
|
+
|
|
68
|
+
Use `-u` to set the url to your statuspage instance.
|
|
69
|
+
* `/opt/sensu/embedded/bin/check-statuspage-status.rb -u https://metastatuspage.com`
|
|
70
|
+
|
|
60
71
|
## Installation
|
|
61
72
|
|
|
62
73
|
[Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
#! /usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# check-statuspage-status
|
|
4
|
+
#
|
|
5
|
+
# DESCRIPTION:
|
|
6
|
+
# This is a simple check for the status rollup of a StatusPage instance.
|
|
7
|
+
#
|
|
8
|
+
# OUTPUT:
|
|
9
|
+
# plain text
|
|
10
|
+
#
|
|
11
|
+
# PLATFORMS:
|
|
12
|
+
# Linux
|
|
13
|
+
#
|
|
14
|
+
# USAGE:
|
|
15
|
+
# check-statuspage-status -u https://metastatuspage.com
|
|
16
|
+
#
|
|
17
|
+
# Depends on httparty gem
|
|
18
|
+
# gem install httparty
|
|
19
|
+
#
|
|
20
|
+
# LICENSE:
|
|
21
|
+
# Paul Bailey <https://github.com/spacepants>
|
|
22
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
|
23
|
+
# for details.
|
|
24
|
+
|
|
25
|
+
require 'sensu-plugin/check/cli'
|
|
26
|
+
require 'httparty'
|
|
27
|
+
require 'json'
|
|
28
|
+
|
|
29
|
+
class CheckStatusPageStatus < Sensu::Plugin::Check::CLI
|
|
30
|
+
option :url,
|
|
31
|
+
description: 'URL',
|
|
32
|
+
short: '-u URL',
|
|
33
|
+
long: '--url URL',
|
|
34
|
+
required: true
|
|
35
|
+
|
|
36
|
+
def get(url)
|
|
37
|
+
response = HTTParty.get(url, format: :plain)
|
|
38
|
+
JSON.parse response, symbolize_names: true
|
|
39
|
+
rescue HTTParty::Error
|
|
40
|
+
critical 'HTTParty error'
|
|
41
|
+
rescue JSON::ParserError
|
|
42
|
+
critical 'Invalid JSON'
|
|
43
|
+
rescue StandardError
|
|
44
|
+
critical 'Connection error'
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def run
|
|
48
|
+
resource = get("#{config[:url]}/api/v2/status.json")
|
|
49
|
+
status = resource[:status]
|
|
50
|
+
case status[:indicator]
|
|
51
|
+
when 'critical'
|
|
52
|
+
critical status[:description]
|
|
53
|
+
when 'major', 'minor'
|
|
54
|
+
warning status[:description]
|
|
55
|
+
when 'none'
|
|
56
|
+
ok status[:description]
|
|
57
|
+
else
|
|
58
|
+
unknown status[:description]
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sensu-plugins-statuspage
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sensu-Plugins and contributors
|
|
@@ -181,6 +181,7 @@ dependencies:
|
|
|
181
181
|
description: Sensu statuspage plugins
|
|
182
182
|
email: "<sensu-users@googlegroups.com>"
|
|
183
183
|
executables:
|
|
184
|
+
- check-statuspage-status.rb
|
|
184
185
|
- handler-statuspage.rb
|
|
185
186
|
- metrics-statuspageio.rb
|
|
186
187
|
extensions: []
|
|
@@ -189,6 +190,7 @@ files:
|
|
|
189
190
|
- CHANGELOG.md
|
|
190
191
|
- LICENSE
|
|
191
192
|
- README.md
|
|
193
|
+
- bin/check-statuspage-status.rb
|
|
192
194
|
- bin/handler-statuspage.rb
|
|
193
195
|
- bin/metrics-statuspageio.rb
|
|
194
196
|
- lib/sensu-plugins-statuspage.rb
|