sensu-plugins-aws 4.1.0 → 5.0.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 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()