Skip to content

Commit 1cf227f

Browse files
author
awstools
committed
feat(client-compute-optimizer): This release enables AWS Compute Optimizer to analyze and generate optimization recommendations for Amazon RDS MySQL and RDS PostgreSQL.
1 parent b3374d1 commit 1cf227f

23 files changed

+6435
-2562
lines changed

clients/client-compute-optimizer/README.md

+24
Original file line numberDiff line numberDiff line change
@@ -277,6 +277,14 @@ ExportLicenseRecommendations
277277

278278
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/compute-optimizer/command/ExportLicenseRecommendationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/ExportLicenseRecommendationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/ExportLicenseRecommendationsCommandOutput/)
279279

280+
</details>
281+
<details>
282+
<summary>
283+
ExportRDSDatabaseRecommendations
284+
</summary>
285+
286+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/compute-optimizer/command/ExportRDSDatabaseRecommendationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/ExportRDSDatabaseRecommendationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/ExportRDSDatabaseRecommendationsCommandOutput/)
287+
280288
</details>
281289
<details>
282290
<summary>
@@ -365,6 +373,22 @@ GetLicenseRecommendations
365373

366374
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/compute-optimizer/command/GetLicenseRecommendationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetLicenseRecommendationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetLicenseRecommendationsCommandOutput/)
367375

376+
</details>
377+
<details>
378+
<summary>
379+
GetRDSDatabaseRecommendationProjectedMetrics
380+
</summary>
381+
382+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/compute-optimizer/command/GetRDSDatabaseRecommendationProjectedMetricsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetRDSDatabaseRecommendationProjectedMetricsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetRDSDatabaseRecommendationProjectedMetricsCommandOutput/)
383+
384+
</details>
385+
<details>
386+
<summary>
387+
GetRDSDatabaseRecommendations
388+
</summary>
389+
390+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/compute-optimizer/command/GetRDSDatabaseRecommendationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetRDSDatabaseRecommendationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-compute-optimizer/Interface/GetRDSDatabaseRecommendationsCommandOutput/)
391+
368392
</details>
369393
<details>
370394
<summary>

clients/client-compute-optimizer/src/ComputeOptimizer.ts

+70
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ import {
4242
ExportLicenseRecommendationsCommandInput,
4343
ExportLicenseRecommendationsCommandOutput,
4444
} from "./commands/ExportLicenseRecommendationsCommand";
45+
import {
46+
ExportRDSDatabaseRecommendationsCommand,
47+
ExportRDSDatabaseRecommendationsCommandInput,
48+
ExportRDSDatabaseRecommendationsCommandOutput,
49+
} from "./commands/ExportRDSDatabaseRecommendationsCommand";
4550
import {
4651
GetAutoScalingGroupRecommendationsCommand,
4752
GetAutoScalingGroupRecommendationsCommandInput,
@@ -97,6 +102,16 @@ import {
97102
GetLicenseRecommendationsCommandInput,
98103
GetLicenseRecommendationsCommandOutput,
99104
} from "./commands/GetLicenseRecommendationsCommand";
105+
import {
106+
GetRDSDatabaseRecommendationProjectedMetricsCommand,
107+
GetRDSDatabaseRecommendationProjectedMetricsCommandInput,
108+
GetRDSDatabaseRecommendationProjectedMetricsCommandOutput,
109+
} from "./commands/GetRDSDatabaseRecommendationProjectedMetricsCommand";
110+
import {
111+
GetRDSDatabaseRecommendationsCommand,
112+
GetRDSDatabaseRecommendationsCommandInput,
113+
GetRDSDatabaseRecommendationsCommandOutput,
114+
} from "./commands/GetRDSDatabaseRecommendationsCommand";
100115
import {
101116
GetRecommendationPreferencesCommand,
102117
GetRecommendationPreferencesCommandInput,
@@ -128,6 +143,7 @@ const commands = {
128143
ExportECSServiceRecommendationsCommand,
129144
ExportLambdaFunctionRecommendationsCommand,
130145
ExportLicenseRecommendationsCommand,
146+
ExportRDSDatabaseRecommendationsCommand,
131147
GetAutoScalingGroupRecommendationsCommand,
132148
GetEBSVolumeRecommendationsCommand,
133149
GetEC2InstanceRecommendationsCommand,
@@ -139,6 +155,8 @@ const commands = {
139155
GetEnrollmentStatusesForOrganizationCommand,
140156
GetLambdaFunctionRecommendationsCommand,
141157
GetLicenseRecommendationsCommand,
158+
GetRDSDatabaseRecommendationProjectedMetricsCommand,
159+
GetRDSDatabaseRecommendationsCommand,
142160
GetRecommendationPreferencesCommand,
143161
GetRecommendationSummariesCommand,
144162
PutRecommendationPreferencesCommand,
@@ -283,6 +301,23 @@ export interface ComputeOptimizer {
283301
cb: (err: any, data?: ExportLicenseRecommendationsCommandOutput) => void
284302
): void;
285303

304+
/**
305+
* @see {@link ExportRDSDatabaseRecommendationsCommand}
306+
*/
307+
exportRDSDatabaseRecommendations(
308+
args: ExportRDSDatabaseRecommendationsCommandInput,
309+
options?: __HttpHandlerOptions
310+
): Promise<ExportRDSDatabaseRecommendationsCommandOutput>;
311+
exportRDSDatabaseRecommendations(
312+
args: ExportRDSDatabaseRecommendationsCommandInput,
313+
cb: (err: any, data?: ExportRDSDatabaseRecommendationsCommandOutput) => void
314+
): void;
315+
exportRDSDatabaseRecommendations(
316+
args: ExportRDSDatabaseRecommendationsCommandInput,
317+
options: __HttpHandlerOptions,
318+
cb: (err: any, data?: ExportRDSDatabaseRecommendationsCommandOutput) => void
319+
): void;
320+
286321
/**
287322
* @see {@link GetAutoScalingGroupRecommendationsCommand}
288323
*/
@@ -478,6 +513,41 @@ export interface ComputeOptimizer {
478513
cb: (err: any, data?: GetLicenseRecommendationsCommandOutput) => void
479514
): void;
480515

516+
/**
517+
* @see {@link GetRDSDatabaseRecommendationProjectedMetricsCommand}
518+
*/
519+
getRDSDatabaseRecommendationProjectedMetrics(
520+
args: GetRDSDatabaseRecommendationProjectedMetricsCommandInput,
521+
options?: __HttpHandlerOptions
522+
): Promise<GetRDSDatabaseRecommendationProjectedMetricsCommandOutput>;
523+
getRDSDatabaseRecommendationProjectedMetrics(
524+
args: GetRDSDatabaseRecommendationProjectedMetricsCommandInput,
525+
cb: (err: any, data?: GetRDSDatabaseRecommendationProjectedMetricsCommandOutput) => void
526+
): void;
527+
getRDSDatabaseRecommendationProjectedMetrics(
528+
args: GetRDSDatabaseRecommendationProjectedMetricsCommandInput,
529+
options: __HttpHandlerOptions,
530+
cb: (err: any, data?: GetRDSDatabaseRecommendationProjectedMetricsCommandOutput) => void
531+
): void;
532+
533+
/**
534+
* @see {@link GetRDSDatabaseRecommendationsCommand}
535+
*/
536+
getRDSDatabaseRecommendations(): Promise<GetRDSDatabaseRecommendationsCommandOutput>;
537+
getRDSDatabaseRecommendations(
538+
args: GetRDSDatabaseRecommendationsCommandInput,
539+
options?: __HttpHandlerOptions
540+
): Promise<GetRDSDatabaseRecommendationsCommandOutput>;
541+
getRDSDatabaseRecommendations(
542+
args: GetRDSDatabaseRecommendationsCommandInput,
543+
cb: (err: any, data?: GetRDSDatabaseRecommendationsCommandOutput) => void
544+
): void;
545+
getRDSDatabaseRecommendations(
546+
args: GetRDSDatabaseRecommendationsCommandInput,
547+
options: __HttpHandlerOptions,
548+
cb: (err: any, data?: GetRDSDatabaseRecommendationsCommandOutput) => void
549+
): void;
550+
481551
/**
482552
* @see {@link GetRecommendationPreferencesCommand}
483553
*/

clients/client-compute-optimizer/src/ComputeOptimizerClient.ts

+18
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,10 @@ import {
8585
ExportLicenseRecommendationsCommandInput,
8686
ExportLicenseRecommendationsCommandOutput,
8787
} from "./commands/ExportLicenseRecommendationsCommand";
88+
import {
89+
ExportRDSDatabaseRecommendationsCommandInput,
90+
ExportRDSDatabaseRecommendationsCommandOutput,
91+
} from "./commands/ExportRDSDatabaseRecommendationsCommand";
8892
import {
8993
GetAutoScalingGroupRecommendationsCommandInput,
9094
GetAutoScalingGroupRecommendationsCommandOutput,
@@ -129,6 +133,14 @@ import {
129133
GetLicenseRecommendationsCommandInput,
130134
GetLicenseRecommendationsCommandOutput,
131135
} from "./commands/GetLicenseRecommendationsCommand";
136+
import {
137+
GetRDSDatabaseRecommendationProjectedMetricsCommandInput,
138+
GetRDSDatabaseRecommendationProjectedMetricsCommandOutput,
139+
} from "./commands/GetRDSDatabaseRecommendationProjectedMetricsCommand";
140+
import {
141+
GetRDSDatabaseRecommendationsCommandInput,
142+
GetRDSDatabaseRecommendationsCommandOutput,
143+
} from "./commands/GetRDSDatabaseRecommendationsCommand";
132144
import {
133145
GetRecommendationPreferencesCommandInput,
134146
GetRecommendationPreferencesCommandOutput,
@@ -168,6 +180,7 @@ export type ServiceInputTypes =
168180
| ExportECSServiceRecommendationsCommandInput
169181
| ExportLambdaFunctionRecommendationsCommandInput
170182
| ExportLicenseRecommendationsCommandInput
183+
| ExportRDSDatabaseRecommendationsCommandInput
171184
| GetAutoScalingGroupRecommendationsCommandInput
172185
| GetEBSVolumeRecommendationsCommandInput
173186
| GetEC2InstanceRecommendationsCommandInput
@@ -179,6 +192,8 @@ export type ServiceInputTypes =
179192
| GetEnrollmentStatusesForOrganizationCommandInput
180193
| GetLambdaFunctionRecommendationsCommandInput
181194
| GetLicenseRecommendationsCommandInput
195+
| GetRDSDatabaseRecommendationProjectedMetricsCommandInput
196+
| GetRDSDatabaseRecommendationsCommandInput
182197
| GetRecommendationPreferencesCommandInput
183198
| GetRecommendationSummariesCommandInput
184199
| PutRecommendationPreferencesCommandInput
@@ -196,6 +211,7 @@ export type ServiceOutputTypes =
196211
| ExportECSServiceRecommendationsCommandOutput
197212
| ExportLambdaFunctionRecommendationsCommandOutput
198213
| ExportLicenseRecommendationsCommandOutput
214+
| ExportRDSDatabaseRecommendationsCommandOutput
199215
| GetAutoScalingGroupRecommendationsCommandOutput
200216
| GetEBSVolumeRecommendationsCommandOutput
201217
| GetEC2InstanceRecommendationsCommandOutput
@@ -207,6 +223,8 @@ export type ServiceOutputTypes =
207223
| GetEnrollmentStatusesForOrganizationCommandOutput
208224
| GetLambdaFunctionRecommendationsCommandOutput
209225
| GetLicenseRecommendationsCommandOutput
226+
| GetRDSDatabaseRecommendationProjectedMetricsCommandOutput
227+
| GetRDSDatabaseRecommendationsCommandOutput
210228
| GetRecommendationPreferencesCommandOutput
211229
| GetRecommendationSummariesCommandOutput
212230
| PutRecommendationPreferencesCommandOutput

clients/client-compute-optimizer/src/commands/DeleteRecommendationPreferencesCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ export interface DeleteRecommendationPreferencesCommandOutput
4444
* // const { ComputeOptimizerClient, DeleteRecommendationPreferencesCommand } = require("@aws-sdk/client-compute-optimizer"); // CommonJS import
4545
* const client = new ComputeOptimizerClient(config);
4646
* const input = { // DeleteRecommendationPreferencesRequest
47-
* resourceType: "Ec2Instance" || "AutoScalingGroup" || "EbsVolume" || "LambdaFunction" || "NotApplicable" || "EcsService" || "License", // required
47+
* resourceType: "Ec2Instance" || "AutoScalingGroup" || "EbsVolume" || "LambdaFunction" || "NotApplicable" || "EcsService" || "License" || "RdsDBInstance", // required
4848
* scope: { // Scope
4949
* name: "Organization" || "AccountId" || "ResourceArn",
5050
* value: "STRING_VALUE",

clients/client-compute-optimizer/src/commands/DescribeRecommendationExportJobsCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ export interface DescribeRecommendationExportJobsCommandOutput
7171
* // metadataKey: "STRING_VALUE",
7272
* // },
7373
* // },
74-
* // resourceType: "Ec2Instance" || "AutoScalingGroup" || "EbsVolume" || "LambdaFunction" || "NotApplicable" || "EcsService" || "License",
74+
* // resourceType: "Ec2Instance" || "AutoScalingGroup" || "EbsVolume" || "LambdaFunction" || "NotApplicable" || "EcsService" || "License" || "RdsDBInstance",
7575
* // status: "Queued" || "InProgress" || "Complete" || "Failed",
7676
* // creationTimestamp: new Date("TIMESTAMP"),
7777
* // lastUpdatedTimestamp: new Date("TIMESTAMP"),

clients/client-compute-optimizer/src/commands/ExportAutoScalingGroupRecommendationsCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ export interface ExportAutoScalingGroupRecommendationsCommandOutput
6262
* },
6363
* ],
6464
* fieldsToExport: [ // ExportableAutoScalingGroupFields
65-
* "AccountId" || "AutoScalingGroupArn" || "AutoScalingGroupName" || "Finding" || "UtilizationMetricsCpuMaximum" || "UtilizationMetricsMemoryMaximum" || "UtilizationMetricsEbsReadOpsPerSecondMaximum" || "UtilizationMetricsEbsWriteOpsPerSecondMaximum" || "UtilizationMetricsEbsReadBytesPerSecondMaximum" || "UtilizationMetricsEbsWriteBytesPerSecondMaximum" || "UtilizationMetricsDiskReadOpsPerSecondMaximum" || "UtilizationMetricsDiskWriteOpsPerSecondMaximum" || "UtilizationMetricsDiskReadBytesPerSecondMaximum" || "UtilizationMetricsDiskWriteBytesPerSecondMaximum" || "UtilizationMetricsNetworkInBytesPerSecondMaximum" || "UtilizationMetricsNetworkOutBytesPerSecondMaximum" || "UtilizationMetricsNetworkPacketsInPerSecondMaximum" || "UtilizationMetricsNetworkPacketsOutPerSecondMaximum" || "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" || "CurrentPerformanceRisk" || "RecommendationOptionsSavingsOpportunityPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrency" || "RecommendationOptionsEstimatedMonthlySavingsValue" || "EffectiveRecommendationPreferencesCpuVendorArchitectures" || "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" || "EffectiveRecommendationPreferencesInferredWorkloadTypes" || "InferredWorkloadTypes" || "RecommendationOptionsMigrationEffort" || "CurrentInstanceGpuInfo" || "RecommendationOptionsInstanceGpuInfo" || "UtilizationMetricsGpuPercentageMaximum" || "UtilizationMetricsGpuMemoryPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" || "EffectiveRecommendationPreferencesSavingsEstimationMode" || "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" || "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" || "EffectiveRecommendationPreferencesPreferredResources" || "EffectiveRecommendationPreferencesLookBackPeriod",
65+
* "AccountId" || "AutoScalingGroupArn" || "AutoScalingGroupName" || "Finding" || "UtilizationMetricsCpuMaximum" || "UtilizationMetricsMemoryMaximum" || "UtilizationMetricsEbsReadOpsPerSecondMaximum" || "UtilizationMetricsEbsWriteOpsPerSecondMaximum" || "UtilizationMetricsEbsReadBytesPerSecondMaximum" || "UtilizationMetricsEbsWriteBytesPerSecondMaximum" || "UtilizationMetricsDiskReadOpsPerSecondMaximum" || "UtilizationMetricsDiskWriteOpsPerSecondMaximum" || "UtilizationMetricsDiskReadBytesPerSecondMaximum" || "UtilizationMetricsDiskWriteBytesPerSecondMaximum" || "UtilizationMetricsNetworkInBytesPerSecondMaximum" || "UtilizationMetricsNetworkOutBytesPerSecondMaximum" || "UtilizationMetricsNetworkPacketsInPerSecondMaximum" || "UtilizationMetricsNetworkPacketsOutPerSecondMaximum" || "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" || "CurrentPerformanceRisk" || "RecommendationOptionsSavingsOpportunityPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrency" || "RecommendationOptionsEstimatedMonthlySavingsValue" || "EffectiveRecommendationPreferencesCpuVendorArchitectures" || "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" || "EffectiveRecommendationPreferencesInferredWorkloadTypes" || "EffectiveRecommendationPreferencesPreferredResources" || "EffectiveRecommendationPreferencesLookBackPeriod" || "InferredWorkloadTypes" || "RecommendationOptionsMigrationEffort" || "CurrentInstanceGpuInfo" || "RecommendationOptionsInstanceGpuInfo" || "UtilizationMetricsGpuPercentageMaximum" || "UtilizationMetricsGpuMemoryPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" || "EffectiveRecommendationPreferencesSavingsEstimationMode" || "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" || "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts",
6666
* ],
6767
* s3DestinationConfig: { // S3DestinationConfig
6868
* bucket: "STRING_VALUE",

0 commit comments

Comments
 (0)