cfn-guardian 0.7.12 → 0.7.13

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
  SHA256:
3
- metadata.gz: 417f7145c2f3ed6aad68367aed3a0390079df27be61d8cf8ac32909d349b3483
4
- data.tar.gz: c5626e55e419a321a3be745dabb9cedb268a6552bedbf45834ebe448c42ecaf4
3
+ metadata.gz: 4a230076e5d4d93c1a41be549943f3dbb745662a8faaf04afc176a1b75d3cc8f
4
+ data.tar.gz: 036a95941c4c8e50641d4ee7e0bfdb4e2f842b125756898599af3055843ca8f0
5
5
  SHA512:
6
- metadata.gz: 19940d4b1a253b4fd2a87994a6232ecc0e93108fb565fe1d6ad20b9f813ad7a8a05ce2c67a3307bddcbb28142f48907f246a8da1328facf8be5567c0e4a7856b
7
- data.tar.gz: 99c1c4aae4a204495e47010a81e091a3ebf20a33df5746a69ba964bb23af90cfdaba322d1f948a3978893b86e419269e1f9a6da793816d1fb05b48324361b3df
6
+ metadata.gz: d54543ea87af6922725b6d5955b0f473d037be50de85eca77e6925f5534307ed37648085befc64a3f6753ccd0224ef00f65b666e1109324925596858c2cdd85b
7
+ data.tar.gz: bc5d74d51b7559bb5d3ddcabfc8ef9a0cac3b4e1f679e1267d41149a3f6ebc2108962cbd19e4eda8eb1b96c4e574711ee7fc63e8a955495e54796f33ecd217b9
data/Dockerfile CHANGED
@@ -1,6 +1,6 @@
1
1
  FROM ruby:2.7-alpine
2
2
 
3
- ARG GUARDIAN_VERSION="0.7.7"
3
+ ARG GUARDIAN_VERSION="0.7.11"
4
4
 
5
5
  COPY . /src
6
6
 
data/docs/overview.md CHANGED
@@ -6,7 +6,7 @@
6
6
  3. [Alarm Templates](alarm_templates.md)
7
7
  4. Custom Checks
8
8
  1. [HTTP](custom_checks/http.md)
9
- 2. [Domain Expirey](custom_checks/domain_expirey.md)
9
+ 2. [Domain Expiry](custom_checks/domain_expiry.md)
10
10
  3. [LogGroup Metric Filters](custom_checks/log_group_metric_filters.md)
11
11
  4. [NRPE](custom_checks/nrpe.md)
12
12
  5. [Port](custom_checks/port.md)
data/docs/resources.md CHANGED
@@ -56,6 +56,8 @@ Resources:
56
56
  | CloudFrontDistribution | Id |
57
57
  | SQSQueue | Id |
58
58
  | ElasticSearch | Id, Domain |
59
+ | DMSCluster | Id |
60
+ | DMSTask | Id, Instance |
59
61
 
60
62
 
61
63
  ## Custom Resource Groups
@@ -12,6 +12,8 @@ require 'cfnguardian/resources/autoscaling_group'
12
12
  require 'cfnguardian/resources/cloudfront_distribution'
13
13
  require 'cfnguardian/resources/autoscaling_group'
14
14
  require 'cfnguardian/resources/domain_expiry'
15
+ require 'cfnguardian/resources/dms_task'
16
+ require 'cfnguardian/resources/dms_cluster'
15
17
  require 'cfnguardian/resources/documentdb_cluster'
16
18
  require 'cfnguardian/resources/dynamodb_table'
17
19
  require 'cfnguardian/resources/ec2_instance'
@@ -154,6 +154,29 @@ module CfnGuardian
154
154
  end
155
155
  end
156
156
 
157
+ class DMSTaskAlarm < BaseAlarm
158
+ def initialize(resource)
159
+ super(resource)
160
+ @group = 'DMSTask'
161
+ @namespace = 'AWS/DMS'
162
+ @dimensions = {
163
+ ReplicationTaskIdentifier: resource['Id'],
164
+ ReplicationInstanceIdentifier: resource['Instance']
165
+ }
166
+ end
167
+ end
168
+
169
+ class DMSClusterAlarm < BaseAlarm
170
+ def initialize(resource)
171
+ super(resource)
172
+ @group = 'DMSCluster'
173
+ @namespace = 'AWS/DMS'
174
+ @dimensions = {
175
+ ReplicationInstanceIdentifier: resource['Id']
176
+ }
177
+ end
178
+ end
179
+
157
180
  class DocumentDBClusterAlarm < BaseAlarm
158
181
  def initialize(resource)
159
182
  super(resource)
@@ -0,0 +1,40 @@
1
+ module CfnGuardian::Resource
2
+ class DMSCluster < Base
3
+
4
+ def default_alarms
5
+ alarm = CfnGuardian::Models::DMSClusterAlarm.new(@resource)
6
+ alarm.name = 'CPUUtilizationHighSpike'
7
+ alarm.metric_name = 'CPUUtilization'
8
+ alarm.threshold = 90
9
+ alarm.statistic = 'Minimum'
10
+ alarm.evaluation_periods = 10
11
+ @alarms.push(alarm)
12
+
13
+ alarm = CfnGuardian::Models::DMSClusterAlarm.new(@resource)
14
+ alarm.name = 'CPUUtilizationHighBase'
15
+ alarm.metric_name = 'CPUUtilization'
16
+ alarm.threshold = 95
17
+ alarm.evaluation_periods = 2
18
+ alarm.statistic = 'Maximum'
19
+ alarm.alarm_action = 'Warning'
20
+ @alarms.push(alarm)
21
+
22
+ alarm = CfnGuardian::Models::DMSClusterAlarm.new(@resource)
23
+ alarm.name = 'FreeStorageSpaceCrit'
24
+ alarm.metric_name = 'FreeStorageSpace'
25
+ alarm.statistic = 'Minimum'
26
+ alarm.threshold = 10000000000
27
+ alarm.evaluation_periods = 1
28
+ @alarms.push(alarm)
29
+
30
+ alarm = CfnGuardian::Models::DMSClusterAlarm.new(@resource)
31
+ alarm.name = 'FreeStorageSpaceWarn'
32
+ alarm.metric_name = 'FreeStorageSpace'
33
+ alarm.statistic = 'Minimum'
34
+ alarm.threshold = 20000000000
35
+ alarm.evaluation_periods = 1
36
+ alarm.alarm_action = 'Warning'
37
+ @alarms.push(alarm)
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,42 @@
1
+ module CfnGuardian::Resource
2
+ class DMSTask < Base
3
+
4
+ def default_alarms
5
+ alarm = CfnGuardian::Models::DMSTaskAlarm.new(@resource)
6
+ alarm.name = 'CDCLatencySourceCritical'
7
+ alarm.metric_name = 'CDCLatencySource'
8
+ alarm.statistic = 'Minimum'
9
+ alarm.threshold = 30
10
+ alarm.evaluation_periods = 10
11
+ alarm.enabled = false
12
+ @alarms.push(alarm)
13
+
14
+ alarm = CfnGuardian::Models::DMSTaskAlarm.new(@resource)
15
+ alarm.name = 'CDCLatencySourceWarn'
16
+ alarm.metric_name = 'CDCLatencySource'
17
+ alarm.statistic = 'Minimum'
18
+ alarm.threshold = 30
19
+ alarm.evaluation_periods = 1
20
+ alarm.enabled = false
21
+ @alarms.push(alarm)
22
+
23
+ alarm = CfnGuardian::Models::DMSTaskAlarm.new(@resource)
24
+ alarm.name = 'CDCLatencyTargetCritical'
25
+ alarm.metric_name = 'CDCLatencyTarget'
26
+ alarm.statistic = 'Minimum'
27
+ alarm.threshold = 30
28
+ alarm.evaluation_periods = 10
29
+ alarm.enabled = false
30
+ @alarms.push(alarm)
31
+
32
+ alarm = CfnGuardian::Models::DMSTaskAlarm.new(@resource)
33
+ alarm.name = 'CDCLatencyTargetWarn'
34
+ alarm.metric_name = 'CDCLatencyTarget'
35
+ alarm.statistic = 'Minimum'
36
+ alarm.threshold = 30
37
+ alarm.evaluation_periods = 1
38
+ alarm.enabled = false
39
+ @alarms.push(alarm)
40
+ end
41
+ end
42
+ end
@@ -1,4 +1,4 @@
1
1
  module CfnGuardian
2
- VERSION = "0.7.12"
2
+ VERSION = "0.7.13"
3
3
  CHANGE_SET_VERSION = VERSION.gsub('.', '-').freeze
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfn-guardian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.12
4
+ version: 0.7.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Guslington
@@ -280,6 +280,8 @@ files:
280
280
  - lib/cfnguardian/resources/base.rb
281
281
  - lib/cfnguardian/resources/batch.rb
282
282
  - lib/cfnguardian/resources/cloudfront_distribution.rb
283
+ - lib/cfnguardian/resources/dms_cluster.rb
284
+ - lib/cfnguardian/resources/dms_task.rb
283
285
  - lib/cfnguardian/resources/documentdb_cluster.rb
284
286
  - lib/cfnguardian/resources/domain_expiry.rb
285
287
  - lib/cfnguardian/resources/dynamodb_table.rb