sensu-plugins-aws 6.0.1 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -6
- data/README.md +3 -0
- data/bin/check-ebs-burst-limit.rb +2 -2
- data/bin/check-eni-status.rb +110 -0
- data/bin/check-sqs-messages.rb +4 -4
- data/lib/sensu-plugins-aws/version.rb +2 -2
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3cdde9fa46f872658ce2396d7bf0f2f5862e9a86
|
4
|
+
data.tar.gz: 6342b8ccc60c5ed59c362346d57af0bbdcd40b3c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d721df6822b4df50b498de6a2172d37827da1a2b8ad6224d5be4f90749ab45961d988cf6712cd4ffa165135da52b38198ff0657c034bdc8536d3ca6bc221c915
|
7
|
+
data.tar.gz: a04f839915ef6cb365c276b4c6d2e972d62a7fd3bbc7f358be49c0a1711f9465c724963bb8539dbae96cbf4a82a2bb1f78ef8490496f21e13415fd71e84af9d7
|
data/CHANGELOG.md
CHANGED
@@ -4,11 +4,16 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
4
4
|
This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
|
-
|
7
|
+
|
8
|
+
## [6.1.0] - 2017-06-23
|
9
|
+
### Added
|
10
|
+
- check-eni-status.rb: new check to monitor the status of one or more ENI
|
11
|
+
|
12
|
+
## [6.0.1] - 2017-05-11
|
8
13
|
### Fixed
|
9
14
|
- check-instance-events.rb: fix instance Name tag retrieval that broke upon aws sdk v2 update, and update output message handling (@swibowo)
|
10
15
|
|
11
|
-
## 6.0.0
|
16
|
+
## [6.0.0] - 2017-05-10
|
12
17
|
### Breaking Change
|
13
18
|
- check-elb-nodes.rb returns critical instead of unknown if total number of nodes equals zero (@autarchprinceps)
|
14
19
|
|
@@ -307,12 +312,13 @@ WARNING: This release contains major breaking changes that will impact all user
|
|
307
312
|
### Added
|
308
313
|
- initial release
|
309
314
|
|
310
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/6.0
|
315
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/6.1.0...HEAD
|
316
|
+
[6.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/6.0.1...6.1.0
|
311
317
|
[6.0.1]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/6.0.0...6.0.1
|
312
318
|
[6.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/5.1.0...6.0.0
|
313
|
-
[5.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/5.
|
314
|
-
[5.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/
|
315
|
-
[4.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/4.
|
319
|
+
[5.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/5.0.0...5.1.0
|
320
|
+
[5.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/4.1.0...5.0.0
|
321
|
+
[4.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/4.0.0...4.1.0
|
316
322
|
[4.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/3.2.1...4.0.0
|
317
323
|
[3.2.1]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/3.2.0...3.2.1
|
318
324
|
[3.2.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/3.1.0...3.2.0
|
data/README.md
CHANGED
@@ -68,6 +68,8 @@
|
|
68
68
|
|
69
69
|
**check-emr-steps.rb**
|
70
70
|
|
71
|
+
**check-eni-status.rb**
|
72
|
+
|
71
73
|
**check-instance-events.rb**
|
72
74
|
|
73
75
|
**check-instance-health.rb**
|
@@ -175,6 +177,7 @@
|
|
175
177
|
* /bin/check-elb-sum-requests.rb
|
176
178
|
* /bin/check-emr-cluster.rb
|
177
179
|
* /bin/check-emr-steps.rb
|
180
|
+
* /bin/check-eni-status.rb
|
178
181
|
* /bin/check-instance-events.rb
|
179
182
|
* /bin/check-rds-events.rb
|
180
183
|
* /bin/check-rds-pending.rb
|
@@ -40,14 +40,14 @@ class CheckEbsBurstLimit < Sensu::Plugin::Check::CLI
|
|
40
40
|
default: 'us-east-1'
|
41
41
|
|
42
42
|
option :critical,
|
43
|
-
description: 'Trigger a critical when ebs
|
43
|
+
description: 'Trigger a critical when ebs burst limit is under VALUE',
|
44
44
|
short: '-c VALUE',
|
45
45
|
long: '--critical VALUE',
|
46
46
|
proc: proc(&:to_f),
|
47
47
|
required: true
|
48
48
|
|
49
49
|
option :warning,
|
50
|
-
description: 'Trigger a warning when ebs
|
50
|
+
description: 'Trigger a warning when ebs burst limit is under VALUE',
|
51
51
|
short: '-w VALUE',
|
52
52
|
long: '--warning VALUE',
|
53
53
|
proc: proc(&:to_f)
|
@@ -0,0 +1,110 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# check-eni-status
|
4
|
+
#
|
5
|
+
# DESCRIPTION:
|
6
|
+
# This plugin checks the status of an elastic network interface
|
7
|
+
#
|
8
|
+
# OUTPUT:
|
9
|
+
# plain-text
|
10
|
+
#
|
11
|
+
# PLATFORMS:
|
12
|
+
# Linux
|
13
|
+
#
|
14
|
+
# DEPENDENCIES:
|
15
|
+
# gem: aws-sdk-v2
|
16
|
+
# gem: sensu-plugin
|
17
|
+
#
|
18
|
+
# USAGE:
|
19
|
+
# check-eni-status -e eni -w in-use -r region
|
20
|
+
# check-eni-status -e eni -c available -r region
|
21
|
+
#
|
22
|
+
# NOTES:
|
23
|
+
#
|
24
|
+
# LICENSE:
|
25
|
+
# Copyright (c) 2013, Damien DURANT <damien.durant@edifixio.com>
|
26
|
+
# Released under the same terms as Sensu (the MIT license); see LICENSE
|
27
|
+
# for details.
|
28
|
+
#
|
29
|
+
|
30
|
+
require 'sensu-plugin/check/cli'
|
31
|
+
require 'sensu-plugins-aws'
|
32
|
+
require 'aws-sdk'
|
33
|
+
|
34
|
+
#
|
35
|
+
# Check ENI Status
|
36
|
+
#
|
37
|
+
class ENIStatus < Sensu::Plugin::Check::CLI
|
38
|
+
include Common
|
39
|
+
|
40
|
+
option :aws_region,
|
41
|
+
short: '-r AWS_REGION',
|
42
|
+
long: '--aws-region REGION',
|
43
|
+
description: 'AWS Region (defaults to us-east-1).',
|
44
|
+
default: 'us-east-1'
|
45
|
+
|
46
|
+
option :eni,
|
47
|
+
short: '-e ENI_ID',
|
48
|
+
long: '--eni ENI_ID',
|
49
|
+
description: 'A comma seperated list of the Elastic Network Interfaces to check',
|
50
|
+
default: ''
|
51
|
+
|
52
|
+
option :warn_status,
|
53
|
+
short: '-w STATUS',
|
54
|
+
long: '--warn STATUS',
|
55
|
+
description: 'ENI status considered to be a warning',
|
56
|
+
default: ''
|
57
|
+
|
58
|
+
option :crit_status,
|
59
|
+
short: '-c STATUS',
|
60
|
+
long: '--crit STATUS',
|
61
|
+
description: 'ENI status considered to be critical',
|
62
|
+
default: ''
|
63
|
+
|
64
|
+
def aws_config
|
65
|
+
{ access_key_id: config[:aws_access_key],
|
66
|
+
secret_access_key: config[:aws_secret_access_key],
|
67
|
+
region: config[:aws_region] }
|
68
|
+
end
|
69
|
+
|
70
|
+
def run
|
71
|
+
Aws.config.update(aws_config)
|
72
|
+
client = Aws::EC2::Client.new
|
73
|
+
|
74
|
+
if config[:eni].empty?
|
75
|
+
critical 'Error, ENI(s) should be specified.'
|
76
|
+
end
|
77
|
+
|
78
|
+
if config[:crit_status].empty?
|
79
|
+
if config[:warn_status].empty?
|
80
|
+
critical 'Error, either crit_status or warn_status must be specified'
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
warnings = []
|
85
|
+
crits = []
|
86
|
+
|
87
|
+
eni = config[:eni].split(',')
|
88
|
+
eni.each do |e|
|
89
|
+
status = client.describe_network_interfaces(
|
90
|
+
filters: [{ name: 'network-interface-id', values: [e] }]
|
91
|
+
)[:network_interfaces].first
|
92
|
+
|
93
|
+
if status.nil?
|
94
|
+
warnings << "No Information found for #{e}"
|
95
|
+
elsif config[:crit_status].casecmp(status[:status]) == 0
|
96
|
+
crits << "#{e} is #{status[:status]}"
|
97
|
+
elsif config[:warn_status].casecmp(status[:status]) == 0
|
98
|
+
warnings << "#{e} is #{status[:status]}"
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
if crits.any?
|
103
|
+
critical crits.join(', ').to_s
|
104
|
+
elsif warnings.any?
|
105
|
+
warning warnings.join(', ').to_s
|
106
|
+
else
|
107
|
+
ok "all queue(s): #{queues} are OK"
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
data/bin/check-sqs-messages.rb
CHANGED
@@ -12,12 +12,12 @@
|
|
12
12
|
# Linux
|
13
13
|
#
|
14
14
|
# DEPENDENCIES:
|
15
|
-
# gem: aws-sdk-
|
15
|
+
# gem: aws-sdk-v2
|
16
16
|
# gem: sensu-plugin
|
17
17
|
#
|
18
18
|
# USAGE:
|
19
|
-
# check-sqs-messages -q my_queue -
|
20
|
-
# check-sqs-messages -p queue_prefix_ -
|
19
|
+
# check-sqs-messages -q my_queue -w 500 -c 1000
|
20
|
+
# check-sqs-messages -p queue_prefix_ -W 100 -C 50
|
21
21
|
#
|
22
22
|
# NOTES:
|
23
23
|
#
|
@@ -56,7 +56,7 @@ class SQSMsgs < Sensu::Plugin::Check::CLI
|
|
56
56
|
default: ''
|
57
57
|
|
58
58
|
option :metric,
|
59
|
-
short: '-m
|
59
|
+
short: '-m METRIC',
|
60
60
|
long: '--metric METRIC',
|
61
61
|
description: 'The metric of the queues you want to check the number of messages for',
|
62
62
|
default: 'ApproximateNumberOfMessages'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensu-plugins-aws
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.0
|
4
|
+
version: 6.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sensu-Plugins and contributors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|
@@ -287,6 +287,7 @@ executables:
|
|
287
287
|
- check-elb-sum-requests.rb
|
288
288
|
- check-emr-cluster.rb
|
289
289
|
- check-emr-steps.rb
|
290
|
+
- check-eni-status.rb
|
290
291
|
- check-instance-events.rb
|
291
292
|
- check-instance-health.rb
|
292
293
|
- check-instance-reachability.rb
|
@@ -366,6 +367,7 @@ files:
|
|
366
367
|
- bin/check-elb-sum-requests.rb
|
367
368
|
- bin/check-emr-cluster.rb
|
368
369
|
- bin/check-emr-steps.rb
|
370
|
+
- bin/check-eni-status.rb
|
369
371
|
- bin/check-instance-events.rb
|
370
372
|
- bin/check-instance-health.rb
|
371
373
|
- bin/check-instance-reachability.rb
|