aws-sdk-computeoptimizer 1.7.0 → 1.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-computeoptimizer.rb +1 -1
- data/lib/aws-sdk-computeoptimizer/client.rb +271 -39
- data/lib/aws-sdk-computeoptimizer/client_api.rb +200 -0
- data/lib/aws-sdk-computeoptimizer/types.rb +904 -56
- metadata +4 -4
@@ -33,6 +33,13 @@ module Aws::ComputeOptimizer
|
|
33
33
|
DestinationBucket = Shapes::StringShape.new(name: 'DestinationBucket')
|
34
34
|
DestinationKey = Shapes::StringShape.new(name: 'DestinationKey')
|
35
35
|
DestinationKeyPrefix = Shapes::StringShape.new(name: 'DestinationKeyPrefix')
|
36
|
+
EBSFilter = Shapes::StructureShape.new(name: 'EBSFilter')
|
37
|
+
EBSFilterName = Shapes::StringShape.new(name: 'EBSFilterName')
|
38
|
+
EBSFilters = Shapes::ListShape.new(name: 'EBSFilters')
|
39
|
+
EBSFinding = Shapes::StringShape.new(name: 'EBSFinding')
|
40
|
+
EBSMetricName = Shapes::StringShape.new(name: 'EBSMetricName')
|
41
|
+
EBSUtilizationMetric = Shapes::StructureShape.new(name: 'EBSUtilizationMetric')
|
42
|
+
EBSUtilizationMetrics = Shapes::ListShape.new(name: 'EBSUtilizationMetrics')
|
36
43
|
ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
|
37
44
|
ExportAutoScalingGroupRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsRequest')
|
38
45
|
ExportAutoScalingGroupRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportAutoScalingGroupRecommendationsResponse')
|
@@ -51,14 +58,22 @@ module Aws::ComputeOptimizer
|
|
51
58
|
FilterValues = Shapes::ListShape.new(name: 'FilterValues')
|
52
59
|
Filters = Shapes::ListShape.new(name: 'Filters')
|
53
60
|
Finding = Shapes::StringShape.new(name: 'Finding')
|
61
|
+
FindingReasonCode = Shapes::StringShape.new(name: 'FindingReasonCode')
|
62
|
+
FunctionArn = Shapes::StringShape.new(name: 'FunctionArn')
|
63
|
+
FunctionArns = Shapes::ListShape.new(name: 'FunctionArns')
|
64
|
+
FunctionVersion = Shapes::StringShape.new(name: 'FunctionVersion')
|
54
65
|
GetAutoScalingGroupRecommendationsRequest = Shapes::StructureShape.new(name: 'GetAutoScalingGroupRecommendationsRequest')
|
55
66
|
GetAutoScalingGroupRecommendationsResponse = Shapes::StructureShape.new(name: 'GetAutoScalingGroupRecommendationsResponse')
|
67
|
+
GetEBSVolumeRecommendationsRequest = Shapes::StructureShape.new(name: 'GetEBSVolumeRecommendationsRequest')
|
68
|
+
GetEBSVolumeRecommendationsResponse = Shapes::StructureShape.new(name: 'GetEBSVolumeRecommendationsResponse')
|
56
69
|
GetEC2InstanceRecommendationsRequest = Shapes::StructureShape.new(name: 'GetEC2InstanceRecommendationsRequest')
|
57
70
|
GetEC2InstanceRecommendationsResponse = Shapes::StructureShape.new(name: 'GetEC2InstanceRecommendationsResponse')
|
58
71
|
GetEC2RecommendationProjectedMetricsRequest = Shapes::StructureShape.new(name: 'GetEC2RecommendationProjectedMetricsRequest')
|
59
72
|
GetEC2RecommendationProjectedMetricsResponse = Shapes::StructureShape.new(name: 'GetEC2RecommendationProjectedMetricsResponse')
|
60
73
|
GetEnrollmentStatusRequest = Shapes::StructureShape.new(name: 'GetEnrollmentStatusRequest')
|
61
74
|
GetEnrollmentStatusResponse = Shapes::StructureShape.new(name: 'GetEnrollmentStatusResponse')
|
75
|
+
GetLambdaFunctionRecommendationsRequest = Shapes::StructureShape.new(name: 'GetLambdaFunctionRecommendationsRequest')
|
76
|
+
GetLambdaFunctionRecommendationsResponse = Shapes::StructureShape.new(name: 'GetLambdaFunctionRecommendationsResponse')
|
62
77
|
GetRecommendationError = Shapes::StructureShape.new(name: 'GetRecommendationError')
|
63
78
|
GetRecommendationErrors = Shapes::ListShape.new(name: 'GetRecommendationErrors')
|
64
79
|
GetRecommendationSummariesRequest = Shapes::StructureShape.new(name: 'GetRecommendationSummariesRequest')
|
@@ -80,6 +95,24 @@ module Aws::ComputeOptimizer
|
|
80
95
|
JobId = Shapes::StringShape.new(name: 'JobId')
|
81
96
|
JobIds = Shapes::ListShape.new(name: 'JobIds')
|
82
97
|
JobStatus = Shapes::StringShape.new(name: 'JobStatus')
|
98
|
+
LambdaFunctionMemoryMetricName = Shapes::StringShape.new(name: 'LambdaFunctionMemoryMetricName')
|
99
|
+
LambdaFunctionMemoryMetricStatistic = Shapes::StringShape.new(name: 'LambdaFunctionMemoryMetricStatistic')
|
100
|
+
LambdaFunctionMemoryProjectedMetric = Shapes::StructureShape.new(name: 'LambdaFunctionMemoryProjectedMetric')
|
101
|
+
LambdaFunctionMemoryProjectedMetrics = Shapes::ListShape.new(name: 'LambdaFunctionMemoryProjectedMetrics')
|
102
|
+
LambdaFunctionMemoryRecommendationOption = Shapes::StructureShape.new(name: 'LambdaFunctionMemoryRecommendationOption')
|
103
|
+
LambdaFunctionMemoryRecommendationOptions = Shapes::ListShape.new(name: 'LambdaFunctionMemoryRecommendationOptions')
|
104
|
+
LambdaFunctionMetricName = Shapes::StringShape.new(name: 'LambdaFunctionMetricName')
|
105
|
+
LambdaFunctionMetricStatistic = Shapes::StringShape.new(name: 'LambdaFunctionMetricStatistic')
|
106
|
+
LambdaFunctionRecommendation = Shapes::StructureShape.new(name: 'LambdaFunctionRecommendation')
|
107
|
+
LambdaFunctionRecommendationFilter = Shapes::StructureShape.new(name: 'LambdaFunctionRecommendationFilter')
|
108
|
+
LambdaFunctionRecommendationFilterName = Shapes::StringShape.new(name: 'LambdaFunctionRecommendationFilterName')
|
109
|
+
LambdaFunctionRecommendationFilters = Shapes::ListShape.new(name: 'LambdaFunctionRecommendationFilters')
|
110
|
+
LambdaFunctionRecommendationFinding = Shapes::StringShape.new(name: 'LambdaFunctionRecommendationFinding')
|
111
|
+
LambdaFunctionRecommendationFindingReasonCode = Shapes::StringShape.new(name: 'LambdaFunctionRecommendationFindingReasonCode')
|
112
|
+
LambdaFunctionRecommendationFindingReasonCodes = Shapes::ListShape.new(name: 'LambdaFunctionRecommendationFindingReasonCodes')
|
113
|
+
LambdaFunctionRecommendations = Shapes::ListShape.new(name: 'LambdaFunctionRecommendations')
|
114
|
+
LambdaFunctionUtilizationMetric = Shapes::StructureShape.new(name: 'LambdaFunctionUtilizationMetric')
|
115
|
+
LambdaFunctionUtilizationMetrics = Shapes::ListShape.new(name: 'LambdaFunctionUtilizationMetrics')
|
83
116
|
LastRefreshTimestamp = Shapes::TimestampShape.new(name: 'LastRefreshTimestamp')
|
84
117
|
LastUpdatedTimestamp = Shapes::TimestampShape.new(name: 'LastUpdatedTimestamp')
|
85
118
|
LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
|
@@ -87,6 +120,7 @@ module Aws::ComputeOptimizer
|
|
87
120
|
MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
|
88
121
|
MaxSize = Shapes::IntegerShape.new(name: 'MaxSize')
|
89
122
|
MemberAccountsEnrolled = Shapes::BooleanShape.new(name: 'MemberAccountsEnrolled')
|
123
|
+
MemorySize = Shapes::IntegerShape.new(name: 'MemorySize')
|
90
124
|
Message = Shapes::StringShape.new(name: 'Message')
|
91
125
|
MetadataKey = Shapes::StringShape.new(name: 'MetadataKey')
|
92
126
|
MetricName = Shapes::StringShape.new(name: 'MetricName')
|
@@ -96,6 +130,7 @@ module Aws::ComputeOptimizer
|
|
96
130
|
MinSize = Shapes::IntegerShape.new(name: 'MinSize')
|
97
131
|
MissingAuthenticationToken = Shapes::StructureShape.new(name: 'MissingAuthenticationToken')
|
98
132
|
NextToken = Shapes::StringShape.new(name: 'NextToken')
|
133
|
+
NumberOfInvocations = Shapes::IntegerShape.new(name: 'NumberOfInvocations')
|
99
134
|
OptInRequiredException = Shapes::StructureShape.new(name: 'OptInRequiredException')
|
100
135
|
PerformanceRisk = Shapes::FloatShape.new(name: 'PerformanceRisk')
|
101
136
|
Period = Shapes::IntegerShape.new(name: 'Period')
|
@@ -103,6 +138,8 @@ module Aws::ComputeOptimizer
|
|
103
138
|
ProjectedMetrics = Shapes::ListShape.new(name: 'ProjectedMetrics')
|
104
139
|
ProjectedUtilizationMetrics = Shapes::ListShape.new(name: 'ProjectedUtilizationMetrics')
|
105
140
|
Rank = Shapes::IntegerShape.new(name: 'Rank')
|
141
|
+
ReasonCodeSummaries = Shapes::ListShape.new(name: 'ReasonCodeSummaries')
|
142
|
+
ReasonCodeSummary = Shapes::StructureShape.new(name: 'ReasonCodeSummary')
|
106
143
|
RecommendationExportJob = Shapes::StructureShape.new(name: 'RecommendationExportJob')
|
107
144
|
RecommendationExportJobs = Shapes::ListShape.new(name: 'RecommendationExportJobs')
|
108
145
|
RecommendationOptions = Shapes::ListShape.new(name: 'RecommendationOptions')
|
@@ -132,6 +169,19 @@ module Aws::ComputeOptimizer
|
|
132
169
|
UpdateEnrollmentStatusResponse = Shapes::StructureShape.new(name: 'UpdateEnrollmentStatusResponse')
|
133
170
|
UtilizationMetric = Shapes::StructureShape.new(name: 'UtilizationMetric')
|
134
171
|
UtilizationMetrics = Shapes::ListShape.new(name: 'UtilizationMetrics')
|
172
|
+
VolumeArn = Shapes::StringShape.new(name: 'VolumeArn')
|
173
|
+
VolumeArns = Shapes::ListShape.new(name: 'VolumeArns')
|
174
|
+
VolumeBaselineIOPS = Shapes::IntegerShape.new(name: 'VolumeBaselineIOPS')
|
175
|
+
VolumeBaselineThroughput = Shapes::IntegerShape.new(name: 'VolumeBaselineThroughput')
|
176
|
+
VolumeBurstIOPS = Shapes::IntegerShape.new(name: 'VolumeBurstIOPS')
|
177
|
+
VolumeBurstThroughput = Shapes::IntegerShape.new(name: 'VolumeBurstThroughput')
|
178
|
+
VolumeConfiguration = Shapes::StructureShape.new(name: 'VolumeConfiguration')
|
179
|
+
VolumeRecommendation = Shapes::StructureShape.new(name: 'VolumeRecommendation')
|
180
|
+
VolumeRecommendationOption = Shapes::StructureShape.new(name: 'VolumeRecommendationOption')
|
181
|
+
VolumeRecommendationOptions = Shapes::ListShape.new(name: 'VolumeRecommendationOptions')
|
182
|
+
VolumeRecommendations = Shapes::ListShape.new(name: 'VolumeRecommendations')
|
183
|
+
VolumeSize = Shapes::IntegerShape.new(name: 'VolumeSize')
|
184
|
+
VolumeType = Shapes::StringShape.new(name: 'VolumeType')
|
135
185
|
|
136
186
|
AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
137
187
|
AccessDeniedException.struct_class = Types::AccessDeniedException
|
@@ -177,6 +227,19 @@ module Aws::ComputeOptimizer
|
|
177
227
|
DescribeRecommendationExportJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
178
228
|
DescribeRecommendationExportJobsResponse.struct_class = Types::DescribeRecommendationExportJobsResponse
|
179
229
|
|
230
|
+
EBSFilter.add_member(:name, Shapes::ShapeRef.new(shape: EBSFilterName, location_name: "name"))
|
231
|
+
EBSFilter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
|
232
|
+
EBSFilter.struct_class = Types::EBSFilter
|
233
|
+
|
234
|
+
EBSFilters.member = Shapes::ShapeRef.new(shape: EBSFilter)
|
235
|
+
|
236
|
+
EBSUtilizationMetric.add_member(:name, Shapes::ShapeRef.new(shape: EBSMetricName, location_name: "name"))
|
237
|
+
EBSUtilizationMetric.add_member(:statistic, Shapes::ShapeRef.new(shape: MetricStatistic, location_name: "statistic"))
|
238
|
+
EBSUtilizationMetric.add_member(:value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "value"))
|
239
|
+
EBSUtilizationMetric.struct_class = Types::EBSUtilizationMetric
|
240
|
+
|
241
|
+
EBSUtilizationMetrics.member = Shapes::ShapeRef.new(shape: EBSUtilizationMetric)
|
242
|
+
|
180
243
|
ExportAutoScalingGroupRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
|
181
244
|
ExportAutoScalingGroupRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "filters"))
|
182
245
|
ExportAutoScalingGroupRecommendationsRequest.add_member(:fields_to_export, Shapes::ShapeRef.new(shape: ExportableAutoScalingGroupFields, location_name: "fieldsToExport"))
|
@@ -216,6 +279,8 @@ module Aws::ComputeOptimizer
|
|
216
279
|
|
217
280
|
Filters.member = Shapes::ShapeRef.new(shape: Filter)
|
218
281
|
|
282
|
+
FunctionArns.member = Shapes::ShapeRef.new(shape: FunctionArn)
|
283
|
+
|
219
284
|
GetAutoScalingGroupRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
|
220
285
|
GetAutoScalingGroupRecommendationsRequest.add_member(:auto_scaling_group_arns, Shapes::ShapeRef.new(shape: AutoScalingGroupArns, location_name: "autoScalingGroupArns"))
|
221
286
|
GetAutoScalingGroupRecommendationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
@@ -228,6 +293,18 @@ module Aws::ComputeOptimizer
|
|
228
293
|
GetAutoScalingGroupRecommendationsResponse.add_member(:errors, Shapes::ShapeRef.new(shape: GetRecommendationErrors, location_name: "errors"))
|
229
294
|
GetAutoScalingGroupRecommendationsResponse.struct_class = Types::GetAutoScalingGroupRecommendationsResponse
|
230
295
|
|
296
|
+
GetEBSVolumeRecommendationsRequest.add_member(:volume_arns, Shapes::ShapeRef.new(shape: VolumeArns, location_name: "volumeArns"))
|
297
|
+
GetEBSVolumeRecommendationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
298
|
+
GetEBSVolumeRecommendationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
|
299
|
+
GetEBSVolumeRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: EBSFilters, location_name: "filters"))
|
300
|
+
GetEBSVolumeRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
|
301
|
+
GetEBSVolumeRecommendationsRequest.struct_class = Types::GetEBSVolumeRecommendationsRequest
|
302
|
+
|
303
|
+
GetEBSVolumeRecommendationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
304
|
+
GetEBSVolumeRecommendationsResponse.add_member(:volume_recommendations, Shapes::ShapeRef.new(shape: VolumeRecommendations, location_name: "volumeRecommendations"))
|
305
|
+
GetEBSVolumeRecommendationsResponse.add_member(:errors, Shapes::ShapeRef.new(shape: GetRecommendationErrors, location_name: "errors"))
|
306
|
+
GetEBSVolumeRecommendationsResponse.struct_class = Types::GetEBSVolumeRecommendationsResponse
|
307
|
+
|
231
308
|
GetEC2InstanceRecommendationsRequest.add_member(:instance_arns, Shapes::ShapeRef.new(shape: InstanceArns, location_name: "instanceArns"))
|
232
309
|
GetEC2InstanceRecommendationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
233
310
|
GetEC2InstanceRecommendationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
|
@@ -257,6 +334,17 @@ module Aws::ComputeOptimizer
|
|
257
334
|
GetEnrollmentStatusResponse.add_member(:member_accounts_enrolled, Shapes::ShapeRef.new(shape: MemberAccountsEnrolled, location_name: "memberAccountsEnrolled"))
|
258
335
|
GetEnrollmentStatusResponse.struct_class = Types::GetEnrollmentStatusResponse
|
259
336
|
|
337
|
+
GetLambdaFunctionRecommendationsRequest.add_member(:function_arns, Shapes::ShapeRef.new(shape: FunctionArns, location_name: "functionArns"))
|
338
|
+
GetLambdaFunctionRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
|
339
|
+
GetLambdaFunctionRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFilters, location_name: "filters"))
|
340
|
+
GetLambdaFunctionRecommendationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
341
|
+
GetLambdaFunctionRecommendationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
|
342
|
+
GetLambdaFunctionRecommendationsRequest.struct_class = Types::GetLambdaFunctionRecommendationsRequest
|
343
|
+
|
344
|
+
GetLambdaFunctionRecommendationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
345
|
+
GetLambdaFunctionRecommendationsResponse.add_member(:lambda_function_recommendations, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendations, location_name: "lambdaFunctionRecommendations"))
|
346
|
+
GetLambdaFunctionRecommendationsResponse.struct_class = Types::GetLambdaFunctionRecommendationsResponse
|
347
|
+
|
260
348
|
GetRecommendationError.add_member(:identifier, Shapes::ShapeRef.new(shape: Identifier, location_name: "identifier"))
|
261
349
|
GetRecommendationError.add_member(:code, Shapes::ShapeRef.new(shape: Code, location_name: "code"))
|
262
350
|
GetRecommendationError.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "message"))
|
@@ -309,6 +397,50 @@ module Aws::ComputeOptimizer
|
|
309
397
|
|
310
398
|
JobIds.member = Shapes::ShapeRef.new(shape: JobId)
|
311
399
|
|
400
|
+
LambdaFunctionMemoryProjectedMetric.add_member(:name, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryMetricName, location_name: "name"))
|
401
|
+
LambdaFunctionMemoryProjectedMetric.add_member(:statistic, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryMetricStatistic, location_name: "statistic"))
|
402
|
+
LambdaFunctionMemoryProjectedMetric.add_member(:value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "value"))
|
403
|
+
LambdaFunctionMemoryProjectedMetric.struct_class = Types::LambdaFunctionMemoryProjectedMetric
|
404
|
+
|
405
|
+
LambdaFunctionMemoryProjectedMetrics.member = Shapes::ShapeRef.new(shape: LambdaFunctionMemoryProjectedMetric)
|
406
|
+
|
407
|
+
LambdaFunctionMemoryRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
|
408
|
+
LambdaFunctionMemoryRecommendationOption.add_member(:memory_size, Shapes::ShapeRef.new(shape: MemorySize, location_name: "memorySize"))
|
409
|
+
LambdaFunctionMemoryRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryProjectedMetrics, location_name: "projectedUtilizationMetrics"))
|
410
|
+
LambdaFunctionMemoryRecommendationOption.struct_class = Types::LambdaFunctionMemoryRecommendationOption
|
411
|
+
|
412
|
+
LambdaFunctionMemoryRecommendationOptions.member = Shapes::ShapeRef.new(shape: LambdaFunctionMemoryRecommendationOption)
|
413
|
+
|
414
|
+
LambdaFunctionRecommendation.add_member(:function_arn, Shapes::ShapeRef.new(shape: FunctionArn, location_name: "functionArn"))
|
415
|
+
LambdaFunctionRecommendation.add_member(:function_version, Shapes::ShapeRef.new(shape: FunctionVersion, location_name: "functionVersion"))
|
416
|
+
LambdaFunctionRecommendation.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
|
417
|
+
LambdaFunctionRecommendation.add_member(:current_memory_size, Shapes::ShapeRef.new(shape: MemorySize, location_name: "currentMemorySize"))
|
418
|
+
LambdaFunctionRecommendation.add_member(:number_of_invocations, Shapes::ShapeRef.new(shape: NumberOfInvocations, location_name: "numberOfInvocations"))
|
419
|
+
LambdaFunctionRecommendation.add_member(:utilization_metrics, Shapes::ShapeRef.new(shape: LambdaFunctionUtilizationMetrics, location_name: "utilizationMetrics"))
|
420
|
+
LambdaFunctionRecommendation.add_member(:lookback_period_in_days, Shapes::ShapeRef.new(shape: LookBackPeriodInDays, location_name: "lookbackPeriodInDays"))
|
421
|
+
LambdaFunctionRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
|
422
|
+
LambdaFunctionRecommendation.add_member(:finding, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFinding, location_name: "finding"))
|
423
|
+
LambdaFunctionRecommendation.add_member(:finding_reason_codes, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFindingReasonCodes, location_name: "findingReasonCodes"))
|
424
|
+
LambdaFunctionRecommendation.add_member(:memory_size_recommendation_options, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryRecommendationOptions, location_name: "memorySizeRecommendationOptions"))
|
425
|
+
LambdaFunctionRecommendation.struct_class = Types::LambdaFunctionRecommendation
|
426
|
+
|
427
|
+
LambdaFunctionRecommendationFilter.add_member(:name, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFilterName, location_name: "name"))
|
428
|
+
LambdaFunctionRecommendationFilter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
|
429
|
+
LambdaFunctionRecommendationFilter.struct_class = Types::LambdaFunctionRecommendationFilter
|
430
|
+
|
431
|
+
LambdaFunctionRecommendationFilters.member = Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFilter)
|
432
|
+
|
433
|
+
LambdaFunctionRecommendationFindingReasonCodes.member = Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFindingReasonCode)
|
434
|
+
|
435
|
+
LambdaFunctionRecommendations.member = Shapes::ShapeRef.new(shape: LambdaFunctionRecommendation)
|
436
|
+
|
437
|
+
LambdaFunctionUtilizationMetric.add_member(:name, Shapes::ShapeRef.new(shape: LambdaFunctionMetricName, location_name: "name"))
|
438
|
+
LambdaFunctionUtilizationMetric.add_member(:statistic, Shapes::ShapeRef.new(shape: LambdaFunctionMetricStatistic, location_name: "statistic"))
|
439
|
+
LambdaFunctionUtilizationMetric.add_member(:value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "value"))
|
440
|
+
LambdaFunctionUtilizationMetric.struct_class = Types::LambdaFunctionUtilizationMetric
|
441
|
+
|
442
|
+
LambdaFunctionUtilizationMetrics.member = Shapes::ShapeRef.new(shape: LambdaFunctionUtilizationMetric)
|
443
|
+
|
312
444
|
LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
313
445
|
LimitExceededException.struct_class = Types::LimitExceededException
|
314
446
|
|
@@ -329,6 +461,12 @@ module Aws::ComputeOptimizer
|
|
329
461
|
|
330
462
|
ProjectedUtilizationMetrics.member = Shapes::ShapeRef.new(shape: UtilizationMetric)
|
331
463
|
|
464
|
+
ReasonCodeSummaries.member = Shapes::ShapeRef.new(shape: ReasonCodeSummary)
|
465
|
+
|
466
|
+
ReasonCodeSummary.add_member(:name, Shapes::ShapeRef.new(shape: FindingReasonCode, location_name: "name"))
|
467
|
+
ReasonCodeSummary.add_member(:value, Shapes::ShapeRef.new(shape: SummaryValue, location_name: "value"))
|
468
|
+
ReasonCodeSummary.struct_class = Types::ReasonCodeSummary
|
469
|
+
|
332
470
|
RecommendationExportJob.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
|
333
471
|
RecommendationExportJob.add_member(:destination, Shapes::ShapeRef.new(shape: ExportDestination, location_name: "destination"))
|
334
472
|
RecommendationExportJob.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "resourceType"))
|
@@ -381,6 +519,7 @@ module Aws::ComputeOptimizer
|
|
381
519
|
|
382
520
|
Summary.add_member(:name, Shapes::ShapeRef.new(shape: Finding, location_name: "name"))
|
383
521
|
Summary.add_member(:value, Shapes::ShapeRef.new(shape: SummaryValue, location_name: "value"))
|
522
|
+
Summary.add_member(:reason_code_summaries, Shapes::ShapeRef.new(shape: ReasonCodeSummaries, location_name: "reasonCodeSummaries"))
|
384
523
|
Summary.struct_class = Types::Summary
|
385
524
|
|
386
525
|
ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
|
@@ -403,6 +542,35 @@ module Aws::ComputeOptimizer
|
|
403
542
|
|
404
543
|
UtilizationMetrics.member = Shapes::ShapeRef.new(shape: UtilizationMetric)
|
405
544
|
|
545
|
+
VolumeArns.member = Shapes::ShapeRef.new(shape: VolumeArn)
|
546
|
+
|
547
|
+
VolumeConfiguration.add_member(:volume_type, Shapes::ShapeRef.new(shape: VolumeType, location_name: "volumeType"))
|
548
|
+
VolumeConfiguration.add_member(:volume_size, Shapes::ShapeRef.new(shape: VolumeSize, location_name: "volumeSize"))
|
549
|
+
VolumeConfiguration.add_member(:volume_baseline_iops, Shapes::ShapeRef.new(shape: VolumeBaselineIOPS, location_name: "volumeBaselineIOPS"))
|
550
|
+
VolumeConfiguration.add_member(:volume_burst_iops, Shapes::ShapeRef.new(shape: VolumeBurstIOPS, location_name: "volumeBurstIOPS"))
|
551
|
+
VolumeConfiguration.add_member(:volume_baseline_throughput, Shapes::ShapeRef.new(shape: VolumeBaselineThroughput, location_name: "volumeBaselineThroughput"))
|
552
|
+
VolumeConfiguration.add_member(:volume_burst_throughput, Shapes::ShapeRef.new(shape: VolumeBurstThroughput, location_name: "volumeBurstThroughput"))
|
553
|
+
VolumeConfiguration.struct_class = Types::VolumeConfiguration
|
554
|
+
|
555
|
+
VolumeRecommendation.add_member(:volume_arn, Shapes::ShapeRef.new(shape: VolumeArn, location_name: "volumeArn"))
|
556
|
+
VolumeRecommendation.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
|
557
|
+
VolumeRecommendation.add_member(:current_configuration, Shapes::ShapeRef.new(shape: VolumeConfiguration, location_name: "currentConfiguration"))
|
558
|
+
VolumeRecommendation.add_member(:finding, Shapes::ShapeRef.new(shape: EBSFinding, location_name: "finding"))
|
559
|
+
VolumeRecommendation.add_member(:utilization_metrics, Shapes::ShapeRef.new(shape: EBSUtilizationMetrics, location_name: "utilizationMetrics"))
|
560
|
+
VolumeRecommendation.add_member(:look_back_period_in_days, Shapes::ShapeRef.new(shape: LookBackPeriodInDays, location_name: "lookBackPeriodInDays"))
|
561
|
+
VolumeRecommendation.add_member(:volume_recommendation_options, Shapes::ShapeRef.new(shape: VolumeRecommendationOptions, location_name: "volumeRecommendationOptions"))
|
562
|
+
VolumeRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
|
563
|
+
VolumeRecommendation.struct_class = Types::VolumeRecommendation
|
564
|
+
|
565
|
+
VolumeRecommendationOption.add_member(:configuration, Shapes::ShapeRef.new(shape: VolumeConfiguration, location_name: "configuration"))
|
566
|
+
VolumeRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
|
567
|
+
VolumeRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
|
568
|
+
VolumeRecommendationOption.struct_class = Types::VolumeRecommendationOption
|
569
|
+
|
570
|
+
VolumeRecommendationOptions.member = Shapes::ShapeRef.new(shape: VolumeRecommendationOption)
|
571
|
+
|
572
|
+
VolumeRecommendations.member = Shapes::ShapeRef.new(shape: VolumeRecommendation)
|
573
|
+
|
406
574
|
|
407
575
|
# @api private
|
408
576
|
API = Seahorse::Model::Api.new.tap do |api|
|
@@ -486,6 +654,22 @@ module Aws::ComputeOptimizer
|
|
486
654
|
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
487
655
|
end)
|
488
656
|
|
657
|
+
api.add_operation(:get_ebs_volume_recommendations, Seahorse::Model::Operation.new.tap do |o|
|
658
|
+
o.name = "GetEBSVolumeRecommendations"
|
659
|
+
o.http_method = "POST"
|
660
|
+
o.http_request_uri = "/"
|
661
|
+
o.input = Shapes::ShapeRef.new(shape: GetEBSVolumeRecommendationsRequest)
|
662
|
+
o.output = Shapes::ShapeRef.new(shape: GetEBSVolumeRecommendationsResponse)
|
663
|
+
o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
|
664
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
665
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
|
666
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
667
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
|
668
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
669
|
+
o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
|
670
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
671
|
+
end)
|
672
|
+
|
489
673
|
api.add_operation(:get_ec2_instance_recommendations, Seahorse::Model::Operation.new.tap do |o|
|
490
674
|
o.name = "GetEC2InstanceRecommendations"
|
491
675
|
o.http_method = "POST"
|
@@ -532,6 +716,22 @@ module Aws::ComputeOptimizer
|
|
532
716
|
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
533
717
|
end)
|
534
718
|
|
719
|
+
api.add_operation(:get_lambda_function_recommendations, Seahorse::Model::Operation.new.tap do |o|
|
720
|
+
o.name = "GetLambdaFunctionRecommendations"
|
721
|
+
o.http_method = "POST"
|
722
|
+
o.http_request_uri = "/"
|
723
|
+
o.input = Shapes::ShapeRef.new(shape: GetLambdaFunctionRecommendationsRequest)
|
724
|
+
o.output = Shapes::ShapeRef.new(shape: GetLambdaFunctionRecommendationsResponse)
|
725
|
+
o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
|
726
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
727
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
|
728
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
729
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
|
730
|
+
o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
|
731
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
732
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
733
|
+
end)
|
734
|
+
|
535
735
|
api.add_operation(:get_recommendation_summaries, Seahorse::Model::Operation.new.tap do |o|
|
536
736
|
o.name = "GetRecommendationSummaries"
|
537
737
|
o.http_method = "POST"
|
@@ -84,11 +84,6 @@ module Aws::ComputeOptimizer
|
|
84
84
|
# group is correctly provisioned to run your workload based on the
|
85
85
|
# chosen instance type. For optimized resources, Compute Optimizer
|
86
86
|
# might recommend a new generation instance type.
|
87
|
-
#
|
88
|
-
# <note markdown="1"> The values that are returned might be `NOT_OPTIMIZED` or
|
89
|
-
# `OPTIMIZED`.
|
90
|
-
#
|
91
|
-
# </note>
|
92
87
|
# @return [String]
|
93
88
|
#
|
94
89
|
# @!attribute [rw] utilization_metrics
|
@@ -142,6 +137,18 @@ module Aws::ComputeOptimizer
|
|
142
137
|
# @!attribute [rw] projected_utilization_metrics
|
143
138
|
# An array of objects that describe the projected utilization metrics
|
144
139
|
# of the Auto Scaling group recommendation option.
|
140
|
+
#
|
141
|
+
# <note markdown="1"> The `Cpu` and `Memory` metrics are the only projected utilization
|
142
|
+
# metrics returned. Additionally, the `Memory` metric is returned only
|
143
|
+
# for resources that have the unified CloudWatch agent installed on
|
144
|
+
# them. For more information, see [Enabling Memory Utilization with
|
145
|
+
# the CloudWatch Agent][1].
|
146
|
+
#
|
147
|
+
# </note>
|
148
|
+
#
|
149
|
+
#
|
150
|
+
#
|
151
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
145
152
|
# @return [Array<Types::UtilizationMetric>]
|
146
153
|
#
|
147
154
|
# @!attribute [rw] performance_risk
|
@@ -245,6 +252,102 @@ module Aws::ComputeOptimizer
|
|
245
252
|
include Aws::Structure
|
246
253
|
end
|
247
254
|
|
255
|
+
# Describes a filter that returns a more specific list of Amazon Elastic
|
256
|
+
# Block Store (Amazon EBS) volume recommendations.
|
257
|
+
#
|
258
|
+
# This filter is used with the `GetEBSVolumeRecommendations` action.
|
259
|
+
#
|
260
|
+
# @note When making an API call, you may pass EBSFilter
|
261
|
+
# data as a hash:
|
262
|
+
#
|
263
|
+
# {
|
264
|
+
# name: "Finding", # accepts Finding
|
265
|
+
# values: ["FilterValue"],
|
266
|
+
# }
|
267
|
+
#
|
268
|
+
# @!attribute [rw] name
|
269
|
+
# The name of the filter.
|
270
|
+
#
|
271
|
+
# Specify `Finding` to return recommendations with a specific finding
|
272
|
+
# classification (e.g., `Optimized`).
|
273
|
+
# @return [String]
|
274
|
+
#
|
275
|
+
# @!attribute [rw] values
|
276
|
+
# The value of the filter.
|
277
|
+
#
|
278
|
+
# The valid values are `Optimized`, or `NotOptimized`.
|
279
|
+
# @return [Array<String>]
|
280
|
+
#
|
281
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/EBSFilter AWS API Documentation
|
282
|
+
#
|
283
|
+
class EBSFilter < Struct.new(
|
284
|
+
:name,
|
285
|
+
:values)
|
286
|
+
SENSITIVE = []
|
287
|
+
include Aws::Structure
|
288
|
+
end
|
289
|
+
|
290
|
+
# Describes a utilization metric of an Amazon Elastic Block Store
|
291
|
+
# (Amazon EBS) volume.
|
292
|
+
#
|
293
|
+
# Compare the utilization metric data of your resource against its
|
294
|
+
# projected utilization metric data to determine the performance
|
295
|
+
# difference between your current resource and the recommended option.
|
296
|
+
#
|
297
|
+
# @!attribute [rw] name
|
298
|
+
# The name of the utilization metric.
|
299
|
+
#
|
300
|
+
# The following utilization metrics are available:
|
301
|
+
#
|
302
|
+
# * `VolumeReadOpsPerSecond` - The completed read operations per
|
303
|
+
# second from the volume in a specified period of time.
|
304
|
+
#
|
305
|
+
# Unit: Count
|
306
|
+
#
|
307
|
+
# * `VolumeWriteOpsPerSecond` - The completed write operations per
|
308
|
+
# second to the volume in a specified period of time.
|
309
|
+
#
|
310
|
+
# Unit: Count
|
311
|
+
#
|
312
|
+
# * `VolumeReadBytesPerSecond` - The bytes read per second from the
|
313
|
+
# volume in a specified period of time.
|
314
|
+
#
|
315
|
+
# Unit: Bytes
|
316
|
+
#
|
317
|
+
# * `VolumeWriteBytesPerSecond` - The bytes written to the volume in a
|
318
|
+
# specified period of time.
|
319
|
+
#
|
320
|
+
# Unit: Bytes
|
321
|
+
# @return [String]
|
322
|
+
#
|
323
|
+
# @!attribute [rw] statistic
|
324
|
+
# The statistic of the utilization metric.
|
325
|
+
#
|
326
|
+
# The following statistics are available:
|
327
|
+
#
|
328
|
+
# * `Average` - This is the value of Sum / SampleCount during the
|
329
|
+
# specified period, or the average value observed during the
|
330
|
+
# specified period.
|
331
|
+
#
|
332
|
+
# * `Maximum` - The highest value observed during the specified
|
333
|
+
# period. Use this value to determine high volumes of activity for
|
334
|
+
# your application.
|
335
|
+
# @return [String]
|
336
|
+
#
|
337
|
+
# @!attribute [rw] value
|
338
|
+
# The value of the utilization metric.
|
339
|
+
# @return [Float]
|
340
|
+
#
|
341
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/EBSUtilizationMetric AWS API Documentation
|
342
|
+
#
|
343
|
+
class EBSUtilizationMetric < Struct.new(
|
344
|
+
:name,
|
345
|
+
:statistic,
|
346
|
+
:value)
|
347
|
+
SENSITIVE = []
|
348
|
+
include Aws::Structure
|
349
|
+
end
|
350
|
+
|
248
351
|
# @note When making an API call, you may pass ExportAutoScalingGroupRecommendationsRequest
|
249
352
|
# data as a hash:
|
250
353
|
#
|
@@ -256,7 +359,7 @@ module Aws::ComputeOptimizer
|
|
256
359
|
# values: ["FilterValue"],
|
257
360
|
# },
|
258
361
|
# ],
|
259
|
-
# fields_to_export: ["AccountId"], # accepts AccountId, AutoScalingGroupArn, AutoScalingGroupName, Finding, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, LookbackPeriodInDays, CurrentConfigurationInstanceType, CurrentConfigurationDesiredCapacity, CurrentConfigurationMinSize, CurrentConfigurationMaxSize, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsConfigurationInstanceType, RecommendationOptionsConfigurationDesiredCapacity, RecommendationOptionsConfigurationMinSize, RecommendationOptionsConfigurationMaxSize, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, LastRefreshTimestamp
|
362
|
+
# fields_to_export: ["AccountId"], # accepts AccountId, AutoScalingGroupArn, AutoScalingGroupName, Finding, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, LookbackPeriodInDays, CurrentConfigurationInstanceType, CurrentConfigurationDesiredCapacity, CurrentConfigurationMinSize, CurrentConfigurationMaxSize, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsConfigurationInstanceType, RecommendationOptionsConfigurationDesiredCapacity, RecommendationOptionsConfigurationMinSize, RecommendationOptionsConfigurationMaxSize, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, LastRefreshTimestamp
|
260
363
|
# s3_destination_config: { # required
|
261
364
|
# bucket: "DestinationBucket",
|
262
365
|
# key_prefix: "DestinationKeyPrefix",
|
@@ -269,8 +372,8 @@ module Aws::ComputeOptimizer
|
|
269
372
|
# The IDs of the AWS accounts for which to export Auto Scaling group
|
270
373
|
# recommendations.
|
271
374
|
#
|
272
|
-
# If your account is the
|
273
|
-
# parameter to specify the member accounts for which you want to
|
375
|
+
# If your account is the management account of an organization, use
|
376
|
+
# this parameter to specify the member accounts for which you want to
|
274
377
|
# export recommendations.
|
275
378
|
#
|
276
379
|
# This parameter cannot be specified together with the include member
|
@@ -289,7 +392,13 @@ module Aws::ComputeOptimizer
|
|
289
392
|
# @return [Array<Types::Filter>]
|
290
393
|
#
|
291
394
|
# @!attribute [rw] fields_to_export
|
292
|
-
# The recommendations data to include in the export file.
|
395
|
+
# The recommendations data to include in the export file. For more
|
396
|
+
# information about the fields that can be exported, see [Exported
|
397
|
+
# files][1] in the *Compute Optimizer User Guide*.
|
398
|
+
#
|
399
|
+
#
|
400
|
+
#
|
401
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html#exported-files
|
293
402
|
# @return [Array<String>]
|
294
403
|
#
|
295
404
|
# @!attribute [rw] s3_destination_config
|
@@ -319,8 +428,8 @@ module Aws::ComputeOptimizer
|
|
319
428
|
#
|
320
429
|
# @!attribute [rw] include_member_accounts
|
321
430
|
# Indicates whether to include recommendations for resources in all
|
322
|
-
# member accounts of the organization if your account is the
|
323
|
-
# account of an organization.
|
431
|
+
# member accounts of the organization if your account is the
|
432
|
+
# management account of an organization.
|
324
433
|
#
|
325
434
|
# The member accounts must also be opted in to Compute Optimizer.
|
326
435
|
#
|
@@ -396,7 +505,7 @@ module Aws::ComputeOptimizer
|
|
396
505
|
# values: ["FilterValue"],
|
397
506
|
# },
|
398
507
|
# ],
|
399
|
-
# fields_to_export: ["AccountId"], # accepts AccountId, InstanceArn, InstanceName, Finding, LookbackPeriodInDays, CurrentInstanceType, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsInstanceType, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationsSourcesRecommendationSourceArn, RecommendationsSourcesRecommendationSourceType, LastRefreshTimestamp
|
508
|
+
# fields_to_export: ["AccountId"], # accepts AccountId, InstanceArn, InstanceName, Finding, LookbackPeriodInDays, CurrentInstanceType, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsInstanceType, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationsSourcesRecommendationSourceArn, RecommendationsSourcesRecommendationSourceType, LastRefreshTimestamp
|
400
509
|
# s3_destination_config: { # required
|
401
510
|
# bucket: "DestinationBucket",
|
402
511
|
# key_prefix: "DestinationKeyPrefix",
|
@@ -409,8 +518,8 @@ module Aws::ComputeOptimizer
|
|
409
518
|
# The IDs of the AWS accounts for which to export instance
|
410
519
|
# recommendations.
|
411
520
|
#
|
412
|
-
# If your account is the
|
413
|
-
# parameter to specify the member accounts for which you want to
|
521
|
+
# If your account is the management account of an organization, use
|
522
|
+
# this parameter to specify the member accounts for which you want to
|
414
523
|
# export recommendations.
|
415
524
|
#
|
416
525
|
# This parameter cannot be specified together with the include member
|
@@ -429,7 +538,13 @@ module Aws::ComputeOptimizer
|
|
429
538
|
# @return [Array<Types::Filter>]
|
430
539
|
#
|
431
540
|
# @!attribute [rw] fields_to_export
|
432
|
-
# The recommendations data to include in the export file.
|
541
|
+
# The recommendations data to include in the export file. For more
|
542
|
+
# information about the fields that can be exported, see [Exported
|
543
|
+
# files][1] in the *Compute Optimizer User Guide*.
|
544
|
+
#
|
545
|
+
#
|
546
|
+
#
|
547
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html#exported-files
|
433
548
|
# @return [Array<String>]
|
434
549
|
#
|
435
550
|
# @!attribute [rw] s3_destination_config
|
@@ -459,8 +574,8 @@ module Aws::ComputeOptimizer
|
|
459
574
|
#
|
460
575
|
# @!attribute [rw] include_member_accounts
|
461
576
|
# Indicates whether to include recommendations for resources in all
|
462
|
-
# member accounts of the organization if your account is the
|
463
|
-
# account of an organization.
|
577
|
+
# member accounts of the organization if your account is the
|
578
|
+
# management account of an organization.
|
464
579
|
#
|
465
580
|
# The member accounts must also be opted in to Compute Optimizer.
|
466
581
|
#
|
@@ -508,6 +623,9 @@ module Aws::ComputeOptimizer
|
|
508
623
|
# Describes a filter that returns a more specific list of
|
509
624
|
# recommendations.
|
510
625
|
#
|
626
|
+
# This filter is used with the `GetAutoScalingGroupRecommendations` and
|
627
|
+
# `GetEC2InstanceRecommendations` actions.
|
628
|
+
#
|
511
629
|
# @note When making an API call, you may pass Filter
|
512
630
|
# data as a hash:
|
513
631
|
#
|
@@ -519,7 +637,7 @@ module Aws::ComputeOptimizer
|
|
519
637
|
# @!attribute [rw] name
|
520
638
|
# The name of the filter.
|
521
639
|
#
|
522
|
-
# Specify `Finding` to return recommendations with a specific
|
640
|
+
# Specify `Finding` to return recommendations with a specific finding
|
523
641
|
# classification (e.g., `Overprovisioned`).
|
524
642
|
#
|
525
643
|
# Specify `RecommendationSourceType` to return recommendations of a
|
@@ -529,17 +647,20 @@ module Aws::ComputeOptimizer
|
|
529
647
|
# @!attribute [rw] values
|
530
648
|
# The value of the filter.
|
531
649
|
#
|
532
|
-
#
|
533
|
-
#
|
534
|
-
#
|
535
|
-
# `Optimized`.
|
650
|
+
# The valid values for this parameter are as follows, depending on
|
651
|
+
# what you specify for the `name` parameter and the resource type that
|
652
|
+
# you wish to filter results for:
|
536
653
|
#
|
537
|
-
#
|
538
|
-
#
|
539
|
-
#
|
654
|
+
# * Specify `Optimized` or `NotOptimized` if you specified the `name`
|
655
|
+
# parameter as `Finding` and you want to filter results for Auto
|
656
|
+
# Scaling groups.
|
540
657
|
#
|
541
|
-
#
|
542
|
-
#
|
658
|
+
# * Specify `Underprovisioned`, `Overprovisioned`, or `Optimized` if
|
659
|
+
# you specified the `name` parameter as `Finding` and you want to
|
660
|
+
# filter results for EC2 instances.
|
661
|
+
#
|
662
|
+
# * Specify `Ec2Instance` or `AutoScalingGroup` if you specified the
|
663
|
+
# `name` parameter as `RecommendationSourceType`.
|
543
664
|
# @return [Array<String>]
|
544
665
|
#
|
545
666
|
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/Filter AWS API Documentation
|
@@ -571,8 +692,8 @@ module Aws::ComputeOptimizer
|
|
571
692
|
# The IDs of the AWS accounts for which to return Auto Scaling group
|
572
693
|
# recommendations.
|
573
694
|
#
|
574
|
-
# If your account is the
|
575
|
-
# parameter to specify the member accounts for which you want to
|
695
|
+
# If your account is the management account of an organization, use
|
696
|
+
# this parameter to specify the member accounts for which you want to
|
576
697
|
# return Auto Scaling group recommendations.
|
577
698
|
#
|
578
699
|
# Only one account ID can be specified per request.
|
@@ -643,6 +764,96 @@ module Aws::ComputeOptimizer
|
|
643
764
|
include Aws::Structure
|
644
765
|
end
|
645
766
|
|
767
|
+
# @note When making an API call, you may pass GetEBSVolumeRecommendationsRequest
|
768
|
+
# data as a hash:
|
769
|
+
#
|
770
|
+
# {
|
771
|
+
# volume_arns: ["VolumeArn"],
|
772
|
+
# next_token: "NextToken",
|
773
|
+
# max_results: 1,
|
774
|
+
# filters: [
|
775
|
+
# {
|
776
|
+
# name: "Finding", # accepts Finding
|
777
|
+
# values: ["FilterValue"],
|
778
|
+
# },
|
779
|
+
# ],
|
780
|
+
# account_ids: ["AccountId"],
|
781
|
+
# }
|
782
|
+
#
|
783
|
+
# @!attribute [rw] volume_arns
|
784
|
+
# The Amazon Resource Name (ARN) of the volumes for which to return
|
785
|
+
# recommendations.
|
786
|
+
# @return [Array<String>]
|
787
|
+
#
|
788
|
+
# @!attribute [rw] next_token
|
789
|
+
# The token to advance to the next page of volume recommendations.
|
790
|
+
# @return [String]
|
791
|
+
#
|
792
|
+
# @!attribute [rw] max_results
|
793
|
+
# The maximum number of volume recommendations to return with a single
|
794
|
+
# request.
|
795
|
+
#
|
796
|
+
# To retrieve the remaining results, make another request with the
|
797
|
+
# returned `NextToken` value.
|
798
|
+
# @return [Integer]
|
799
|
+
#
|
800
|
+
# @!attribute [rw] filters
|
801
|
+
# An array of objects that describe a filter that returns a more
|
802
|
+
# specific list of volume recommendations.
|
803
|
+
# @return [Array<Types::EBSFilter>]
|
804
|
+
#
|
805
|
+
# @!attribute [rw] account_ids
|
806
|
+
# The IDs of the AWS accounts for which to return volume
|
807
|
+
# recommendations.
|
808
|
+
#
|
809
|
+
# If your account is the management account of an organization, use
|
810
|
+
# this parameter to specify the member accounts for which you want to
|
811
|
+
# return volume recommendations.
|
812
|
+
#
|
813
|
+
# Only one account ID can be specified per request.
|
814
|
+
# @return [Array<String>]
|
815
|
+
#
|
816
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendationsRequest AWS API Documentation
|
817
|
+
#
|
818
|
+
class GetEBSVolumeRecommendationsRequest < Struct.new(
|
819
|
+
:volume_arns,
|
820
|
+
:next_token,
|
821
|
+
:max_results,
|
822
|
+
:filters,
|
823
|
+
:account_ids)
|
824
|
+
SENSITIVE = []
|
825
|
+
include Aws::Structure
|
826
|
+
end
|
827
|
+
|
828
|
+
# @!attribute [rw] next_token
|
829
|
+
# The token to use to advance to the next page of volume
|
830
|
+
# recommendations.
|
831
|
+
#
|
832
|
+
# This value is null when there are no more pages of volume
|
833
|
+
# recommendations to return.
|
834
|
+
# @return [String]
|
835
|
+
#
|
836
|
+
# @!attribute [rw] volume_recommendations
|
837
|
+
# An array of objects that describe volume recommendations.
|
838
|
+
# @return [Array<Types::VolumeRecommendation>]
|
839
|
+
#
|
840
|
+
# @!attribute [rw] errors
|
841
|
+
# An array of objects that describe errors of the request.
|
842
|
+
#
|
843
|
+
# For example, an error is returned if you request recommendations for
|
844
|
+
# an unsupported volume.
|
845
|
+
# @return [Array<Types::GetRecommendationError>]
|
846
|
+
#
|
847
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendationsResponse AWS API Documentation
|
848
|
+
#
|
849
|
+
class GetEBSVolumeRecommendationsResponse < Struct.new(
|
850
|
+
:next_token,
|
851
|
+
:volume_recommendations,
|
852
|
+
:errors)
|
853
|
+
SENSITIVE = []
|
854
|
+
include Aws::Structure
|
855
|
+
end
|
856
|
+
|
646
857
|
# @note When making an API call, you may pass GetEC2InstanceRecommendationsRequest
|
647
858
|
# data as a hash:
|
648
859
|
#
|
@@ -685,8 +896,8 @@ module Aws::ComputeOptimizer
|
|
685
896
|
# The IDs of the AWS accounts for which to return instance
|
686
897
|
# recommendations.
|
687
898
|
#
|
688
|
-
# If your account is the
|
689
|
-
# parameter to specify the member accounts for which you want to
|
899
|
+
# If your account is the management account of an organization, use
|
900
|
+
# this parameter to specify the member accounts for which you want to
|
690
901
|
# return instance recommendations.
|
691
902
|
#
|
692
903
|
# Only one account ID can be specified per request.
|
@@ -809,7 +1020,8 @@ module Aws::ComputeOptimizer
|
|
809
1020
|
#
|
810
1021
|
# @!attribute [rw] member_accounts_enrolled
|
811
1022
|
# Confirms the enrollment status of member accounts within the
|
812
|
-
# organization, if the account is a
|
1023
|
+
# organization, if the account is a management account of an
|
1024
|
+
# organization.
|
813
1025
|
# @return [Boolean]
|
814
1026
|
#
|
815
1027
|
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEnrollmentStatusResponse AWS API Documentation
|
@@ -822,6 +1034,101 @@ module Aws::ComputeOptimizer
|
|
822
1034
|
include Aws::Structure
|
823
1035
|
end
|
824
1036
|
|
1037
|
+
# @note When making an API call, you may pass GetLambdaFunctionRecommendationsRequest
|
1038
|
+
# data as a hash:
|
1039
|
+
#
|
1040
|
+
# {
|
1041
|
+
# function_arns: ["FunctionArn"],
|
1042
|
+
# account_ids: ["AccountId"],
|
1043
|
+
# filters: [
|
1044
|
+
# {
|
1045
|
+
# name: "Finding", # accepts Finding, FindingReasonCode
|
1046
|
+
# values: ["FilterValue"],
|
1047
|
+
# },
|
1048
|
+
# ],
|
1049
|
+
# next_token: "NextToken",
|
1050
|
+
# max_results: 1,
|
1051
|
+
# }
|
1052
|
+
#
|
1053
|
+
# @!attribute [rw] function_arns
|
1054
|
+
# The Amazon Resource Name (ARN) of the functions for which to return
|
1055
|
+
# recommendations.
|
1056
|
+
#
|
1057
|
+
# You can specify a qualified or unqualified ARN. If you specify an
|
1058
|
+
# unqualified ARN without a function version suffix, Compute Optimizer
|
1059
|
+
# will return recommendations for the latest (`$LATEST`) version of
|
1060
|
+
# the function. If you specify a qualified ARN with a version suffix,
|
1061
|
+
# Compute Optimizer will return recommendations for the specified
|
1062
|
+
# function version. For more information about using function
|
1063
|
+
# versions, see [Using versions][1] in the *AWS Lambda Developer
|
1064
|
+
# Guide*.
|
1065
|
+
#
|
1066
|
+
#
|
1067
|
+
#
|
1068
|
+
# [1]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html#versioning-versions-using
|
1069
|
+
# @return [Array<String>]
|
1070
|
+
#
|
1071
|
+
# @!attribute [rw] account_ids
|
1072
|
+
# The IDs of the AWS accounts for which to return function
|
1073
|
+
# recommendations.
|
1074
|
+
#
|
1075
|
+
# If your account is the management account of an organization, use
|
1076
|
+
# this parameter to specify the member accounts for which you want to
|
1077
|
+
# return function recommendations.
|
1078
|
+
#
|
1079
|
+
# Only one account ID can be specified per request.
|
1080
|
+
# @return [Array<String>]
|
1081
|
+
#
|
1082
|
+
# @!attribute [rw] filters
|
1083
|
+
# An array of objects that describe a filter that returns a more
|
1084
|
+
# specific list of function recommendations.
|
1085
|
+
# @return [Array<Types::LambdaFunctionRecommendationFilter>]
|
1086
|
+
#
|
1087
|
+
# @!attribute [rw] next_token
|
1088
|
+
# The token to advance to the next page of function recommendations.
|
1089
|
+
# @return [String]
|
1090
|
+
#
|
1091
|
+
# @!attribute [rw] max_results
|
1092
|
+
# The maximum number of function recommendations to return with a
|
1093
|
+
# single request.
|
1094
|
+
#
|
1095
|
+
# To retrieve the remaining results, make another request with the
|
1096
|
+
# returned `NextToken` value.
|
1097
|
+
# @return [Integer]
|
1098
|
+
#
|
1099
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetLambdaFunctionRecommendationsRequest AWS API Documentation
|
1100
|
+
#
|
1101
|
+
class GetLambdaFunctionRecommendationsRequest < Struct.new(
|
1102
|
+
:function_arns,
|
1103
|
+
:account_ids,
|
1104
|
+
:filters,
|
1105
|
+
:next_token,
|
1106
|
+
:max_results)
|
1107
|
+
SENSITIVE = []
|
1108
|
+
include Aws::Structure
|
1109
|
+
end
|
1110
|
+
|
1111
|
+
# @!attribute [rw] next_token
|
1112
|
+
# The token to use to advance to the next page of function
|
1113
|
+
# recommendations.
|
1114
|
+
#
|
1115
|
+
# This value is null when there are no more pages of function
|
1116
|
+
# recommendations to return.
|
1117
|
+
# @return [String]
|
1118
|
+
#
|
1119
|
+
# @!attribute [rw] lambda_function_recommendations
|
1120
|
+
# An array of objects that describe function recommendations.
|
1121
|
+
# @return [Array<Types::LambdaFunctionRecommendation>]
|
1122
|
+
#
|
1123
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetLambdaFunctionRecommendationsResponse AWS API Documentation
|
1124
|
+
#
|
1125
|
+
class GetLambdaFunctionRecommendationsResponse < Struct.new(
|
1126
|
+
:next_token,
|
1127
|
+
:lambda_function_recommendations)
|
1128
|
+
SENSITIVE = []
|
1129
|
+
include Aws::Structure
|
1130
|
+
end
|
1131
|
+
|
825
1132
|
# Describes an error experienced when getting recommendations.
|
826
1133
|
#
|
827
1134
|
# For example, an error is returned if you request recommendations for
|
@@ -863,8 +1170,8 @@ module Aws::ComputeOptimizer
|
|
863
1170
|
# The IDs of the AWS accounts for which to return recommendation
|
864
1171
|
# summaries.
|
865
1172
|
#
|
866
|
-
# If your account is the
|
867
|
-
# parameter to specify the member accounts for which you want to
|
1173
|
+
# If your account is the management account of an organization, use
|
1174
|
+
# this parameter to specify the member accounts for which you want to
|
868
1175
|
# return recommendation summaries.
|
869
1176
|
#
|
870
1177
|
# Only one account ID can be specified per request.
|
@@ -956,11 +1263,6 @@ module Aws::ComputeOptimizer
|
|
956
1263
|
# your workloads with optimal performance and infrastructure cost.
|
957
1264
|
# For optimized resources, AWS Compute Optimizer might recommend a
|
958
1265
|
# new generation instance type.
|
959
|
-
#
|
960
|
-
# <note markdown="1"> The values that are returned might be `UNDER_PROVISIONED`,
|
961
|
-
# `OVER_PROVISIONED`, or `OPTIMIZED`.
|
962
|
-
#
|
963
|
-
# </note>
|
964
1266
|
# @return [String]
|
965
1267
|
#
|
966
1268
|
# @!attribute [rw] utilization_metrics
|
@@ -1014,6 +1316,18 @@ module Aws::ComputeOptimizer
|
|
1014
1316
|
# @!attribute [rw] projected_utilization_metrics
|
1015
1317
|
# An array of objects that describe the projected utilization metrics
|
1016
1318
|
# of the instance recommendation option.
|
1319
|
+
#
|
1320
|
+
# <note markdown="1"> The `Cpu` and `Memory` metrics are the only projected utilization
|
1321
|
+
# metrics returned. Additionally, the `Memory` metric is returned only
|
1322
|
+
# for resources that have the unified CloudWatch agent installed on
|
1323
|
+
# them. For more information, see [Enabling Memory Utilization with
|
1324
|
+
# the CloudWatch Agent][1].
|
1325
|
+
#
|
1326
|
+
# </note>
|
1327
|
+
#
|
1328
|
+
#
|
1329
|
+
#
|
1330
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
1017
1331
|
# @return [Array<Types::UtilizationMetric>]
|
1018
1332
|
#
|
1019
1333
|
# @!attribute [rw] performance_risk
|
@@ -1096,11 +1410,16 @@ module Aws::ComputeOptimizer
|
|
1096
1410
|
# @!attribute [rw] values
|
1097
1411
|
# The value of the filter.
|
1098
1412
|
#
|
1099
|
-
#
|
1100
|
-
#
|
1413
|
+
# The valid values for this parameter are as follows, depending on
|
1414
|
+
# what you specify for the `name` parameter:
|
1415
|
+
#
|
1416
|
+
# * Specify `Ec2Instance` or `AutoScalingGroup` if you specified the
|
1417
|
+
# `name` parameter as `ResourceType`. There is no filter for EBS
|
1418
|
+
# volumes because volume recommendations cannot be exported at this
|
1419
|
+
# time.
|
1101
1420
|
#
|
1102
|
-
#
|
1103
|
-
#
|
1421
|
+
# * Specify `Queued`, `InProgress`, `Complete`, or `Failed` if you
|
1422
|
+
# specified the `name` parameter as `JobStatus`.
|
1104
1423
|
# @return [Array<String>]
|
1105
1424
|
#
|
1106
1425
|
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/JobFilter AWS API Documentation
|
@@ -1112,6 +1431,261 @@ module Aws::ComputeOptimizer
|
|
1112
1431
|
include Aws::Structure
|
1113
1432
|
end
|
1114
1433
|
|
1434
|
+
# Describes a projected utilization metric of an AWS Lambda function
|
1435
|
+
# recommendation option.
|
1436
|
+
#
|
1437
|
+
# @!attribute [rw] name
|
1438
|
+
# The name of the projected utilization metric.
|
1439
|
+
# @return [String]
|
1440
|
+
#
|
1441
|
+
# @!attribute [rw] statistic
|
1442
|
+
# The statistic of the projected utilization metric.
|
1443
|
+
# @return [String]
|
1444
|
+
#
|
1445
|
+
# @!attribute [rw] value
|
1446
|
+
# The values of the projected utilization metrics.
|
1447
|
+
# @return [Float]
|
1448
|
+
#
|
1449
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionMemoryProjectedMetric AWS API Documentation
|
1450
|
+
#
|
1451
|
+
class LambdaFunctionMemoryProjectedMetric < Struct.new(
|
1452
|
+
:name,
|
1453
|
+
:statistic,
|
1454
|
+
:value)
|
1455
|
+
SENSITIVE = []
|
1456
|
+
include Aws::Structure
|
1457
|
+
end
|
1458
|
+
|
1459
|
+
# Describes a recommendation option for an AWS Lambda function.
|
1460
|
+
#
|
1461
|
+
# @!attribute [rw] rank
|
1462
|
+
# The rank of the function recommendation option.
|
1463
|
+
#
|
1464
|
+
# The top recommendation option is ranked as `1`.
|
1465
|
+
# @return [Integer]
|
1466
|
+
#
|
1467
|
+
# @!attribute [rw] memory_size
|
1468
|
+
# The memory size, in MB, of the function recommendation option.
|
1469
|
+
# @return [Integer]
|
1470
|
+
#
|
1471
|
+
# @!attribute [rw] projected_utilization_metrics
|
1472
|
+
# An array of objects that describe the projected utilization metrics
|
1473
|
+
# of the function recommendation option.
|
1474
|
+
# @return [Array<Types::LambdaFunctionMemoryProjectedMetric>]
|
1475
|
+
#
|
1476
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionMemoryRecommendationOption AWS API Documentation
|
1477
|
+
#
|
1478
|
+
class LambdaFunctionMemoryRecommendationOption < Struct.new(
|
1479
|
+
:rank,
|
1480
|
+
:memory_size,
|
1481
|
+
:projected_utilization_metrics)
|
1482
|
+
SENSITIVE = []
|
1483
|
+
include Aws::Structure
|
1484
|
+
end
|
1485
|
+
|
1486
|
+
# Describes an AWS Lambda function recommendation.
|
1487
|
+
#
|
1488
|
+
# @!attribute [rw] function_arn
|
1489
|
+
# The Amazon Resource Name (ARN) of the current function.
|
1490
|
+
# @return [String]
|
1491
|
+
#
|
1492
|
+
# @!attribute [rw] function_version
|
1493
|
+
# The version number of the current function.
|
1494
|
+
# @return [String]
|
1495
|
+
#
|
1496
|
+
# @!attribute [rw] account_id
|
1497
|
+
# The AWS account ID of the function.
|
1498
|
+
# @return [String]
|
1499
|
+
#
|
1500
|
+
# @!attribute [rw] current_memory_size
|
1501
|
+
# The amount of memory, in MB, that's allocated to the current
|
1502
|
+
# function.
|
1503
|
+
# @return [Integer]
|
1504
|
+
#
|
1505
|
+
# @!attribute [rw] number_of_invocations
|
1506
|
+
# The number of times your function code was executed during the
|
1507
|
+
# look-back period.
|
1508
|
+
# @return [Integer]
|
1509
|
+
#
|
1510
|
+
# @!attribute [rw] utilization_metrics
|
1511
|
+
# An array of objects that describe the utilization metrics of the
|
1512
|
+
# function.
|
1513
|
+
# @return [Array<Types::LambdaFunctionUtilizationMetric>]
|
1514
|
+
#
|
1515
|
+
# @!attribute [rw] lookback_period_in_days
|
1516
|
+
# The number of days for which utilization metrics were analyzed for
|
1517
|
+
# the function.
|
1518
|
+
# @return [Float]
|
1519
|
+
#
|
1520
|
+
# @!attribute [rw] last_refresh_timestamp
|
1521
|
+
# The time stamp of when the function recommendation was last
|
1522
|
+
# refreshed.
|
1523
|
+
# @return [Time]
|
1524
|
+
#
|
1525
|
+
# @!attribute [rw] finding
|
1526
|
+
# The finding classification for the function.
|
1527
|
+
#
|
1528
|
+
# Findings for functions include:
|
1529
|
+
#
|
1530
|
+
# * <b> <code>Optimized</code> </b> — The function is correctly
|
1531
|
+
# provisioned to run your workload based on its current
|
1532
|
+
# configuration and its utilization history. This finding
|
1533
|
+
# classification does not include finding reason codes.
|
1534
|
+
#
|
1535
|
+
# * <b> <code>NotOptimized</code> </b> — The function is performing at
|
1536
|
+
# a higher level (over-provisioned) or at a lower level
|
1537
|
+
# (under-provisioned) than required for your workload because its
|
1538
|
+
# current configuration is not optimal. Over-provisioned resources
|
1539
|
+
# might lead to unnecessary infrastructure cost, and
|
1540
|
+
# under-provisioned resources might lead to poor application
|
1541
|
+
# performance. This finding classification can include the
|
1542
|
+
# `MemoryUnderprovisioned` and `MemoryUnderprovisioned` finding
|
1543
|
+
# reason codes.
|
1544
|
+
#
|
1545
|
+
# * <b> <code>Unavailable</code> </b> — Compute Optimizer was unable
|
1546
|
+
# to generate a recommendation for the function. This could be
|
1547
|
+
# because the function has not accumulated sufficient metric data,
|
1548
|
+
# or the function does not qualify for a recommendation. This
|
1549
|
+
# finding classification can include the `InsufficientData` and
|
1550
|
+
# `Inconclusive` finding reason codes.
|
1551
|
+
#
|
1552
|
+
# <note markdown="1"> Functions with a finding of unavailable are not returned unless
|
1553
|
+
# you specify the `filter` parameter with a value of `Unavailable`
|
1554
|
+
# in your `GetLambdaFunctionRecommendations` request.
|
1555
|
+
#
|
1556
|
+
# </note>
|
1557
|
+
# @return [String]
|
1558
|
+
#
|
1559
|
+
# @!attribute [rw] finding_reason_codes
|
1560
|
+
# The reason for the finding classification of the function.
|
1561
|
+
#
|
1562
|
+
# <note markdown="1"> Functions that have a finding classification of `Optimized` don't
|
1563
|
+
# have a finding reason code.
|
1564
|
+
#
|
1565
|
+
# </note>
|
1566
|
+
#
|
1567
|
+
# Reason codes include:
|
1568
|
+
#
|
1569
|
+
# * <b> <code>MemoryOverprovisioned</code> </b> — The function is
|
1570
|
+
# over-provisioned when its memory configuration can be sized down
|
1571
|
+
# while still meeting the performance requirements of your workload.
|
1572
|
+
# An over-provisioned function might lead to unnecessary
|
1573
|
+
# infrastructure cost. This finding reason code is part of the
|
1574
|
+
# `NotOptimized` finding classification.
|
1575
|
+
#
|
1576
|
+
# * <b> <code>MemoryUnderprovisioned</code> </b> — The function is
|
1577
|
+
# under-provisioned when its memory configuration doesn't meet the
|
1578
|
+
# performance requirements of the workload. An under-provisioned
|
1579
|
+
# function might lead to poor application performance. This finding
|
1580
|
+
# reason code is part of the `NotOptimized` finding classification.
|
1581
|
+
#
|
1582
|
+
# * <b> <code>InsufficientData</code> </b> — The function does not
|
1583
|
+
# have sufficient metric data for Compute Optimizer to generate a
|
1584
|
+
# recommendation. For more information, see the [Supported resources
|
1585
|
+
# and requirements][1] in the *AWS Compute Optimizer User Guide*.
|
1586
|
+
# This finding reason code is part of the `Unavailable` finding
|
1587
|
+
# classification.
|
1588
|
+
#
|
1589
|
+
# * <b> <code>Inconclusive</code> </b> — The function does not qualify
|
1590
|
+
# for a recommendation, or there was an internal error. This finding
|
1591
|
+
# reason code is part of the `Unavailable` finding classification.
|
1592
|
+
#
|
1593
|
+
#
|
1594
|
+
#
|
1595
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html
|
1596
|
+
# @return [Array<String>]
|
1597
|
+
#
|
1598
|
+
# @!attribute [rw] memory_size_recommendation_options
|
1599
|
+
# An array of objects that describe the memory configuration
|
1600
|
+
# recommendation options for the function.
|
1601
|
+
# @return [Array<Types::LambdaFunctionMemoryRecommendationOption>]
|
1602
|
+
#
|
1603
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionRecommendation AWS API Documentation
|
1604
|
+
#
|
1605
|
+
class LambdaFunctionRecommendation < Struct.new(
|
1606
|
+
:function_arn,
|
1607
|
+
:function_version,
|
1608
|
+
:account_id,
|
1609
|
+
:current_memory_size,
|
1610
|
+
:number_of_invocations,
|
1611
|
+
:utilization_metrics,
|
1612
|
+
:lookback_period_in_days,
|
1613
|
+
:last_refresh_timestamp,
|
1614
|
+
:finding,
|
1615
|
+
:finding_reason_codes,
|
1616
|
+
:memory_size_recommendation_options)
|
1617
|
+
SENSITIVE = []
|
1618
|
+
include Aws::Structure
|
1619
|
+
end
|
1620
|
+
|
1621
|
+
# Describes a filter that returns a more specific list of AWS Lambda
|
1622
|
+
# function recommendations.
|
1623
|
+
#
|
1624
|
+
# @note When making an API call, you may pass LambdaFunctionRecommendationFilter
|
1625
|
+
# data as a hash:
|
1626
|
+
#
|
1627
|
+
# {
|
1628
|
+
# name: "Finding", # accepts Finding, FindingReasonCode
|
1629
|
+
# values: ["FilterValue"],
|
1630
|
+
# }
|
1631
|
+
#
|
1632
|
+
# @!attribute [rw] name
|
1633
|
+
# The name of the filter.
|
1634
|
+
#
|
1635
|
+
# Specify `Finding` to return recommendations with a specific finding
|
1636
|
+
# classification (e.g., `NotOptimized`).
|
1637
|
+
#
|
1638
|
+
# Specify `FindingReasonCode` to return recommendations with a
|
1639
|
+
# specific finding reason code (e.g., `MemoryUnderprovisioned`).
|
1640
|
+
# @return [String]
|
1641
|
+
#
|
1642
|
+
# @!attribute [rw] values
|
1643
|
+
# The value of the filter.
|
1644
|
+
#
|
1645
|
+
# The valid values for this parameter are as follows, depending on
|
1646
|
+
# what you specify for the `name` parameter:
|
1647
|
+
#
|
1648
|
+
# * Specify `Optimized`, `NotOptimized`, or `Unavailable` if you
|
1649
|
+
# specified the `name` parameter as `Finding`.
|
1650
|
+
#
|
1651
|
+
# * Specify `MemoryOverprovisioned`, `MemoryUnderprovisioned`,
|
1652
|
+
# `InsufficientData`, or `Inconclusive` if you specified the `name`
|
1653
|
+
# parameter as `FindingReasonCode`.
|
1654
|
+
# @return [Array<String>]
|
1655
|
+
#
|
1656
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionRecommendationFilter AWS API Documentation
|
1657
|
+
#
|
1658
|
+
class LambdaFunctionRecommendationFilter < Struct.new(
|
1659
|
+
:name,
|
1660
|
+
:values)
|
1661
|
+
SENSITIVE = []
|
1662
|
+
include Aws::Structure
|
1663
|
+
end
|
1664
|
+
|
1665
|
+
# Describes a utilization metric of an AWS Lambda function.
|
1666
|
+
#
|
1667
|
+
# @!attribute [rw] name
|
1668
|
+
# The name of the utilization metric.
|
1669
|
+
# @return [String]
|
1670
|
+
#
|
1671
|
+
# @!attribute [rw] statistic
|
1672
|
+
# The statistic of the utilization metric.
|
1673
|
+
# @return [String]
|
1674
|
+
#
|
1675
|
+
# @!attribute [rw] value
|
1676
|
+
# The value of the utilization metric.
|
1677
|
+
# @return [Float]
|
1678
|
+
#
|
1679
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionUtilizationMetric AWS API Documentation
|
1680
|
+
#
|
1681
|
+
class LambdaFunctionUtilizationMetric < Struct.new(
|
1682
|
+
:name,
|
1683
|
+
:statistic,
|
1684
|
+
:value)
|
1685
|
+
SENSITIVE = []
|
1686
|
+
include Aws::Structure
|
1687
|
+
end
|
1688
|
+
|
1115
1689
|
# The request exceeds a limit of the service.
|
1116
1690
|
#
|
1117
1691
|
# @!attribute [rw] message
|
@@ -1153,20 +1727,60 @@ module Aws::ComputeOptimizer
|
|
1153
1727
|
end
|
1154
1728
|
|
1155
1729
|
# Describes a projected utilization metric of a recommendation option,
|
1156
|
-
# such as an Amazon EC2 instance.
|
1730
|
+
# such as an Amazon EC2 instance. This represents the projected
|
1731
|
+
# utilization of a recommendation option had you used that resource
|
1732
|
+
# during the analyzed period.
|
1733
|
+
#
|
1734
|
+
# Compare the utilization metric data of your resource against its
|
1735
|
+
# projected utilization metric data to determine the performance
|
1736
|
+
# difference between your current resource and the recommended option.
|
1737
|
+
#
|
1738
|
+
# <note markdown="1"> The `Cpu` and `Memory` metrics are the only projected utilization
|
1739
|
+
# metrics returned when you run the
|
1740
|
+
# `GetEC2RecommendationProjectedMetrics` action. Additionally, the
|
1741
|
+
# `Memory` metric is returned only for resources that have the unified
|
1742
|
+
# CloudWatch agent installed on them. For more information, see
|
1743
|
+
# [Enabling Memory Utilization with the CloudWatch Agent][1].
|
1744
|
+
#
|
1745
|
+
# </note>
|
1746
|
+
#
|
1747
|
+
#
|
1748
|
+
#
|
1749
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
1157
1750
|
#
|
1158
1751
|
# @!attribute [rw] name
|
1159
1752
|
# The name of the projected utilization metric.
|
1160
1753
|
#
|
1161
|
-
#
|
1162
|
-
# CloudWatch agent installed on them. For more information, see
|
1163
|
-
# [Enabling Memory Utilization with the CloudWatch Agent][1].
|
1754
|
+
# The following projected utilization metrics are returned:
|
1164
1755
|
#
|
1165
|
-
#
|
1756
|
+
# * `Cpu` - The projected percentage of allocated EC2 compute units
|
1757
|
+
# that would be in use on the recommendation option had you used
|
1758
|
+
# that resource during the analyzed period. This metric identifies
|
1759
|
+
# the processing power required to run an application on the
|
1760
|
+
# recommendation option.
|
1761
|
+
#
|
1762
|
+
# Depending on the instance type, tools in your operating system can
|
1763
|
+
# show a lower percentage than CloudWatch when the instance is not
|
1764
|
+
# allocated a full processor core.
|
1166
1765
|
#
|
1766
|
+
# Units: Percent
|
1167
1767
|
#
|
1768
|
+
# * `Memory` - The percentage of memory that would be in use on the
|
1769
|
+
# recommendation option had you used that resource during the
|
1770
|
+
# analyzed period. This metric identifies the amount of memory
|
1771
|
+
# required to run an application on the recommendation option.
|
1168
1772
|
#
|
1169
|
-
#
|
1773
|
+
# Units: Percent
|
1774
|
+
#
|
1775
|
+
# <note markdown="1"> The `Memory` metric is returned only for resources that have the
|
1776
|
+
# unified CloudWatch agent installed on them. For more information,
|
1777
|
+
# see [Enabling Memory Utilization with the CloudWatch Agent][1].
|
1778
|
+
#
|
1779
|
+
# </note>
|
1780
|
+
#
|
1781
|
+
#
|
1782
|
+
#
|
1783
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
1170
1784
|
# @return [String]
|
1171
1785
|
#
|
1172
1786
|
# @!attribute [rw] timestamps
|
@@ -1187,6 +1801,25 @@ module Aws::ComputeOptimizer
|
|
1187
1801
|
include Aws::Structure
|
1188
1802
|
end
|
1189
1803
|
|
1804
|
+
# A summary of a finding reason code.
|
1805
|
+
#
|
1806
|
+
# @!attribute [rw] name
|
1807
|
+
# The name of the finding reason code.
|
1808
|
+
# @return [String]
|
1809
|
+
#
|
1810
|
+
# @!attribute [rw] value
|
1811
|
+
# The value of the finding reason code summary.
|
1812
|
+
# @return [Float]
|
1813
|
+
#
|
1814
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ReasonCodeSummary AWS API Documentation
|
1815
|
+
#
|
1816
|
+
class ReasonCodeSummary < Struct.new(
|
1817
|
+
:name,
|
1818
|
+
:value)
|
1819
|
+
SENSITIVE = []
|
1820
|
+
include Aws::Structure
|
1821
|
+
end
|
1822
|
+
|
1190
1823
|
# Describes a recommendation export job.
|
1191
1824
|
#
|
1192
1825
|
# Use the `DescribeRecommendationExportJobs` action to view your
|
@@ -1284,6 +1917,19 @@ module Aws::ComputeOptimizer
|
|
1284
1917
|
|
1285
1918
|
# Describes a projected utilization metric of a recommendation option.
|
1286
1919
|
#
|
1920
|
+
# <note markdown="1"> The `Cpu` and `Memory` metrics are the only projected utilization
|
1921
|
+
# metrics returned when you run the
|
1922
|
+
# `GetEC2RecommendationProjectedMetrics` action. Additionally, the
|
1923
|
+
# `Memory` metric is returned only for resources that have the unified
|
1924
|
+
# CloudWatch agent installed on them. For more information, see
|
1925
|
+
# [Enabling Memory Utilization with the CloudWatch Agent][1].
|
1926
|
+
#
|
1927
|
+
# </note>
|
1928
|
+
#
|
1929
|
+
#
|
1930
|
+
#
|
1931
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
1932
|
+
#
|
1287
1933
|
# @!attribute [rw] recommended_instance_type
|
1288
1934
|
# The recommended instance type.
|
1289
1935
|
# @return [String]
|
@@ -1425,11 +2071,16 @@ module Aws::ComputeOptimizer
|
|
1425
2071
|
# The value of the recommendation summary.
|
1426
2072
|
# @return [Float]
|
1427
2073
|
#
|
2074
|
+
# @!attribute [rw] reason_code_summaries
|
2075
|
+
# An array of objects that summarize a finding reason code.
|
2076
|
+
# @return [Array<Types::ReasonCodeSummary>]
|
2077
|
+
#
|
1428
2078
|
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/Summary AWS API Documentation
|
1429
2079
|
#
|
1430
2080
|
class Summary < Struct.new(
|
1431
2081
|
:name,
|
1432
|
-
:value
|
2082
|
+
:value,
|
2083
|
+
:reason_code_summaries)
|
1433
2084
|
SENSITIVE = []
|
1434
2085
|
include Aws::Structure
|
1435
2086
|
end
|
@@ -1464,7 +2115,7 @@ module Aws::ComputeOptimizer
|
|
1464
2115
|
#
|
1465
2116
|
# @!attribute [rw] include_member_accounts
|
1466
2117
|
# Indicates whether to enroll member accounts of the organization if
|
1467
|
-
# the your account is the
|
2118
|
+
# the your account is the management account of an organization.
|
1468
2119
|
# @return [Boolean]
|
1469
2120
|
#
|
1470
2121
|
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/UpdateEnrollmentStatusRequest AWS API Documentation
|
@@ -1498,22 +2149,76 @@ module Aws::ComputeOptimizer
|
|
1498
2149
|
# Describes a utilization metric of a resource, such as an Amazon EC2
|
1499
2150
|
# instance.
|
1500
2151
|
#
|
2152
|
+
# Compare the utilization metric data of your resource against its
|
2153
|
+
# projected utilization metric data to determine the performance
|
2154
|
+
# difference between your current resource and the recommended option.
|
2155
|
+
#
|
1501
2156
|
# @!attribute [rw] name
|
1502
2157
|
# The name of the utilization metric.
|
1503
2158
|
#
|
1504
|
-
#
|
1505
|
-
# CloudWatch agent installed on them. For more information, see
|
1506
|
-
# [Enabling Memory Utilization with the CloudWatch Agent][1].
|
2159
|
+
# The following utilization metrics are available:
|
1507
2160
|
#
|
1508
|
-
#
|
2161
|
+
# * `Cpu` - The percentage of allocated EC2 compute units that are
|
2162
|
+
# currently in use on the instance. This metric identifies the
|
2163
|
+
# processing power required to run an application on the instance.
|
2164
|
+
#
|
2165
|
+
# Depending on the instance type, tools in your operating system can
|
2166
|
+
# show a lower percentage than CloudWatch when the instance is not
|
2167
|
+
# allocated a full processor core.
|
2168
|
+
#
|
2169
|
+
# Units: Percent
|
2170
|
+
#
|
2171
|
+
# * `Memory` - The percentage of memory that is currently in use on
|
2172
|
+
# the instance. This metric identifies the amount of memory required
|
2173
|
+
# to run an application on the instance.
|
2174
|
+
#
|
2175
|
+
# Units: Percent
|
2176
|
+
#
|
2177
|
+
# <note markdown="1"> The `Memory` metric is returned only for resources that have the
|
2178
|
+
# unified CloudWatch agent installed on them. For more information,
|
2179
|
+
# see [Enabling Memory Utilization with the CloudWatch Agent][1].
|
2180
|
+
#
|
2181
|
+
# </note>
|
2182
|
+
#
|
2183
|
+
# * `EBS_READ_OPS_PER_SECOND` - The completed read operations from all
|
2184
|
+
# EBS volumes attached to the instance in a specified period of
|
2185
|
+
# time.
|
2186
|
+
#
|
2187
|
+
# Unit: Count
|
2188
|
+
#
|
2189
|
+
# * `EBS_WRITE_OPS_PER_SECOND` - The completed write operations to all
|
2190
|
+
# EBS volumes attached to the instance in a specified period of
|
2191
|
+
# time.
|
1509
2192
|
#
|
2193
|
+
# Unit: Count
|
1510
2194
|
#
|
2195
|
+
# * `EBS_READ_BYTES_PER_SECOND` - The bytes read from all EBS volumes
|
2196
|
+
# attached to the instance in a specified period of time.
|
1511
2197
|
#
|
1512
|
-
#
|
2198
|
+
# Unit: Bytes
|
2199
|
+
#
|
2200
|
+
# * `EBS_WRITE_BYTES_PER_SECOND` - The bytes written to all EBS
|
2201
|
+
# volumes attached to the instance in a specified period of time.
|
2202
|
+
#
|
2203
|
+
# Unit: Bytes
|
2204
|
+
#
|
2205
|
+
#
|
2206
|
+
#
|
2207
|
+
# [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
|
1513
2208
|
# @return [String]
|
1514
2209
|
#
|
1515
2210
|
# @!attribute [rw] statistic
|
1516
2211
|
# The statistic of the utilization metric.
|
2212
|
+
#
|
2213
|
+
# The following statistics are available:
|
2214
|
+
#
|
2215
|
+
# * `Average` - This is the value of Sum / SampleCount during the
|
2216
|
+
# specified period, or the average value observed during the
|
2217
|
+
# specified period.
|
2218
|
+
#
|
2219
|
+
# * `Maximum` - The highest value observed during the specified
|
2220
|
+
# period. Use this value to determine high volumes of activity for
|
2221
|
+
# your application.
|
1517
2222
|
# @return [String]
|
1518
2223
|
#
|
1519
2224
|
# @!attribute [rw] value
|
@@ -1530,5 +2235,148 @@ module Aws::ComputeOptimizer
|
|
1530
2235
|
include Aws::Structure
|
1531
2236
|
end
|
1532
2237
|
|
2238
|
+
# Describes the configuration of an Amazon Elastic Block Store (Amazon
|
2239
|
+
# EBS) volume.
|
2240
|
+
#
|
2241
|
+
# @!attribute [rw] volume_type
|
2242
|
+
# The volume type.
|
2243
|
+
#
|
2244
|
+
# This can be `gp2` for General Purpose SSD, `io1` or `io2` for
|
2245
|
+
# Provisioned IOPS SSD, `st1` for Throughput Optimized HDD, `sc1` for
|
2246
|
+
# Cold HDD, or `standard` for Magnetic volumes.
|
2247
|
+
# @return [String]
|
2248
|
+
#
|
2249
|
+
# @!attribute [rw] volume_size
|
2250
|
+
# The size of the volume, in GiB.
|
2251
|
+
# @return [Integer]
|
2252
|
+
#
|
2253
|
+
# @!attribute [rw] volume_baseline_iops
|
2254
|
+
# The baseline IOPS of the volume.
|
2255
|
+
# @return [Integer]
|
2256
|
+
#
|
2257
|
+
# @!attribute [rw] volume_burst_iops
|
2258
|
+
# The burst IOPS of the volume.
|
2259
|
+
# @return [Integer]
|
2260
|
+
#
|
2261
|
+
# @!attribute [rw] volume_baseline_throughput
|
2262
|
+
# The baseline throughput of the volume.
|
2263
|
+
# @return [Integer]
|
2264
|
+
#
|
2265
|
+
# @!attribute [rw] volume_burst_throughput
|
2266
|
+
# The burst throughput of the volume.
|
2267
|
+
# @return [Integer]
|
2268
|
+
#
|
2269
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeConfiguration AWS API Documentation
|
2270
|
+
#
|
2271
|
+
class VolumeConfiguration < Struct.new(
|
2272
|
+
:volume_type,
|
2273
|
+
:volume_size,
|
2274
|
+
:volume_baseline_iops,
|
2275
|
+
:volume_burst_iops,
|
2276
|
+
:volume_baseline_throughput,
|
2277
|
+
:volume_burst_throughput)
|
2278
|
+
SENSITIVE = []
|
2279
|
+
include Aws::Structure
|
2280
|
+
end
|
2281
|
+
|
2282
|
+
# Describes an Amazon Elastic Block Store (Amazon EBS) volume
|
2283
|
+
# recommendation.
|
2284
|
+
#
|
2285
|
+
# @!attribute [rw] volume_arn
|
2286
|
+
# The Amazon Resource Name (ARN) of the current volume.
|
2287
|
+
# @return [String]
|
2288
|
+
#
|
2289
|
+
# @!attribute [rw] account_id
|
2290
|
+
# The AWS account ID of the volume.
|
2291
|
+
# @return [String]
|
2292
|
+
#
|
2293
|
+
# @!attribute [rw] current_configuration
|
2294
|
+
# An array of objects that describe the current configuration of the
|
2295
|
+
# volume.
|
2296
|
+
# @return [Types::VolumeConfiguration]
|
2297
|
+
#
|
2298
|
+
# @!attribute [rw] finding
|
2299
|
+
# The finding classification for the volume.
|
2300
|
+
#
|
2301
|
+
# Findings for volumes include:
|
2302
|
+
#
|
2303
|
+
# * <b> <code>NotOptimized</code> </b>—A volume is considered not
|
2304
|
+
# optimized when AWS Compute Optimizer identifies a recommendation
|
2305
|
+
# that can provide better performance for your workload.
|
2306
|
+
#
|
2307
|
+
# * <b> <code>Optimized</code> </b>—An volume is considered optimized
|
2308
|
+
# when Compute Optimizer determines that the volume is correctly
|
2309
|
+
# provisioned to run your workload based on the chosen volume type.
|
2310
|
+
# For optimized resources, Compute Optimizer might recommend a new
|
2311
|
+
# generation volume type.
|
2312
|
+
# @return [String]
|
2313
|
+
#
|
2314
|
+
# @!attribute [rw] utilization_metrics
|
2315
|
+
# An array of objects that describe the utilization metrics of the
|
2316
|
+
# volume.
|
2317
|
+
# @return [Array<Types::EBSUtilizationMetric>]
|
2318
|
+
#
|
2319
|
+
# @!attribute [rw] look_back_period_in_days
|
2320
|
+
# The number of days for which utilization metrics were analyzed for
|
2321
|
+
# the volume.
|
2322
|
+
# @return [Float]
|
2323
|
+
#
|
2324
|
+
# @!attribute [rw] volume_recommendation_options
|
2325
|
+
# An array of objects that describe the recommendation options for the
|
2326
|
+
# volume.
|
2327
|
+
# @return [Array<Types::VolumeRecommendationOption>]
|
2328
|
+
#
|
2329
|
+
# @!attribute [rw] last_refresh_timestamp
|
2330
|
+
# The time stamp of when the volume recommendation was last refreshed.
|
2331
|
+
# @return [Time]
|
2332
|
+
#
|
2333
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeRecommendation AWS API Documentation
|
2334
|
+
#
|
2335
|
+
class VolumeRecommendation < Struct.new(
|
2336
|
+
:volume_arn,
|
2337
|
+
:account_id,
|
2338
|
+
:current_configuration,
|
2339
|
+
:finding,
|
2340
|
+
:utilization_metrics,
|
2341
|
+
:look_back_period_in_days,
|
2342
|
+
:volume_recommendation_options,
|
2343
|
+
:last_refresh_timestamp)
|
2344
|
+
SENSITIVE = []
|
2345
|
+
include Aws::Structure
|
2346
|
+
end
|
2347
|
+
|
2348
|
+
# Describes a recommendation option for an Amazon Elastic Block Store
|
2349
|
+
# (Amazon EBS) instance.
|
2350
|
+
#
|
2351
|
+
# @!attribute [rw] configuration
|
2352
|
+
# An array of objects that describe a volume configuration.
|
2353
|
+
# @return [Types::VolumeConfiguration]
|
2354
|
+
#
|
2355
|
+
# @!attribute [rw] performance_risk
|
2356
|
+
# The performance risk of the volume recommendation option.
|
2357
|
+
#
|
2358
|
+
# Performance risk is the likelihood of the recommended volume type
|
2359
|
+
# not meeting the performance requirement of your workload.
|
2360
|
+
#
|
2361
|
+
# The lowest performance risk is categorized as `0`, and the highest
|
2362
|
+
# as `5`.
|
2363
|
+
# @return [Float]
|
2364
|
+
#
|
2365
|
+
# @!attribute [rw] rank
|
2366
|
+
# The rank of the volume recommendation option.
|
2367
|
+
#
|
2368
|
+
# The top recommendation option is ranked as `1`.
|
2369
|
+
# @return [Integer]
|
2370
|
+
#
|
2371
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeRecommendationOption AWS API Documentation
|
2372
|
+
#
|
2373
|
+
class VolumeRecommendationOption < Struct.new(
|
2374
|
+
:configuration,
|
2375
|
+
:performance_risk,
|
2376
|
+
:rank)
|
2377
|
+
SENSITIVE = []
|
2378
|
+
include Aws::Structure
|
2379
|
+
end
|
2380
|
+
|
1533
2381
|
end
|
1534
2382
|
end
|