sensu-plugins-sidekiq-moj 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 +7 -0
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +4 -0
- data/CHANGELOG.md +18 -0
- data/LICENSE +22 -0
- data/README.md +61 -0
- data/bin/check-sidekiq-dead-queue.rb +116 -0
- data/bin/check-sidekiq.rb +87 -0
- data/bin/metrics-sidekiq.rb +74 -0
- data/lib/sensu-plugins-sidekiq.rb +1 -0
- data/lib/sensu-plugins-sidekiq/version.rb +10 -0
- metadata +250 -0
- metadata.gz.sig +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8f7410f8bf40affc89f689e538ad1e63aa3650ae
|
4
|
+
data.tar.gz: 499e1d697d2225d72c03213523d577da01903dd4
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 85a01573dc74cf1a41837b3892f3e80a3db8575515ec8a0b2b9f90b57cc8a6f3c63a61a611f87c4f8f63747c2c88f13e0f391aedc6fecda0e816f96e75bb096f
|
7
|
+
data.tar.gz: 9db05a562033e63daed02fcedb2ce3d35d9fee345e6cf78193d59bd3d73357b0f02bcb59cbe6a412121868e534034a31d0b334c159c9ecd8ebaefd299dbe16c8
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data.tar.gz.sig
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
#Change Log
|
2
|
+
This project adheres to [Semantic Versioning](http://semver.org/).
|
3
|
+
|
4
|
+
This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
|
5
|
+
|
6
|
+
## Unreleased
|
7
|
+
|
8
|
+
## [0.1.0] - 2015-11-06
|
9
|
+
### Added
|
10
|
+
- new script `check-sidekiq-dead-queue.rb`
|
11
|
+
|
12
|
+
## [0.0.2] - 2015-07-14
|
13
|
+
### Changed
|
14
|
+
- updated sensu-plugin gem to 1.2.0
|
15
|
+
|
16
|
+
## [0.0.1] - 2015-06-27
|
17
|
+
### Added
|
18
|
+
- initial release
|
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2015 Sensu-Plugins
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
## Sensu-Plugins-sidekiq
|
2
|
+
|
3
|
+
[](https://travis-ci.org/sensu-plugins/sensu-plugins-sidekiq)
|
4
|
+
[](http://badge.fury.io/rb/sensu-plugins-sidekiq)
|
5
|
+
[](https://codeclimate.com/github/sensu-plugins/sensu-plugins-sidekiq)
|
6
|
+
[](https://codeclimate.com/github/sensu-plugins/sensu-plugins-sidekiq)
|
7
|
+
[](https://gemnasium.com/sensu-plugins/sensu-plugins-sidekiq)
|
8
|
+
[](https://codeship.com/projects/84126)
|
9
|
+
|
10
|
+
## Functionality
|
11
|
+
|
12
|
+
Check varius metrics and checks for Sidekiq.
|
13
|
+
The following scripts:
|
14
|
+
|
15
|
+
* bin/check-sidekiq.rb
|
16
|
+
* bin/sidekiq-metrics.rb
|
17
|
+
|
18
|
+
require [sidekiq-monitor-stats](https://github.com/harvesthq/sidekiq-monitor-stats)
|
19
|
+
running on your application. Pass the `--url URL` option with the url to your monitor stats. Both scripts also accept a
|
20
|
+
`--auth USER:PASSWORD` option in case the monitor stats url sits behind basic authorization.
|
21
|
+
|
22
|
+
* bin/check-sidekiq-dead-queue.rb
|
23
|
+
uses the native sidekiq JSON dashboard under `<mount point>/dashboard/stats`
|
24
|
+
[More info](https://github.com/mperham/sidekiq/wiki/Monitoring#using-the-built-in-dashboard)
|
25
|
+
|
26
|
+
|
27
|
+
### check-sidekiq.rb
|
28
|
+
|
29
|
+
Uses the maximum latency to figure out when to raise warnings. The latency is the time a job has been waiting in the queue (without
|
30
|
+
being processed). It's generally a good metric to know when there's trouble with Sidekiq. There are some options you can pass to this
|
31
|
+
script:
|
32
|
+
|
33
|
+
* `--warn SECONDS`: Warn after job has been SECONDS seconds in a queue. The default is 120.
|
34
|
+
* `--crit SECONDS`: Critical after job has been SECONDS seconds in a queue. The default is 300.
|
35
|
+
|
36
|
+
### sidekiq-metrics.rb
|
37
|
+
|
38
|
+
Generates total concurrency (`concurrency`), total busy (`busy`) and maximum latency (`latency`) metrics for your sidekiq. A graph of
|
39
|
+
busy vs. concurrency is specially useful for capacity planning. The latency metric should let you know if something is wrong (or there
|
40
|
+
are spikes that don't trigger a warning or a critical). Accepts an `--scheme SCHEME` option to know what scheme to append to the
|
41
|
+
metrics (the default is `sidekiq`).
|
42
|
+
|
43
|
+
|
44
|
+
### check-sidekiq-dead-queue.rb
|
45
|
+
Checks the dead queue and raises a CRITICAL if it's not empty. Jobs in the dead queue have failed over 25 times. Some organisations might consider this an issue to address and could benefit from this check.
|
46
|
+
|
47
|
+
|
48
|
+
## Files
|
49
|
+
* bin/check-sidekiq.rb
|
50
|
+
* bin/sidekiq-metrics.rb
|
51
|
+
* bin/check-sidekiq-dead-queue.rb
|
52
|
+
|
53
|
+
## Usage
|
54
|
+
|
55
|
+
## Installation
|
56
|
+
|
57
|
+
[Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)
|
58
|
+
|
59
|
+
## Notes
|
60
|
+
|
61
|
+
Thanks to [xxxxxx]() for contributing.
|
@@ -0,0 +1,116 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
require 'sensu-plugin/check/cli'
|
5
|
+
require 'open-uri'
|
6
|
+
require 'json'
|
7
|
+
require 'time'
|
8
|
+
require 'date'
|
9
|
+
require 'timerizer'
|
10
|
+
|
11
|
+
|
12
|
+
# DESCRIPTION:
|
13
|
+
# Check that the sidekiq dead queue size is 0 using the sidekiq
|
14
|
+
# stats JSON page under
|
15
|
+
# /sidekiq/dashboard/stats
|
16
|
+
#
|
17
|
+
# DEPENDENCIES:
|
18
|
+
# gem: sensu-plugin
|
19
|
+
# gem: open-uri
|
20
|
+
# gem: json
|
21
|
+
# gem: timerizer
|
22
|
+
#
|
23
|
+
# LICENSE:
|
24
|
+
# by https://github.com/bennythejudge
|
25
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
26
|
+
# for details.
|
27
|
+
class SidekiqCheck < Sensu::Plugin::Check::CLI
|
28
|
+
option :url,
|
29
|
+
short: '-u URL',
|
30
|
+
long: '--url URL',
|
31
|
+
description: 'Url to query',
|
32
|
+
required: true
|
33
|
+
|
34
|
+
option :auth,
|
35
|
+
short: '-a USER:PASSWORD',
|
36
|
+
long: '--auth USER:PASSWORD',
|
37
|
+
description: 'Basic auth credentials if you need them',
|
38
|
+
proc: proc { |auth| auth.split(':') }
|
39
|
+
|
40
|
+
option :silence,
|
41
|
+
short: '-sil START_TIME-NUMBER_OF_HOURS',
|
42
|
+
long: '--silence START_TIME-NUMBER_OF_HOURS',
|
43
|
+
description: 'Time period in 24h format to silence alerts',
|
44
|
+
proc: proc { |period| period.split('-') }
|
45
|
+
|
46
|
+
option :silence_weekends,
|
47
|
+
short: '-sw true/false',
|
48
|
+
long: '--silence-weekends true/false',
|
49
|
+
description: 'Disables alerting for the dead queue during weekends'
|
50
|
+
|
51
|
+
def run
|
52
|
+
check_for_silence do
|
53
|
+
begin
|
54
|
+
stats = JSON.parse(
|
55
|
+
if config[:auth]
|
56
|
+
open(config[:url], http_basic_authentication: config[:auth]).read
|
57
|
+
else
|
58
|
+
open(config[:url]).read
|
59
|
+
end
|
60
|
+
)
|
61
|
+
rescue => error
|
62
|
+
unknown "Could not load Sidekiq stats from #{config[:url]}. Error: #{error}"
|
63
|
+
end
|
64
|
+
dead_queue_size = stats['sidekiq']['dead']
|
65
|
+
if !dead_queue_size.zero?
|
66
|
+
entry_or_entries = dead_queue_size > 1 ? 'entries' : 'entry'
|
67
|
+
critical 'dead queue not empty (' + dead_queue_size.to_s + ' ' + entry_or_entries + ')'
|
68
|
+
else
|
69
|
+
ok 'sidekiq dead queue is empty'
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
def check_for_silence(&block)
|
75
|
+
now = Time.now.utc
|
76
|
+
silence_weekends = !!config[:silence_weekends]
|
77
|
+
if silence_weekends && weekend?
|
78
|
+
ok 'silence mode - dead queue checks disabled for the weekend'
|
79
|
+
elsif time_period && time_period.cover?(Time.now.utc)
|
80
|
+
ok 'silence mode - dead queue checks disabled for time period'
|
81
|
+
else
|
82
|
+
yield
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
private
|
87
|
+
|
88
|
+
def weekend?
|
89
|
+
day = Date.today.strftime('%a').downcase
|
90
|
+
['sat', 'sun'].include?(day)
|
91
|
+
end
|
92
|
+
|
93
|
+
def time_period
|
94
|
+
start_time, hours = config[:silence]
|
95
|
+
if start_time && hours
|
96
|
+
start_hour = Time.parse(start_time).strftime('%H').to_i
|
97
|
+
naive_end_hour = hours.to_i.hours.after(Time.parse(start_time)).strftime('%H').to_i
|
98
|
+
|
99
|
+
start_time = start_hour > naive_end_hour ? previous_day(start_time) : today(start_time)
|
100
|
+
end_time = hours.to_i.hours.after(start_time)
|
101
|
+
(start_time..end_time)
|
102
|
+
else
|
103
|
+
nil
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
def previous_day(start_time)
|
108
|
+
yesterday = Time.parse(Date.today.prev_day.to_s)
|
109
|
+
Time.parse(start_time, yesterday)
|
110
|
+
end
|
111
|
+
|
112
|
+
def today(start_time)
|
113
|
+
Time.parse(start_time)
|
114
|
+
end
|
115
|
+
|
116
|
+
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
require 'sensu-plugin/check/cli'
|
5
|
+
require 'open-uri'
|
6
|
+
require 'json'
|
7
|
+
|
8
|
+
# check-sidekiq
|
9
|
+
#
|
10
|
+
# DESCRIPTION:
|
11
|
+
# Check sidekiq status from a sidekiq-monitor-stats enabled endpoint.
|
12
|
+
#
|
13
|
+
# https://github.com/harvesthq/sidekiq-monitor-stats
|
14
|
+
#
|
15
|
+
# Uses the maximum latency to check the status.
|
16
|
+
#
|
17
|
+
#
|
18
|
+
# PLATFORMS:
|
19
|
+
# Linux
|
20
|
+
#
|
21
|
+
# DEPENDENCIES:
|
22
|
+
# gem: sensu-plugin
|
23
|
+
# gem: open-uri
|
24
|
+
# gem: json
|
25
|
+
#
|
26
|
+
# LICENSE:
|
27
|
+
# Albert Llop albert@getharvest.com
|
28
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
29
|
+
# for details.
|
30
|
+
#
|
31
|
+
class SidekiqCheck < Sensu::Plugin::Check::CLI
|
32
|
+
option :url,
|
33
|
+
short: '-u URL',
|
34
|
+
long: '--url URL',
|
35
|
+
description: 'Url to query',
|
36
|
+
required: true
|
37
|
+
|
38
|
+
option :auth,
|
39
|
+
short: '-a USER:PASSWORD',
|
40
|
+
long: '--auth USER:PASSWORD',
|
41
|
+
description: 'Basic auth credentials if you need them',
|
42
|
+
proc: proc { |auth| auth.split(':') }
|
43
|
+
|
44
|
+
option :warn,
|
45
|
+
short: '-w SECONDS',
|
46
|
+
long: '--warn SECONDS',
|
47
|
+
description: 'Warn after job has been SECONDS seconds in a queue',
|
48
|
+
proc: proc { |seconds| seconds.to_i },
|
49
|
+
default: 120
|
50
|
+
|
51
|
+
option :crit,
|
52
|
+
short: '-c SECONDS',
|
53
|
+
long: '--crit SECONDS',
|
54
|
+
description: 'Critical after job has been SECONDS seconds in a queue',
|
55
|
+
proc: proc { |seconds| seconds.to_i },
|
56
|
+
default: 300
|
57
|
+
|
58
|
+
def run
|
59
|
+
begin
|
60
|
+
stats = JSON.parse(
|
61
|
+
if config[:auth]
|
62
|
+
open(config[:url], http_basic_authentication: config[:auth]).read
|
63
|
+
else
|
64
|
+
open(config[:url]).read
|
65
|
+
end
|
66
|
+
)
|
67
|
+
|
68
|
+
rescue => error
|
69
|
+
unknown "Could not load Sidekiq stats from #{config[:url]}. Error: #{error}"
|
70
|
+
end
|
71
|
+
|
72
|
+
maximum_latency = stats['queues'].map { |_name, data| data['latency'] }.max
|
73
|
+
total_concurrency = stats['processes'].map { |process| process['concurrency'] }.reduce(&:+) || 0
|
74
|
+
|
75
|
+
if total_concurrency.zero?
|
76
|
+
critical 'There are no Sidekiq workers'
|
77
|
+
end
|
78
|
+
|
79
|
+
if maximum_latency > config[:warn]
|
80
|
+
warning "A job has been in a queue longer than #{config[:warn]} seconds"
|
81
|
+
elsif maximum_latency > config[:crit]
|
82
|
+
critical "A job has been in a queue longer than #{config[:crit]} seconds"
|
83
|
+
end
|
84
|
+
|
85
|
+
ok "Maximum job latency #{maximum_latency}"
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
require 'sensu-plugin/metric/cli'
|
5
|
+
require 'open-uri'
|
6
|
+
require 'json'
|
7
|
+
|
8
|
+
# sidekiq-metrics
|
9
|
+
#
|
10
|
+
# DESCRIPTION:
|
11
|
+
# Pull sidekiq metrics from a sidekiq-monitor-stats enabled endpoint.
|
12
|
+
#
|
13
|
+
# https://github.com/harvesthq/sidekiq-monitor-stats
|
14
|
+
#
|
15
|
+
# OUTPUT:
|
16
|
+
# metric data
|
17
|
+
#
|
18
|
+
# PLATFORMS:
|
19
|
+
# Linux
|
20
|
+
#
|
21
|
+
# DEPENDENCIES:
|
22
|
+
# gem: sensu-plugin
|
23
|
+
# gem: open-uri
|
24
|
+
# gem: json
|
25
|
+
#
|
26
|
+
# LICENSE:
|
27
|
+
# Albert Llop albert@getharvest.com
|
28
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
29
|
+
# for details.
|
30
|
+
#
|
31
|
+
class SidekiqMetrics < Sensu::Plugin::Metric::CLI::Graphite
|
32
|
+
option :url,
|
33
|
+
short: '-u URL',
|
34
|
+
long: '--url URL',
|
35
|
+
description: 'Url to query',
|
36
|
+
required: true
|
37
|
+
|
38
|
+
option :auth,
|
39
|
+
short: '-a USER:PASSWORD',
|
40
|
+
long: '--auth USER:PASSWORD',
|
41
|
+
description: 'Basic auth credentials if you need them',
|
42
|
+
proc: proc { |auth| auth.split(':') }
|
43
|
+
|
44
|
+
option :scheme,
|
45
|
+
description: 'Metric naming scheme, text to prepend to metric',
|
46
|
+
short: '-s SCHEME',
|
47
|
+
long: '--scheme SCHEME',
|
48
|
+
default: 'sidekiq'
|
49
|
+
|
50
|
+
def run
|
51
|
+
begin
|
52
|
+
stats = JSON.parse(
|
53
|
+
if config[:auth]
|
54
|
+
open(config[:url], http_basic_authentication: config[:auth]).read
|
55
|
+
else
|
56
|
+
open(config[:url]).read
|
57
|
+
end
|
58
|
+
)
|
59
|
+
|
60
|
+
rescue => error
|
61
|
+
unknown "Could not load sidekiq stats from #{config[:url]}. Error: #{error}"
|
62
|
+
end
|
63
|
+
|
64
|
+
total_concurrency = stats['processes'].map { |process| process['concurrency'] }.reduce(&:+) || 0
|
65
|
+
total_busy = stats['processes'].map { |process| process['busy'] }.reduce(&:+) || 0
|
66
|
+
maximum_latency = stats['queues'].map { |_name, data| data['latency'] }.max
|
67
|
+
|
68
|
+
output "#{config[:scheme]}.concurrency", total_concurrency
|
69
|
+
output "#{config[:scheme]}.busy", total_busy
|
70
|
+
output "#{config[:scheme]}.latency", maximum_latency
|
71
|
+
|
72
|
+
ok
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'sensu-plugins-sidekiq/version'
|
metadata
ADDED
@@ -0,0 +1,250 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sensu-plugins-sidekiq-moj
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Sensu-Plugins and contributors
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDdDCCAlygAwIBAgIBATANBgkqhkiG9w0BAQUFADBAMREwDwYDVQQDDAhqb25h
|
14
|
+
dGhhbjEWMBQGCgmSJomT8ixkARkWBmphaWtvbzETMBEGCgmSJomT8ixkARkWA2Nv
|
15
|
+
bTAeFw0xNTExMjQxNDU3NDdaFw0xNjExMjMxNDU3NDdaMEAxETAPBgNVBAMMCGpv
|
16
|
+
bmF0aGFuMRYwFAYKCZImiZPyLGQBGRYGamFpa29vMRMwEQYKCZImiZPyLGQBGRYD
|
17
|
+
Y29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxozHVl4H0pHB5hIm
|
18
|
+
DxNM7gHy7RL/cQMUrNaLKyaeKOzEMiMc/HwxaJeDkWnJ3JaohX3zKzMfkD6JuAcS
|
19
|
+
ICgPrVZzyd51MI6y0hPZm/p3jS0BdIU5G2vgGSAG3dgAetvdLUihHmHrI5kiKsia
|
20
|
+
q2RWHaqbJnRxquRkBW0gyj6saIGNXhWQ1Et4VHfjrFujMwfHCXZ65JmcADq5zxCZ
|
21
|
+
4Yb/6BTfMl9qmBnzHKvUHzytn6jKcMHh8Uvwk1Cs6b/+w2jMEqg0WwDnuKvCVeyG
|
22
|
+
a3KvoQ2jLegmSLy+hmCp8vr1rM59w0rWegdY13tJjxa3rJJYwjjilfnCHYe2jteY
|
23
|
+
uxLZNQIDAQABo3kwdzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU
|
24
|
+
RYjaq2TjsQ3fuCA14sz7AqXrGFwwHgYDVR0RBBcwFYETam9uYXRoYW5AamFpa29v
|
25
|
+
LmNvbTAeBgNVHRIEFzAVgRNqb25hdGhhbkBqYWlrb28uY29tMA0GCSqGSIb3DQEB
|
26
|
+
BQUAA4IBAQBjuhZiR4E5EG6hpvSjxnUSc6ZttTuShlGJg7BDz4U3+GXEbolvsBqn
|
27
|
+
+Yej7j21GLOBWgB8CjiaweZ95cqL4TSsjwIwnWY67J83SPCxkZAS10bwZGktZiqx
|
28
|
+
H7BEjtlph9yjQRPkZRscrcb7LYzPp6ywPAgHobdEbGlpoxPqRiYGQc2Cn1uhH4DY
|
29
|
+
shF3YNFUwgXKmFLmWOAjREgBvNwcjPlCMMnoVZp/+qdWGZv8iCO+iiYcROmK8YSQ
|
30
|
+
FPluaBtvO1HKs3gqTyV0h1pDqFo+6Pd3gjFrtwJKoCWgynNuZu8uWTjKzDvY9JSR
|
31
|
+
UiPnkeOL6RAiMzs1HxUQTzP/8ZQKMpqO
|
32
|
+
-----END CERTIFICATE-----
|
33
|
+
date: 2015-11-24 00:00:00.000000000 Z
|
34
|
+
dependencies:
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: json
|
37
|
+
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - '='
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: 1.8.2
|
42
|
+
type: :runtime
|
43
|
+
prerelease: false
|
44
|
+
version_requirements: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - '='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 1.8.2
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: sensu-plugin
|
51
|
+
requirement: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - '='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 1.2.0
|
56
|
+
type: :runtime
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - '='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 1.2.0
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
name: codeclimate-test-reporter
|
65
|
+
requirement: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0.4'
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0.4'
|
77
|
+
- !ruby/object:Gem::Dependency
|
78
|
+
name: rubocop
|
79
|
+
requirement: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - '='
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: 0.32.1
|
84
|
+
type: :development
|
85
|
+
prerelease: false
|
86
|
+
version_requirements: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - '='
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 0.32.1
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: rspec
|
93
|
+
requirement: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - "~>"
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '3.1'
|
98
|
+
type: :development
|
99
|
+
prerelease: false
|
100
|
+
version_requirements: !ruby/object:Gem::Requirement
|
101
|
+
requirements:
|
102
|
+
- - "~>"
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: '3.1'
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: bundler
|
107
|
+
requirement: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - "~>"
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '1.7'
|
112
|
+
type: :development
|
113
|
+
prerelease: false
|
114
|
+
version_requirements: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - "~>"
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: '1.7'
|
119
|
+
- !ruby/object:Gem::Dependency
|
120
|
+
name: rake
|
121
|
+
requirement: !ruby/object:Gem::Requirement
|
122
|
+
requirements:
|
123
|
+
- - "~>"
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '10.0'
|
126
|
+
type: :development
|
127
|
+
prerelease: false
|
128
|
+
version_requirements: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - "~>"
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '10.0'
|
133
|
+
- !ruby/object:Gem::Dependency
|
134
|
+
name: github-markup
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - "~>"
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '1.3'
|
140
|
+
type: :development
|
141
|
+
prerelease: false
|
142
|
+
version_requirements: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - "~>"
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '1.3'
|
147
|
+
- !ruby/object:Gem::Dependency
|
148
|
+
name: redcarpet
|
149
|
+
requirement: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - "~>"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '3.2'
|
154
|
+
type: :development
|
155
|
+
prerelease: false
|
156
|
+
version_requirements: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - "~>"
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '3.2'
|
161
|
+
- !ruby/object:Gem::Dependency
|
162
|
+
name: yard
|
163
|
+
requirement: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - "~>"
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0.8'
|
168
|
+
type: :development
|
169
|
+
prerelease: false
|
170
|
+
version_requirements: !ruby/object:Gem::Requirement
|
171
|
+
requirements:
|
172
|
+
- - "~>"
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '0.8'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: pry
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - "~>"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0.10'
|
182
|
+
type: :development
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '0.10'
|
189
|
+
- !ruby/object:Gem::Dependency
|
190
|
+
name: timerizer
|
191
|
+
requirement: !ruby/object:Gem::Requirement
|
192
|
+
requirements:
|
193
|
+
- - "~>"
|
194
|
+
- !ruby/object:Gem::Version
|
195
|
+
version: 0.1.4
|
196
|
+
type: :runtime
|
197
|
+
prerelease: false
|
198
|
+
version_requirements: !ruby/object:Gem::Requirement
|
199
|
+
requirements:
|
200
|
+
- - "~>"
|
201
|
+
- !ruby/object:Gem::Version
|
202
|
+
version: 0.1.4
|
203
|
+
description: Sensu sidekiq plugins
|
204
|
+
email: "<sensu-users@googlegroups.com>"
|
205
|
+
executables:
|
206
|
+
- check-sidekiq-dead-queue.rb
|
207
|
+
- check-sidekiq.rb
|
208
|
+
- metrics-sidekiq.rb
|
209
|
+
extensions: []
|
210
|
+
extra_rdoc_files: []
|
211
|
+
files:
|
212
|
+
- CHANGELOG.md
|
213
|
+
- LICENSE
|
214
|
+
- README.md
|
215
|
+
- bin/check-sidekiq-dead-queue.rb
|
216
|
+
- bin/check-sidekiq.rb
|
217
|
+
- bin/metrics-sidekiq.rb
|
218
|
+
- lib/sensu-plugins-sidekiq.rb
|
219
|
+
- lib/sensu-plugins-sidekiq/version.rb
|
220
|
+
homepage: https://github.com/sensu-plugins/sensu-plugins-sidekiq
|
221
|
+
licenses:
|
222
|
+
- MIT
|
223
|
+
metadata:
|
224
|
+
maintainer: sensu-plugin
|
225
|
+
development_status: active
|
226
|
+
production_status: unstable - testing recommended
|
227
|
+
release_draft: 'false'
|
228
|
+
release_prerelease: 'false'
|
229
|
+
post_install_message: You can use the embedded Ruby by setting EMBEDDED_RUBY=true
|
230
|
+
in /etc/default/sensu
|
231
|
+
rdoc_options: []
|
232
|
+
require_paths:
|
233
|
+
- lib
|
234
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
235
|
+
requirements:
|
236
|
+
- - ">="
|
237
|
+
- !ruby/object:Gem::Version
|
238
|
+
version: 1.9.3
|
239
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
240
|
+
requirements:
|
241
|
+
- - ">="
|
242
|
+
- !ruby/object:Gem::Version
|
243
|
+
version: '0'
|
244
|
+
requirements: []
|
245
|
+
rubyforge_project:
|
246
|
+
rubygems_version: 2.4.5.1
|
247
|
+
signing_key:
|
248
|
+
specification_version: 4
|
249
|
+
summary: Sensu plugins for sidekiq
|
250
|
+
test_files: []
|
metadata.gz.sig
ADDED
Binary file
|