sensu-plugins-aws 4.1.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ffd1f6a42abd1a5201a34df72564a7774a7f3c29
4
- data.tar.gz: 38cf5c5cc6c757dcef503d825c50938ef02f2158
3
+ metadata.gz: 3d3bd06b2e135c2aa0476252fb837eb022432933
4
+ data.tar.gz: f8fa65a2aac1d049b5e2fe160c5c9025a6e579be
5
5
  SHA512:
6
- metadata.gz: c56ed6c76d340f357509aae2676c0b0a1aac1ebff884aa71d50b3332207887c70102255885ea4359a320fbd7dc8bec463e0002baa23aaa35e6894e93a2176d72
7
- data.tar.gz: ca41201cc25e0ba58658c5bdedf4717c6d8150fdcd5fd8f0d790ce4f8f4dacfe3f7fd6eea3cbb8996347cdb754be8104ae95ab6842c5212af3f2ec5e25bf10f4
6
+ metadata.gz: ee628849a14a95a447b7bc7d776bc92966d4772a4e3a4fe094c9e5905a5e6c5665974ecd0ee6a6e1df17287c84a0e3f989a410d5d33fe5a46780e27771a8a26f
7
+ data.tar.gz: ae0efd4a9705832898109d163d552251e5fa77bbe32c61b51ed79282b6ededd9ddd1a9d657b0e60ac0d1aea71a8c9dd77118609ccdbb1278c3cee7beebf88313
data/CHANGELOG.md CHANGED
@@ -5,6 +5,14 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [5.0.0] - 2017-05-03
9
+ ### Breaking Change
10
+ - removed check_vpc_vpn.py as it is broken and not worth fixing when `check-vpc-vpn.rb` is the direction forward. (@majormoses)
11
+
12
+ ### Fixed
13
+ - check-instance-health.rb now supports checking more than 100 instances (aws api limit) by batching into multiple requests if needed. (@majormoses)
14
+ - check-elb-fog.rb set the variable name fog expects (@majormoses)
15
+
8
16
  ## [4.1.0] - 2017-05-01
9
17
  ### Added
10
18
  - check-cloudwatch-composite-metric.rb: Allow calculation of percentage for cloudwatch metrics by composing two metrics (@cornelf) (numerator_metric/denominator_metric * 100) as a percentage. This is useful to skip pushing such metrics to graphite in order to get the percentage metric computed.
@@ -289,7 +297,8 @@ WARNING: This release contains major breaking changes that will impact all user
289
297
  ### Added
290
298
  - initial release
291
299
 
292
- [Unreleased]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/4.1.0...HEAD
300
+ [Unreleased]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/5.0.0...HEAD
301
+ [5.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/5.0.0...4.1.0
293
302
  [4.1.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/4.1.0...4.0.0
294
303
  [4.0.0]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/3.2.1...4.0.0
295
304
  [3.2.1]: https://github.com/sensu-plugins/sensu-plugins-aws/compare/3.2.0...3.2.1
data/README.md CHANGED
@@ -104,8 +104,6 @@
104
104
 
105
105
  **check-vpc-nameservers**
106
106
 
107
- **check_vpc_vpn.py**
108
-
109
107
  **check-instances-count.rb**
110
108
 
111
109
  **check-vpc-vpn.rb**
@@ -81,8 +81,8 @@ class ELBHealth < Sensu::Plugin::Check::CLI
81
81
  end
82
82
 
83
83
  def aws_config
84
- { access_key_id: config[:aws_access_key],
85
- secret_access_key: config[:aws_secret_access_key],
84
+ { aws_access_key_id: config[:aws_access_key],
85
+ aws_secret_access_key: config[:aws_secret_access_key],
86
86
  region: config[:aws_region] }
87
87
  end
88
88
 
@@ -75,19 +75,24 @@ class CheckInstanceEvents < Sensu::Plugin::Check::CLI
75
75
  end
76
76
 
77
77
  begin
78
- resp = ec2.describe_instance_status(instance_ids: instance_ids)
79
- resp.instance_statuses.each do |item|
80
- id = item.instance_id
81
- if gather_events(item.events)
82
- messages << "#{id} has unscheduled events"
83
- end
78
+ resp = []
79
+ instance_ids.each_slice(100) do |batch|
80
+ resp << ec2.describe_instance_status(instance_ids: batch)
81
+ end
82
+ resp.each do |r|
83
+ r.instance_statuses.each do |item|
84
+ id = item.instance_id
85
+ if gather_events(item.events)
86
+ messages << "#{id} has unscheduled events"
87
+ end
84
88
 
85
- if gather_status(item.system_status)
86
- messages << "#{id} has failed system status checks"
87
- end
89
+ if gather_status(item.system_status)
90
+ messages << "#{id} has failed system status checks"
91
+ end
88
92
 
89
- if gather_status(item.instance_status)
90
- messages << "#{id} has failed instance status checks"
93
+ if gather_status(item.instance_status)
94
+ messages << "#{id} has failed instance status checks"
95
+ end
91
96
  end
92
97
  end
93
98
  rescue => e
@@ -1,7 +1,7 @@
1
1
  module SensuPluginsAWS
2
2
  module Version
3
- MAJOR = 4
4
- MINOR = 1
3
+ MAJOR = 5
4
+ MINOR = 0
5
5
  PATCH = 0
6
6
  VER_STRING = [MAJOR, MINOR, PATCH].compact.join('.')
7
7
  end
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: 4.1.0
4
+ version: 5.0.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-05-02 00:00:00.000000000 Z
11
+ date: 2017-05-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
54
  version: 1.32.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: fog-core
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '='
60
+ - !ruby/object:Gem::Version
61
+ version: 1.43.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '='
67
+ - !ruby/object:Gem::Version
68
+ version: 1.43.0
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: right_aws
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -376,7 +390,6 @@ files:
376
390
  - bin/check-trustedadvisor-service-limits.rb
377
391
  - bin/check-vpc-nameservers.rb
378
392
  - bin/check-vpc-vpn.rb
379
- - bin/check_vpc_vpn.py
380
393
  - bin/handler-ec2_node.rb
381
394
  - bin/handler-scale-asg-down.rb
382
395
  - bin/handler-scale-asg-up.rb
data/bin/check_vpc_vpn.py DELETED
@@ -1,42 +0,0 @@
1
- #!/usr/bin/python
2
-
3
- # #RED
4
- import argparse
5
- import boto.ec2
6
- from boto.vpc import VPCConnection
7
- import sys
8
-
9
-
10
- def main():
11
- try:
12
- conn = boto.vpc.VPCConnection(aws_access_key_id=args.aws_access_key_id, aws_secret_access_key=args.aws_secret_access_key, region=boto.ec2.get_region(args.region))
13
- except:
14
- print "UNKNOWN: Unable to connect to reqion %s" % args.region
15
- sys.exit(3)
16
-
17
- errors = []
18
- for vpn_connection in conn.get_all_vpn_connections():
19
- for tunnel in vpn_connection.tunnels:
20
- if tunnel.status != 'UP':
21
- errors.append("[gateway: %s connection: %s tunnel: %s status: %s]" % (vpn_connection.vpn_gateway_id, vpn_connection.id, tunnel.outside_ip_address, tunnel.status))
22
-
23
- if len(errors) > 1:
24
- print 'CRITICAL: ' + ' '.join(errors)
25
- sys.exit(2)
26
- elif len(errors) > 0:
27
- print 'WARN: ' + ' '.join(errors)
28
- sys.exit(1)
29
- else:
30
- print 'OK'
31
- sys.exit(0)
32
-
33
- if __name__ == "__main__":
34
- parser = argparse.ArgumentParser(description='Check status of all existing AWS VPC VPN Tunnels')
35
-
36
- parser.add_argument('-a', '--aws-access-key-id', required=True, dest='aws_access_key_id', help='AWS Access Key')
37
- parser.add_argument('-s', '--aws-secret-access-key', required=True, dest='aws_secret_access_key', help='AWS Secret Access Key')
38
- parser.add_argument('-r', '--region', required=True, dest='region', help='AWS Region')
39
-
40
- args = parser.parse_args()
41
-
42
- main()