@aws-sdk/client-compute-optimizer 3.235.0 → 3.237.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +2 -1
  2. package/dist-cjs/ComputeOptimizer.js +45 -0
  3. package/dist-cjs/commands/ExportECSServiceRecommendationsCommand.js +46 -0
  4. package/dist-cjs/commands/GetECSServiceRecommendationProjectedMetricsCommand.js +46 -0
  5. package/dist-cjs/commands/GetECSServiceRecommendationsCommand.js +46 -0
  6. package/dist-cjs/commands/index.js +3 -0
  7. package/dist-cjs/endpoint/ruleset.js +3 -3
  8. package/dist-cjs/index.js +1 -0
  9. package/dist-cjs/models/models_0.js +137 -3
  10. package/dist-cjs/pagination/DescribeRecommendationExportJobsPaginator.js +36 -0
  11. package/dist-cjs/pagination/GetEnrollmentStatusesForOrganizationPaginator.js +36 -0
  12. package/dist-cjs/pagination/GetLambdaFunctionRecommendationsPaginator.js +36 -0
  13. package/dist-cjs/pagination/GetRecommendationPreferencesPaginator.js +36 -0
  14. package/dist-cjs/pagination/GetRecommendationSummariesPaginator.js +36 -0
  15. package/dist-cjs/pagination/Interfaces.js +2 -0
  16. package/dist-cjs/pagination/index.js +9 -0
  17. package/dist-cjs/protocols/Aws_json1_0.js +491 -1
  18. package/dist-es/ComputeOptimizer.js +45 -0
  19. package/dist-es/commands/ExportECSServiceRecommendationsCommand.js +42 -0
  20. package/dist-es/commands/GetECSServiceRecommendationProjectedMetricsCommand.js +42 -0
  21. package/dist-es/commands/GetECSServiceRecommendationsCommand.js +42 -0
  22. package/dist-es/commands/index.js +3 -0
  23. package/dist-es/endpoint/ruleset.js +3 -3
  24. package/dist-es/index.js +1 -0
  25. package/dist-es/models/models_0.js +117 -0
  26. package/dist-es/pagination/DescribeRecommendationExportJobsPaginator.js +32 -0
  27. package/dist-es/pagination/GetEnrollmentStatusesForOrganizationPaginator.js +32 -0
  28. package/dist-es/pagination/GetLambdaFunctionRecommendationsPaginator.js +32 -0
  29. package/dist-es/pagination/GetRecommendationPreferencesPaginator.js +32 -0
  30. package/dist-es/pagination/GetRecommendationSummariesPaginator.js +32 -0
  31. package/dist-es/pagination/Interfaces.js +1 -0
  32. package/dist-es/pagination/index.js +6 -0
  33. package/dist-es/protocols/Aws_json1_0.js +484 -0
  34. package/dist-types/ComputeOptimizer.d.ts +76 -32
  35. package/dist-types/ComputeOptimizerClient.d.ts +7 -3
  36. package/dist-types/commands/DeleteRecommendationPreferencesCommand.d.ts +1 -1
  37. package/dist-types/commands/DescribeRecommendationExportJobsCommand.d.ts +1 -1
  38. package/dist-types/commands/ExportAutoScalingGroupRecommendationsCommand.d.ts +2 -2
  39. package/dist-types/commands/ExportEBSVolumeRecommendationsCommand.d.ts +2 -2
  40. package/dist-types/commands/ExportEC2InstanceRecommendationsCommand.d.ts +2 -2
  41. package/dist-types/commands/ExportECSServiceRecommendationsCommand.d.ts +44 -0
  42. package/dist-types/commands/ExportLambdaFunctionRecommendationsCommand.d.ts +2 -2
  43. package/dist-types/commands/GetAutoScalingGroupRecommendationsCommand.d.ts +1 -1
  44. package/dist-types/commands/GetEBSVolumeRecommendationsCommand.d.ts +1 -1
  45. package/dist-types/commands/GetEC2InstanceRecommendationsCommand.d.ts +1 -1
  46. package/dist-types/commands/GetEC2RecommendationProjectedMetricsCommand.d.ts +2 -2
  47. package/dist-types/commands/GetECSServiceRecommendationProjectedMetricsCommand.d.ts +39 -0
  48. package/dist-types/commands/GetECSServiceRecommendationsCommand.d.ts +46 -0
  49. package/dist-types/commands/GetEffectiveRecommendationPreferencesCommand.d.ts +1 -1
  50. package/dist-types/commands/GetEnrollmentStatusCommand.d.ts +1 -1
  51. package/dist-types/commands/GetEnrollmentStatusesForOrganizationCommand.d.ts +1 -1
  52. package/dist-types/commands/GetLambdaFunctionRecommendationsCommand.d.ts +1 -1
  53. package/dist-types/commands/GetRecommendationPreferencesCommand.d.ts +2 -2
  54. package/dist-types/commands/GetRecommendationSummariesCommand.d.ts +10 -6
  55. package/dist-types/commands/PutRecommendationPreferencesCommand.d.ts +1 -1
  56. package/dist-types/commands/UpdateEnrollmentStatusCommand.d.ts +3 -3
  57. package/dist-types/commands/index.d.ts +3 -0
  58. package/dist-types/index.d.ts +1 -0
  59. package/dist-types/models/models_0.d.ts +1353 -519
  60. package/dist-types/pagination/DescribeRecommendationExportJobsPaginator.d.ts +4 -0
  61. package/dist-types/pagination/GetEnrollmentStatusesForOrganizationPaginator.d.ts +4 -0
  62. package/dist-types/pagination/GetLambdaFunctionRecommendationsPaginator.d.ts +4 -0
  63. package/dist-types/pagination/GetRecommendationPreferencesPaginator.d.ts +4 -0
  64. package/dist-types/pagination/GetRecommendationSummariesPaginator.d.ts +4 -0
  65. package/dist-types/pagination/Interfaces.d.ts +6 -0
  66. package/dist-types/pagination/index.d.ts +6 -0
  67. package/dist-types/protocols/Aws_json1_0.d.ts +9 -0
  68. package/dist-types/ts3.4/ComputeOptimizer.d.ts +57 -0
  69. package/dist-types/ts3.4/ComputeOptimizerClient.d.ts +18 -0
  70. package/dist-types/ts3.4/commands/ExportECSServiceRecommendationsCommand.d.ts +41 -0
  71. package/dist-types/ts3.4/commands/GetECSServiceRecommendationProjectedMetricsCommand.d.ts +41 -0
  72. package/dist-types/ts3.4/commands/GetECSServiceRecommendationsCommand.d.ts +41 -0
  73. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  74. package/dist-types/ts3.4/index.d.ts +1 -0
  75. package/dist-types/ts3.4/models/models_0.d.ts +210 -0
  76. package/dist-types/ts3.4/pagination/DescribeRecommendationExportJobsPaginator.d.ts +11 -0
  77. package/dist-types/ts3.4/pagination/GetEnrollmentStatusesForOrganizationPaginator.d.ts +11 -0
  78. package/dist-types/ts3.4/pagination/GetLambdaFunctionRecommendationsPaginator.d.ts +11 -0
  79. package/dist-types/ts3.4/pagination/GetRecommendationPreferencesPaginator.d.ts +11 -0
  80. package/dist-types/ts3.4/pagination/GetRecommendationSummariesPaginator.d.ts +11 -0
  81. package/dist-types/ts3.4/pagination/Interfaces.d.ts +7 -0
  82. package/dist-types/ts3.4/pagination/index.d.ts +6 -0
  83. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +36 -0
  84. package/package.json +3 -3
package/README.md CHANGED
@@ -11,7 +11,8 @@ AWS SDK for JavaScript ComputeOptimizer Client for Node.js, Browser and React Na
11
11
 
12
12
  <p>Compute Optimizer is a service that analyzes the configuration and utilization
13
13
  metrics of your Amazon Web Services compute resources, such as Amazon EC2
14
- instances, Amazon EC2 Auto Scaling groups, Lambda functions, and Amazon EBS volumes. It reports whether your resources are optimal, and generates
14
+ instances, Amazon EC2 Auto Scaling groups, Lambda functions, Amazon EBS volumes, and Amazon ECS services on Fargate.
15
+ It reports whether your resources are optimal, and generates
15
16
  optimization recommendations to reduce the cost and improve the performance of your
16
17
  workloads. Compute Optimizer also provides recent utilization metric data, in addition
17
18
  to projected utilization metric data for the recommendations, which you can use to
@@ -6,11 +6,14 @@ const DescribeRecommendationExportJobsCommand_1 = require("./commands/DescribeRe
6
6
  const ExportAutoScalingGroupRecommendationsCommand_1 = require("./commands/ExportAutoScalingGroupRecommendationsCommand");
7
7
  const ExportEBSVolumeRecommendationsCommand_1 = require("./commands/ExportEBSVolumeRecommendationsCommand");
8
8
  const ExportEC2InstanceRecommendationsCommand_1 = require("./commands/ExportEC2InstanceRecommendationsCommand");
9
+ const ExportECSServiceRecommendationsCommand_1 = require("./commands/ExportECSServiceRecommendationsCommand");
9
10
  const ExportLambdaFunctionRecommendationsCommand_1 = require("./commands/ExportLambdaFunctionRecommendationsCommand");
10
11
  const GetAutoScalingGroupRecommendationsCommand_1 = require("./commands/GetAutoScalingGroupRecommendationsCommand");
11
12
  const GetEBSVolumeRecommendationsCommand_1 = require("./commands/GetEBSVolumeRecommendationsCommand");
12
13
  const GetEC2InstanceRecommendationsCommand_1 = require("./commands/GetEC2InstanceRecommendationsCommand");
13
14
  const GetEC2RecommendationProjectedMetricsCommand_1 = require("./commands/GetEC2RecommendationProjectedMetricsCommand");
15
+ const GetECSServiceRecommendationProjectedMetricsCommand_1 = require("./commands/GetECSServiceRecommendationProjectedMetricsCommand");
16
+ const GetECSServiceRecommendationsCommand_1 = require("./commands/GetECSServiceRecommendationsCommand");
14
17
  const GetEffectiveRecommendationPreferencesCommand_1 = require("./commands/GetEffectiveRecommendationPreferencesCommand");
15
18
  const GetEnrollmentStatusCommand_1 = require("./commands/GetEnrollmentStatusCommand");
16
19
  const GetEnrollmentStatusesForOrganizationCommand_1 = require("./commands/GetEnrollmentStatusesForOrganizationCommand");
@@ -91,6 +94,20 @@ class ComputeOptimizer extends ComputeOptimizerClient_1.ComputeOptimizerClient {
91
94
  return this.send(command, optionsOrCb);
92
95
  }
93
96
  }
97
+ exportECSServiceRecommendations(args, optionsOrCb, cb) {
98
+ const command = new ExportECSServiceRecommendationsCommand_1.ExportECSServiceRecommendationsCommand(args);
99
+ if (typeof optionsOrCb === "function") {
100
+ this.send(command, optionsOrCb);
101
+ }
102
+ else if (typeof cb === "function") {
103
+ if (typeof optionsOrCb !== "object")
104
+ throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
105
+ this.send(command, optionsOrCb || {}, cb);
106
+ }
107
+ else {
108
+ return this.send(command, optionsOrCb);
109
+ }
110
+ }
94
111
  exportLambdaFunctionRecommendations(args, optionsOrCb, cb) {
95
112
  const command = new ExportLambdaFunctionRecommendationsCommand_1.ExportLambdaFunctionRecommendationsCommand(args);
96
113
  if (typeof optionsOrCb === "function") {
@@ -161,6 +178,34 @@ class ComputeOptimizer extends ComputeOptimizerClient_1.ComputeOptimizerClient {
161
178
  return this.send(command, optionsOrCb);
162
179
  }
163
180
  }
181
+ getECSServiceRecommendationProjectedMetrics(args, optionsOrCb, cb) {
182
+ const command = new GetECSServiceRecommendationProjectedMetricsCommand_1.GetECSServiceRecommendationProjectedMetricsCommand(args);
183
+ if (typeof optionsOrCb === "function") {
184
+ this.send(command, optionsOrCb);
185
+ }
186
+ else if (typeof cb === "function") {
187
+ if (typeof optionsOrCb !== "object")
188
+ throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
189
+ this.send(command, optionsOrCb || {}, cb);
190
+ }
191
+ else {
192
+ return this.send(command, optionsOrCb);
193
+ }
194
+ }
195
+ getECSServiceRecommendations(args, optionsOrCb, cb) {
196
+ const command = new GetECSServiceRecommendationsCommand_1.GetECSServiceRecommendationsCommand(args);
197
+ if (typeof optionsOrCb === "function") {
198
+ this.send(command, optionsOrCb);
199
+ }
200
+ else if (typeof cb === "function") {
201
+ if (typeof optionsOrCb !== "object")
202
+ throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
203
+ this.send(command, optionsOrCb || {}, cb);
204
+ }
205
+ else {
206
+ return this.send(command, optionsOrCb);
207
+ }
208
+ }
164
209
  getEffectiveRecommendationPreferences(args, optionsOrCb, cb) {
165
210
  const command = new GetEffectiveRecommendationPreferencesCommand_1.GetEffectiveRecommendationPreferencesCommand(args);
166
211
  if (typeof optionsOrCb === "function") {
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExportECSServiceRecommendationsCommand = void 0;
4
+ const middleware_endpoint_1 = require("@aws-sdk/middleware-endpoint");
5
+ const middleware_serde_1 = require("@aws-sdk/middleware-serde");
6
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const models_0_1 = require("../models/models_0");
8
+ const Aws_json1_0_1 = require("../protocols/Aws_json1_0");
9
+ class ExportECSServiceRecommendationsCommand extends smithy_client_1.Command {
10
+ constructor(input) {
11
+ super();
12
+ this.input = input;
13
+ }
14
+ static getEndpointParameterInstructions() {
15
+ return {
16
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
17
+ Endpoint: { type: "builtInParams", name: "endpoint" },
18
+ Region: { type: "builtInParams", name: "region" },
19
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
20
+ };
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, ExportECSServiceRecommendationsCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "ComputeOptimizerClient";
28
+ const commandName = "ExportECSServiceRecommendationsCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: models_0_1.ExportECSServiceRecommendationsRequestFilterSensitiveLog,
34
+ outputFilterSensitiveLog: models_0_1.ExportECSServiceRecommendationsResponseFilterSensitiveLog,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_json1_0_1.serializeAws_json1_0ExportECSServiceRecommendationsCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_json1_0_1.deserializeAws_json1_0ExportECSServiceRecommendationsCommand)(output, context);
44
+ }
45
+ }
46
+ exports.ExportECSServiceRecommendationsCommand = ExportECSServiceRecommendationsCommand;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetECSServiceRecommendationProjectedMetricsCommand = void 0;
4
+ const middleware_endpoint_1 = require("@aws-sdk/middleware-endpoint");
5
+ const middleware_serde_1 = require("@aws-sdk/middleware-serde");
6
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const models_0_1 = require("../models/models_0");
8
+ const Aws_json1_0_1 = require("../protocols/Aws_json1_0");
9
+ class GetECSServiceRecommendationProjectedMetricsCommand extends smithy_client_1.Command {
10
+ constructor(input) {
11
+ super();
12
+ this.input = input;
13
+ }
14
+ static getEndpointParameterInstructions() {
15
+ return {
16
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
17
+ Endpoint: { type: "builtInParams", name: "endpoint" },
18
+ Region: { type: "builtInParams", name: "region" },
19
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
20
+ };
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, GetECSServiceRecommendationProjectedMetricsCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "ComputeOptimizerClient";
28
+ const commandName = "GetECSServiceRecommendationProjectedMetricsCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: models_0_1.GetECSServiceRecommendationProjectedMetricsRequestFilterSensitiveLog,
34
+ outputFilterSensitiveLog: models_0_1.GetECSServiceRecommendationProjectedMetricsResponseFilterSensitiveLog,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_json1_0_1.serializeAws_json1_0GetECSServiceRecommendationProjectedMetricsCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_json1_0_1.deserializeAws_json1_0GetECSServiceRecommendationProjectedMetricsCommand)(output, context);
44
+ }
45
+ }
46
+ exports.GetECSServiceRecommendationProjectedMetricsCommand = GetECSServiceRecommendationProjectedMetricsCommand;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetECSServiceRecommendationsCommand = void 0;
4
+ const middleware_endpoint_1 = require("@aws-sdk/middleware-endpoint");
5
+ const middleware_serde_1 = require("@aws-sdk/middleware-serde");
6
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const models_0_1 = require("../models/models_0");
8
+ const Aws_json1_0_1 = require("../protocols/Aws_json1_0");
9
+ class GetECSServiceRecommendationsCommand extends smithy_client_1.Command {
10
+ constructor(input) {
11
+ super();
12
+ this.input = input;
13
+ }
14
+ static getEndpointParameterInstructions() {
15
+ return {
16
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
17
+ Endpoint: { type: "builtInParams", name: "endpoint" },
18
+ Region: { type: "builtInParams", name: "region" },
19
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
20
+ };
21
+ }
22
+ resolveMiddleware(clientStack, configuration, options) {
23
+ this.middlewareStack.use((0, middleware_serde_1.getSerdePlugin)(configuration, this.serialize, this.deserialize));
24
+ this.middlewareStack.use((0, middleware_endpoint_1.getEndpointPlugin)(configuration, GetECSServiceRecommendationsCommand.getEndpointParameterInstructions()));
25
+ const stack = clientStack.concat(this.middlewareStack);
26
+ const { logger } = configuration;
27
+ const clientName = "ComputeOptimizerClient";
28
+ const commandName = "GetECSServiceRecommendationsCommand";
29
+ const handlerExecutionContext = {
30
+ logger,
31
+ clientName,
32
+ commandName,
33
+ inputFilterSensitiveLog: models_0_1.GetECSServiceRecommendationsRequestFilterSensitiveLog,
34
+ outputFilterSensitiveLog: models_0_1.GetECSServiceRecommendationsResponseFilterSensitiveLog,
35
+ };
36
+ const { requestHandler } = configuration;
37
+ return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);
38
+ }
39
+ serialize(input, context) {
40
+ return (0, Aws_json1_0_1.serializeAws_json1_0GetECSServiceRecommendationsCommand)(input, context);
41
+ }
42
+ deserialize(output, context) {
43
+ return (0, Aws_json1_0_1.deserializeAws_json1_0GetECSServiceRecommendationsCommand)(output, context);
44
+ }
45
+ }
46
+ exports.GetECSServiceRecommendationsCommand = GetECSServiceRecommendationsCommand;
@@ -6,11 +6,14 @@ tslib_1.__exportStar(require("./DescribeRecommendationExportJobsCommand"), expor
6
6
  tslib_1.__exportStar(require("./ExportAutoScalingGroupRecommendationsCommand"), exports);
7
7
  tslib_1.__exportStar(require("./ExportEBSVolumeRecommendationsCommand"), exports);
8
8
  tslib_1.__exportStar(require("./ExportEC2InstanceRecommendationsCommand"), exports);
9
+ tslib_1.__exportStar(require("./ExportECSServiceRecommendationsCommand"), exports);
9
10
  tslib_1.__exportStar(require("./ExportLambdaFunctionRecommendationsCommand"), exports);
10
11
  tslib_1.__exportStar(require("./GetAutoScalingGroupRecommendationsCommand"), exports);
11
12
  tslib_1.__exportStar(require("./GetEBSVolumeRecommendationsCommand"), exports);
12
13
  tslib_1.__exportStar(require("./GetEC2InstanceRecommendationsCommand"), exports);
13
14
  tslib_1.__exportStar(require("./GetEC2RecommendationProjectedMetricsCommand"), exports);
15
+ tslib_1.__exportStar(require("./GetECSServiceRecommendationProjectedMetricsCommand"), exports);
16
+ tslib_1.__exportStar(require("./GetECSServiceRecommendationsCommand"), exports);
14
17
  tslib_1.__exportStar(require("./GetEffectiveRecommendationPreferencesCommand"), exports);
15
18
  tslib_1.__exportStar(require("./GetEnrollmentStatusCommand"), exports);
16
19
  tslib_1.__exportStar(require("./GetEnrollmentStatusesForOrganizationCommand"), exports);
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ruleSet = void 0;
4
- const s = "fn", t = "argv", u = "ref";
5
- const a = true, b = false, c = "String", d = "Boolean", e = "PartitionResult", f = "tree", g = "error", h = "endpoint", i = { [u]: "Endpoint" }, j = { [s]: "booleanEquals", [t]: [{ [u]: "UseFIPS" }, true] }, k = { [s]: "booleanEquals", [t]: [{ [u]: "UseDualStack" }, true] }, l = {}, m = { [s]: "booleanEquals", [t]: [true, { [s]: "getAttr", [t]: [{ [u]: e }, "supportsFIPS"] }] }, n = { [s]: "booleanEquals", [t]: [true, { [s]: "getAttr", [t]: [{ [u]: e }, "supportsDualStack"] }] }, o = [i], p = [j], q = [], r = [k];
6
- const _data = { version: "1.0", parameters: { Region: { builtIn: "AWS::Region", required: a, documentation: "The AWS region used to dispatch the request.", type: c }, UseDualStack: { builtIn: "AWS::UseDualStack", required: a, default: b, documentation: "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", type: d }, UseFIPS: { builtIn: "AWS::UseFIPS", required: a, default: b, documentation: "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", type: d }, Endpoint: { builtIn: "SDK::Endpoint", required: b, documentation: "Override the endpoint used to send this request", type: c } }, rules: [{ conditions: [{ [s]: "aws.partition", [t]: [{ [u]: "Region" }], assign: e }], type: f, rules: [{ conditions: [{ [s]: "isSet", [t]: o }, { [s]: "parseURL", [t]: o, assign: "url" }], type: f, rules: [{ conditions: p, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: g }, { conditions: q, type: f, rules: [{ conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: g }, { conditions: q, endpoint: { url: i, properties: l, headers: l }, type: h }] }] }, { conditions: [j, k], type: f, rules: [{ conditions: [m, n], type: f, rules: [{ conditions: q, endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: l, headers: l }, type: h }] }, { conditions: q, error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: g }] }, { conditions: p, type: f, rules: [{ conditions: [m], type: f, rules: [{ conditions: q, type: f, rules: [{ conditions: q, endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dnsSuffix}", properties: l, headers: l }, type: h }] }] }, { conditions: q, error: "FIPS is enabled but this partition does not support FIPS", type: g }] }, { conditions: r, type: f, rules: [{ conditions: [n], type: f, rules: [{ conditions: q, endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: l, headers: l }, type: h }] }, { conditions: q, error: "DualStack is enabled but this partition does not support DualStack", type: g }] }, { conditions: q, endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dnsSuffix}", properties: l, headers: l }, type: h }] }] };
4
+ const q = "fn", r = "argv", s = "ref";
5
+ const a = true, b = false, c = "String", d = "PartitionResult", e = "tree", f = "error", g = "endpoint", h = { "required": true, "default": false, "type": "Boolean" }, i = { [s]: "Endpoint" }, j = { [q]: "booleanEquals", [r]: [{ [s]: "UseFIPS" }, true] }, k = { [q]: "booleanEquals", [r]: [{ [s]: "UseDualStack" }, true] }, l = {}, m = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: d }, "supportsFIPS"] }] }, n = { [q]: "booleanEquals", [r]: [true, { [q]: "getAttr", [r]: [{ [s]: d }, "supportsDualStack"] }] }, o = [j], p = [k];
6
+ const _data = { version: "1.0", parameters: { Region: { required: a, type: c }, UseDualStack: h, UseFIPS: h, Endpoint: { required: b, type: c } }, rules: [{ conditions: [{ [q]: "aws.partition", [r]: [{ [s]: "Region" }], assign: d }], type: e, rules: [{ conditions: [{ [q]: "isSet", [r]: [i] }], type: e, rules: [{ conditions: o, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: f }, { type: e, rules: [{ conditions: p, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: f }, { endpoint: { url: i, properties: l, headers: l }, type: g }] }] }, { conditions: [j, k], type: e, rules: [{ conditions: [m, n], type: e, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: l, headers: l }, type: g }] }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: f }] }, { conditions: o, type: e, rules: [{ conditions: [m], type: e, rules: [{ type: e, rules: [{ endpoint: { url: "https://compute-optimizer-fips.{Region}.{PartitionResult#dnsSuffix}", properties: l, headers: l }, type: g }] }] }, { error: "FIPS is enabled but this partition does not support FIPS", type: f }] }, { conditions: p, type: e, rules: [{ conditions: [n], type: e, rules: [{ endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: l, headers: l }, type: g }] }, { error: "DualStack is enabled but this partition does not support DualStack", type: f }] }, { endpoint: { url: "https://compute-optimizer.{Region}.{PartitionResult#dnsSuffix}", properties: l, headers: l }, type: g }] }] };
7
7
  exports.ruleSet = _data;
package/dist-cjs/index.js CHANGED
@@ -6,5 +6,6 @@ tslib_1.__exportStar(require("./ComputeOptimizer"), exports);
6
6
  tslib_1.__exportStar(require("./ComputeOptimizerClient"), exports);
7
7
  tslib_1.__exportStar(require("./commands"), exports);
8
8
  tslib_1.__exportStar(require("./models"), exports);
9
+ tslib_1.__exportStar(require("./pagination"), exports);
9
10
  var ComputeOptimizerServiceException_1 = require("./models/ComputeOptimizerServiceException");
10
11
  Object.defineProperty(exports, "ComputeOptimizerServiceException", { enumerable: true, get: function () { return ComputeOptimizerServiceException_1.ComputeOptimizerServiceException; } });
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExternalMetricsPreferenceFilterSensitiveLog = exports.AutoScalingGroupConfigurationFilterSensitiveLog = exports.AccountEnrollmentStatusFilterSensitiveLog = exports.FindingReasonCode = exports.LambdaFunctionMetricStatistic = exports.LambdaFunctionMetricName = exports.LambdaFunctionMemoryMetricStatistic = exports.LambdaFunctionMemoryMetricName = exports.LambdaFunctionRecommendationFindingReasonCode = exports.LambdaFunctionRecommendationFinding = exports.EnrollmentFilterName = exports.RecommendationSourceType = exports.PlatformDifference = exports.InstanceRecommendationFindingReasonCode = exports.EBSMetricName = exports.EBSFinding = exports.LambdaFunctionRecommendationFilterName = exports.ExportableLambdaFunctionField = exports.ExportableInstanceField = exports.EBSFilterName = exports.ExportableVolumeField = exports.LimitExceededException = exports.FilterName = exports.FileFormat = exports.ExportableAutoScalingGroupField = exports.JobStatus = exports.JobFilterName = exports.ThrottlingException = exports.ServiceUnavailableException = exports.ResourceNotFoundException = exports.OptInRequiredException = exports.MissingAuthenticationToken = exports.InvalidParameterValueException = exports.InternalServerException = exports.ScopeName = exports.ResourceType = exports.RecommendationPreferenceName = exports.Currency = exports.MetricStatistic = exports.MetricName = exports.MigrationEffort = exports.InferredWorkloadType = exports.Finding = exports.InferredWorkloadTypesPreference = exports.ExternalMetricsSource = exports.EnhancedInfrastructureMetrics = exports.CpuVendorArchitecture = exports.CurrentPerformanceRisk = exports.Status = exports.AccessDeniedException = void 0;
4
- exports.GetEnrollmentStatusResponseFilterSensitiveLog = exports.GetEnrollmentStatusRequestFilterSensitiveLog = exports.GetEffectiveRecommendationPreferencesResponseFilterSensitiveLog = exports.GetEffectiveRecommendationPreferencesRequestFilterSensitiveLog = exports.GetEC2RecommendationProjectedMetricsResponseFilterSensitiveLog = exports.RecommendedOptionProjectedMetricFilterSensitiveLog = exports.ProjectedMetricFilterSensitiveLog = exports.GetEC2RecommendationProjectedMetricsRequestFilterSensitiveLog = exports.GetEC2InstanceRecommendationsResponseFilterSensitiveLog = exports.InstanceRecommendationFilterSensitiveLog = exports.RecommendationSourceFilterSensitiveLog = exports.InstanceRecommendationOptionFilterSensitiveLog = exports.GetEC2InstanceRecommendationsRequestFilterSensitiveLog = exports.GetEBSVolumeRecommendationsResponseFilterSensitiveLog = exports.VolumeRecommendationFilterSensitiveLog = exports.VolumeRecommendationOptionFilterSensitiveLog = exports.EBSUtilizationMetricFilterSensitiveLog = exports.VolumeConfigurationFilterSensitiveLog = exports.GetEBSVolumeRecommendationsRequestFilterSensitiveLog = exports.GetAutoScalingGroupRecommendationsResponseFilterSensitiveLog = exports.GetRecommendationErrorFilterSensitiveLog = exports.GetAutoScalingGroupRecommendationsRequestFilterSensitiveLog = exports.ExportLambdaFunctionRecommendationsResponseFilterSensitiveLog = exports.ExportLambdaFunctionRecommendationsRequestFilterSensitiveLog = exports.LambdaFunctionRecommendationFilterFilterSensitiveLog = exports.ExportEC2InstanceRecommendationsResponseFilterSensitiveLog = exports.ExportEC2InstanceRecommendationsRequestFilterSensitiveLog = exports.ExportEBSVolumeRecommendationsResponseFilterSensitiveLog = exports.ExportEBSVolumeRecommendationsRequestFilterSensitiveLog = exports.EBSFilterFilterSensitiveLog = exports.ExportAutoScalingGroupRecommendationsResponseFilterSensitiveLog = exports.ExportAutoScalingGroupRecommendationsRequestFilterSensitiveLog = exports.S3DestinationConfigFilterSensitiveLog = exports.RecommendationPreferencesFilterSensitiveLog = exports.FilterFilterSensitiveLog = exports.DescribeRecommendationExportJobsResponseFilterSensitiveLog = exports.RecommendationExportJobFilterSensitiveLog = exports.ExportDestinationFilterSensitiveLog = exports.S3DestinationFilterSensitiveLog = exports.DescribeRecommendationExportJobsRequestFilterSensitiveLog = exports.JobFilterFilterSensitiveLog = exports.DeleteRecommendationPreferencesResponseFilterSensitiveLog = exports.DeleteRecommendationPreferencesRequestFilterSensitiveLog = exports.ScopeFilterSensitiveLog = exports.AutoScalingGroupRecommendationFilterSensitiveLog = exports.AutoScalingGroupRecommendationOptionFilterSensitiveLog = exports.SavingsOpportunityFilterSensitiveLog = exports.EstimatedMonthlySavingsFilterSensitiveLog = exports.UtilizationMetricFilterSensitiveLog = exports.EffectiveRecommendationPreferencesFilterSensitiveLog = void 0;
5
- exports.UpdateEnrollmentStatusResponseFilterSensitiveLog = exports.UpdateEnrollmentStatusRequestFilterSensitiveLog = exports.PutRecommendationPreferencesResponseFilterSensitiveLog = exports.PutRecommendationPreferencesRequestFilterSensitiveLog = exports.GetRecommendationSummariesResponseFilterSensitiveLog = exports.RecommendationSummaryFilterSensitiveLog = exports.SummaryFilterSensitiveLog = exports.ReasonCodeSummaryFilterSensitiveLog = exports.CurrentPerformanceRiskRatingsFilterSensitiveLog = exports.GetRecommendationSummariesRequestFilterSensitiveLog = exports.GetRecommendationPreferencesResponseFilterSensitiveLog = exports.RecommendationPreferencesDetailFilterSensitiveLog = exports.GetRecommendationPreferencesRequestFilterSensitiveLog = exports.GetLambdaFunctionRecommendationsResponseFilterSensitiveLog = exports.LambdaFunctionRecommendationFilterSensitiveLog = exports.LambdaFunctionUtilizationMetricFilterSensitiveLog = exports.LambdaFunctionMemoryRecommendationOptionFilterSensitiveLog = exports.LambdaFunctionMemoryProjectedMetricFilterSensitiveLog = exports.GetLambdaFunctionRecommendationsRequestFilterSensitiveLog = exports.GetEnrollmentStatusesForOrganizationResponseFilterSensitiveLog = exports.GetEnrollmentStatusesForOrganizationRequestFilterSensitiveLog = exports.EnrollmentFilterFilterSensitiveLog = void 0;
3
+ exports.LambdaFunctionRecommendationFindingReasonCode = exports.LambdaFunctionRecommendationFinding = exports.EnrollmentFilterName = exports.ECSServiceMetricStatistic = exports.ECSServiceLaunchType = exports.ECSServiceRecommendationFindingReasonCode = exports.ECSServiceRecommendationFinding = exports.ECSServiceMetricName = exports.RecommendationSourceType = exports.PlatformDifference = exports.InstanceRecommendationFindingReasonCode = exports.EBSMetricName = exports.EBSFinding = exports.LambdaFunctionRecommendationFilterName = exports.ExportableLambdaFunctionField = exports.ECSServiceRecommendationFilterName = exports.ExportableECSServiceField = exports.ExportableInstanceField = exports.EBSFilterName = exports.ExportableVolumeField = exports.LimitExceededException = exports.FilterName = exports.FileFormat = exports.ExportableAutoScalingGroupField = exports.JobStatus = exports.JobFilterName = exports.ThrottlingException = exports.ServiceUnavailableException = exports.ResourceNotFoundException = exports.OptInRequiredException = exports.MissingAuthenticationToken = exports.InvalidParameterValueException = exports.InternalServerException = exports.ScopeName = exports.ResourceType = exports.RecommendationPreferenceName = exports.Currency = exports.MetricStatistic = exports.MetricName = exports.MigrationEffort = exports.InferredWorkloadType = exports.Finding = exports.InferredWorkloadTypesPreference = exports.ExternalMetricsSource = exports.EnhancedInfrastructureMetrics = exports.CpuVendorArchitecture = exports.CurrentPerformanceRisk = exports.AutoScalingConfiguration = exports.Status = exports.AccessDeniedException = void 0;
4
+ exports.InstanceRecommendationOptionFilterSensitiveLog = exports.GetEC2InstanceRecommendationsRequestFilterSensitiveLog = exports.GetEBSVolumeRecommendationsResponseFilterSensitiveLog = exports.VolumeRecommendationFilterSensitiveLog = exports.VolumeRecommendationOptionFilterSensitiveLog = exports.EBSUtilizationMetricFilterSensitiveLog = exports.VolumeConfigurationFilterSensitiveLog = exports.GetEBSVolumeRecommendationsRequestFilterSensitiveLog = exports.GetAutoScalingGroupRecommendationsResponseFilterSensitiveLog = exports.GetRecommendationErrorFilterSensitiveLog = exports.GetAutoScalingGroupRecommendationsRequestFilterSensitiveLog = exports.ExportLambdaFunctionRecommendationsResponseFilterSensitiveLog = exports.ExportLambdaFunctionRecommendationsRequestFilterSensitiveLog = exports.LambdaFunctionRecommendationFilterFilterSensitiveLog = exports.ExportECSServiceRecommendationsResponseFilterSensitiveLog = exports.ExportECSServiceRecommendationsRequestFilterSensitiveLog = exports.ECSServiceRecommendationFilterFilterSensitiveLog = exports.ExportEC2InstanceRecommendationsResponseFilterSensitiveLog = exports.ExportEC2InstanceRecommendationsRequestFilterSensitiveLog = exports.ExportEBSVolumeRecommendationsResponseFilterSensitiveLog = exports.ExportEBSVolumeRecommendationsRequestFilterSensitiveLog = exports.EBSFilterFilterSensitiveLog = exports.ExportAutoScalingGroupRecommendationsResponseFilterSensitiveLog = exports.ExportAutoScalingGroupRecommendationsRequestFilterSensitiveLog = exports.S3DestinationConfigFilterSensitiveLog = exports.RecommendationPreferencesFilterSensitiveLog = exports.FilterFilterSensitiveLog = exports.DescribeRecommendationExportJobsResponseFilterSensitiveLog = exports.RecommendationExportJobFilterSensitiveLog = exports.ExportDestinationFilterSensitiveLog = exports.S3DestinationFilterSensitiveLog = exports.DescribeRecommendationExportJobsRequestFilterSensitiveLog = exports.JobFilterFilterSensitiveLog = exports.DeleteRecommendationPreferencesResponseFilterSensitiveLog = exports.DeleteRecommendationPreferencesRequestFilterSensitiveLog = exports.ScopeFilterSensitiveLog = exports.AutoScalingGroupRecommendationFilterSensitiveLog = exports.AutoScalingGroupRecommendationOptionFilterSensitiveLog = exports.SavingsOpportunityFilterSensitiveLog = exports.EstimatedMonthlySavingsFilterSensitiveLog = exports.UtilizationMetricFilterSensitiveLog = exports.EffectiveRecommendationPreferencesFilterSensitiveLog = exports.ExternalMetricsPreferenceFilterSensitiveLog = exports.AutoScalingGroupConfigurationFilterSensitiveLog = exports.AccountEnrollmentStatusFilterSensitiveLog = exports.FindingReasonCode = exports.LambdaFunctionMetricStatistic = exports.LambdaFunctionMetricName = exports.LambdaFunctionMemoryMetricStatistic = exports.LambdaFunctionMemoryMetricName = void 0;
5
+ exports.UpdateEnrollmentStatusResponseFilterSensitiveLog = exports.UpdateEnrollmentStatusRequestFilterSensitiveLog = exports.PutRecommendationPreferencesResponseFilterSensitiveLog = exports.PutRecommendationPreferencesRequestFilterSensitiveLog = exports.GetRecommendationSummariesResponseFilterSensitiveLog = exports.RecommendationSummaryFilterSensitiveLog = exports.SummaryFilterSensitiveLog = exports.ReasonCodeSummaryFilterSensitiveLog = exports.CurrentPerformanceRiskRatingsFilterSensitiveLog = exports.GetRecommendationSummariesRequestFilterSensitiveLog = exports.GetRecommendationPreferencesResponseFilterSensitiveLog = exports.RecommendationPreferencesDetailFilterSensitiveLog = exports.GetRecommendationPreferencesRequestFilterSensitiveLog = exports.GetLambdaFunctionRecommendationsResponseFilterSensitiveLog = exports.LambdaFunctionRecommendationFilterSensitiveLog = exports.LambdaFunctionUtilizationMetricFilterSensitiveLog = exports.LambdaFunctionMemoryRecommendationOptionFilterSensitiveLog = exports.LambdaFunctionMemoryProjectedMetricFilterSensitiveLog = exports.GetLambdaFunctionRecommendationsRequestFilterSensitiveLog = exports.GetEnrollmentStatusesForOrganizationResponseFilterSensitiveLog = exports.GetEnrollmentStatusesForOrganizationRequestFilterSensitiveLog = exports.EnrollmentFilterFilterSensitiveLog = exports.GetEnrollmentStatusResponseFilterSensitiveLog = exports.GetEnrollmentStatusRequestFilterSensitiveLog = exports.GetEffectiveRecommendationPreferencesResponseFilterSensitiveLog = exports.GetEffectiveRecommendationPreferencesRequestFilterSensitiveLog = exports.GetECSServiceRecommendationsResponseFilterSensitiveLog = exports.ECSServiceRecommendationFilterSensitiveLog = exports.ECSServiceUtilizationMetricFilterSensitiveLog = exports.ECSServiceRecommendationOptionFilterSensitiveLog = exports.ECSServiceProjectedUtilizationMetricFilterSensitiveLog = exports.ContainerRecommendationFilterSensitiveLog = exports.ServiceConfigurationFilterSensitiveLog = exports.ContainerConfigurationFilterSensitiveLog = exports.MemorySizeConfigurationFilterSensitiveLog = exports.GetECSServiceRecommendationsRequestFilterSensitiveLog = exports.GetECSServiceRecommendationProjectedMetricsResponseFilterSensitiveLog = exports.ECSServiceRecommendedOptionProjectedMetricFilterSensitiveLog = exports.ECSServiceProjectedMetricFilterSensitiveLog = exports.GetECSServiceRecommendationProjectedMetricsRequestFilterSensitiveLog = exports.GetEC2RecommendationProjectedMetricsResponseFilterSensitiveLog = exports.RecommendedOptionProjectedMetricFilterSensitiveLog = exports.ProjectedMetricFilterSensitiveLog = exports.GetEC2RecommendationProjectedMetricsRequestFilterSensitiveLog = exports.GetEC2InstanceRecommendationsResponseFilterSensitiveLog = exports.InstanceRecommendationFilterSensitiveLog = exports.RecommendationSourceFilterSensitiveLog = void 0;
6
6
  const ComputeOptimizerServiceException_1 = require("./ComputeOptimizerServiceException");
7
7
  class AccessDeniedException extends ComputeOptimizerServiceException_1.ComputeOptimizerServiceException {
8
8
  constructor(opts) {
@@ -24,6 +24,11 @@ var Status;
24
24
  Status["INACTIVE"] = "Inactive";
25
25
  Status["PENDING"] = "Pending";
26
26
  })(Status = exports.Status || (exports.Status = {}));
27
+ var AutoScalingConfiguration;
28
+ (function (AutoScalingConfiguration) {
29
+ AutoScalingConfiguration["TARGET_TRACKING_SCALING_CPU"] = "TargetTrackingScalingCpu";
30
+ AutoScalingConfiguration["TARGET_TRACKING_SCALING_MEMORY"] = "TargetTrackingScalingMemory";
31
+ })(AutoScalingConfiguration = exports.AutoScalingConfiguration || (exports.AutoScalingConfiguration = {}));
27
32
  var CurrentPerformanceRisk;
28
33
  (function (CurrentPerformanceRisk) {
29
34
  CurrentPerformanceRisk["HIGH"] = "High";
@@ -115,6 +120,7 @@ var ResourceType;
115
120
  ResourceType["AUTO_SCALING_GROUP"] = "AutoScalingGroup";
116
121
  ResourceType["EBS_VOLUME"] = "EbsVolume";
117
122
  ResourceType["EC2_INSTANCE"] = "Ec2Instance";
123
+ ResourceType["ECS_SERVICE"] = "EcsService";
118
124
  ResourceType["LAMBDA_FUNCTION"] = "LambdaFunction";
119
125
  ResourceType["NOT_APPLICABLE"] = "NotApplicable";
120
126
  })(ResourceType = exports.ResourceType || (exports.ResourceType = {}));
@@ -398,6 +404,37 @@ var ExportableInstanceField;
398
404
  ExportableInstanceField["UTILIZATION_METRICS_NETWORK_PACKETS_IN_PER_SECOND_MAXIMUM"] = "UtilizationMetricsNetworkPacketsInPerSecondMaximum";
399
405
  ExportableInstanceField["UTILIZATION_METRICS_NETWORK_PACKETS_OUT_PER_SECOND_MAXIMUM"] = "UtilizationMetricsNetworkPacketsOutPerSecondMaximum";
400
406
  })(ExportableInstanceField = exports.ExportableInstanceField || (exports.ExportableInstanceField = {}));
407
+ var ExportableECSServiceField;
408
+ (function (ExportableECSServiceField) {
409
+ ExportableECSServiceField["ACCOUNT_ID"] = "AccountId";
410
+ ExportableECSServiceField["CURRENT_PERFORMANCE_RISK"] = "CurrentPerformanceRisk";
411
+ ExportableECSServiceField["CURRENT_SERVICE_CONFIGURATION_AUTO_SCALING_CONFIGURATION"] = "CurrentServiceConfigurationAutoScalingConfiguration";
412
+ ExportableECSServiceField["CURRENT_SERVICE_CONFIGURATION_CPU"] = "CurrentServiceConfigurationCpu";
413
+ ExportableECSServiceField["CURRENT_SERVICE_CONFIGURATION_MEMORY"] = "CurrentServiceConfigurationMemory";
414
+ ExportableECSServiceField["CURRENT_SERVICE_CONFIGURATION_TASK_DEFINITION_ARN"] = "CurrentServiceConfigurationTaskDefinitionArn";
415
+ ExportableECSServiceField["CURRENT_SERVICE_CONTAINER_CONFIGURATIONS"] = "CurrentServiceContainerConfigurations";
416
+ ExportableECSServiceField["FINDING"] = "Finding";
417
+ ExportableECSServiceField["FINDING_REASON_CODES"] = "FindingReasonCodes";
418
+ ExportableECSServiceField["LAST_REFRESH_TIMESTAMP"] = "LastRefreshTimestamp";
419
+ ExportableECSServiceField["LAUNCH_TYPE"] = "LaunchType";
420
+ ExportableECSServiceField["LOOKBACK_PERIOD_IN_DAYS"] = "LookbackPeriodInDays";
421
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_CONTAINER_RECOMMENDATIONS"] = "RecommendationOptionsContainerRecommendations";
422
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_CPU"] = "RecommendationOptionsCpu";
423
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY"] = "RecommendationOptionsEstimatedMonthlySavingsCurrency";
424
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE"] = "RecommendationOptionsEstimatedMonthlySavingsValue";
425
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_MEMORY"] = "RecommendationOptionsMemory";
426
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_CPU_MAXIMUM"] = "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum";
427
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_MEMORY_MAXIMUM"] = "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum";
428
+ ExportableECSServiceField["RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE"] = "RecommendationOptionsSavingsOpportunityPercentage";
429
+ ExportableECSServiceField["SERVICE_ARN"] = "ServiceArn";
430
+ ExportableECSServiceField["UTILIZATION_METRICS_CPU_MAXIMUM"] = "UtilizationMetricsCpuMaximum";
431
+ ExportableECSServiceField["UTILIZATION_METRICS_MEMORY_MAXIMUM"] = "UtilizationMetricsMemoryMaximum";
432
+ })(ExportableECSServiceField = exports.ExportableECSServiceField || (exports.ExportableECSServiceField = {}));
433
+ var ECSServiceRecommendationFilterName;
434
+ (function (ECSServiceRecommendationFilterName) {
435
+ ECSServiceRecommendationFilterName["FINDING"] = "Finding";
436
+ ECSServiceRecommendationFilterName["FINDING_REASON_CODE"] = "FindingReasonCode";
437
+ })(ECSServiceRecommendationFilterName = exports.ECSServiceRecommendationFilterName || (exports.ECSServiceRecommendationFilterName = {}));
401
438
  var ExportableLambdaFunctionField;
402
439
  (function (ExportableLambdaFunctionField) {
403
440
  ExportableLambdaFunctionField["ACCOUNT_ID"] = "AccountId";
@@ -477,8 +514,37 @@ var RecommendationSourceType;
477
514
  RecommendationSourceType["AUTO_SCALING_GROUP"] = "AutoScalingGroup";
478
515
  RecommendationSourceType["EBS_VOLUME"] = "EbsVolume";
479
516
  RecommendationSourceType["EC2_INSTANCE"] = "Ec2Instance";
517
+ RecommendationSourceType["ECS_SERVICE"] = "EcsService";
480
518
  RecommendationSourceType["LAMBDA_FUNCTION"] = "LambdaFunction";
481
519
  })(RecommendationSourceType = exports.RecommendationSourceType || (exports.RecommendationSourceType = {}));
520
+ var ECSServiceMetricName;
521
+ (function (ECSServiceMetricName) {
522
+ ECSServiceMetricName["CPU"] = "Cpu";
523
+ ECSServiceMetricName["MEMORY"] = "Memory";
524
+ })(ECSServiceMetricName = exports.ECSServiceMetricName || (exports.ECSServiceMetricName = {}));
525
+ var ECSServiceRecommendationFinding;
526
+ (function (ECSServiceRecommendationFinding) {
527
+ ECSServiceRecommendationFinding["OPTIMIZED"] = "Optimized";
528
+ ECSServiceRecommendationFinding["OVER_PROVISIONED"] = "Overprovisioned";
529
+ ECSServiceRecommendationFinding["UNDER_PROVISIONED"] = "Underprovisioned";
530
+ })(ECSServiceRecommendationFinding = exports.ECSServiceRecommendationFinding || (exports.ECSServiceRecommendationFinding = {}));
531
+ var ECSServiceRecommendationFindingReasonCode;
532
+ (function (ECSServiceRecommendationFindingReasonCode) {
533
+ ECSServiceRecommendationFindingReasonCode["CPU_OVER_PROVISIONED"] = "CPUOverprovisioned";
534
+ ECSServiceRecommendationFindingReasonCode["CPU_UNDER_PROVISIONED"] = "CPUUnderprovisioned";
535
+ ECSServiceRecommendationFindingReasonCode["MEMORY_OVER_PROVISIONED"] = "MemoryOverprovisioned";
536
+ ECSServiceRecommendationFindingReasonCode["MEMORY_UNDER_PROVISIONED"] = "MemoryUnderprovisioned";
537
+ })(ECSServiceRecommendationFindingReasonCode = exports.ECSServiceRecommendationFindingReasonCode || (exports.ECSServiceRecommendationFindingReasonCode = {}));
538
+ var ECSServiceLaunchType;
539
+ (function (ECSServiceLaunchType) {
540
+ ECSServiceLaunchType["EC2"] = "EC2";
541
+ ECSServiceLaunchType["FARGATE"] = "Fargate";
542
+ })(ECSServiceLaunchType = exports.ECSServiceLaunchType || (exports.ECSServiceLaunchType = {}));
543
+ var ECSServiceMetricStatistic;
544
+ (function (ECSServiceMetricStatistic) {
545
+ ECSServiceMetricStatistic["AVERAGE"] = "Average";
546
+ ECSServiceMetricStatistic["MAXIMUM"] = "Maximum";
547
+ })(ECSServiceMetricStatistic = exports.ECSServiceMetricStatistic || (exports.ECSServiceMetricStatistic = {}));
482
548
  var EnrollmentFilterName;
483
549
  (function (EnrollmentFilterName) {
484
550
  EnrollmentFilterName["STATUS"] = "Status";
@@ -633,6 +699,18 @@ const ExportEC2InstanceRecommendationsResponseFilterSensitiveLog = (obj) => ({
633
699
  ...obj,
634
700
  });
635
701
  exports.ExportEC2InstanceRecommendationsResponseFilterSensitiveLog = ExportEC2InstanceRecommendationsResponseFilterSensitiveLog;
702
+ const ECSServiceRecommendationFilterFilterSensitiveLog = (obj) => ({
703
+ ...obj,
704
+ });
705
+ exports.ECSServiceRecommendationFilterFilterSensitiveLog = ECSServiceRecommendationFilterFilterSensitiveLog;
706
+ const ExportECSServiceRecommendationsRequestFilterSensitiveLog = (obj) => ({
707
+ ...obj,
708
+ });
709
+ exports.ExportECSServiceRecommendationsRequestFilterSensitiveLog = ExportECSServiceRecommendationsRequestFilterSensitiveLog;
710
+ const ExportECSServiceRecommendationsResponseFilterSensitiveLog = (obj) => ({
711
+ ...obj,
712
+ });
713
+ exports.ExportECSServiceRecommendationsResponseFilterSensitiveLog = ExportECSServiceRecommendationsResponseFilterSensitiveLog;
636
714
  const LambdaFunctionRecommendationFilterFilterSensitiveLog = (obj) => ({
637
715
  ...obj,
638
716
  });
@@ -717,6 +795,62 @@ const GetEC2RecommendationProjectedMetricsResponseFilterSensitiveLog = (obj) =>
717
795
  ...obj,
718
796
  });
719
797
  exports.GetEC2RecommendationProjectedMetricsResponseFilterSensitiveLog = GetEC2RecommendationProjectedMetricsResponseFilterSensitiveLog;
798
+ const GetECSServiceRecommendationProjectedMetricsRequestFilterSensitiveLog = (obj) => ({
799
+ ...obj,
800
+ });
801
+ exports.GetECSServiceRecommendationProjectedMetricsRequestFilterSensitiveLog = GetECSServiceRecommendationProjectedMetricsRequestFilterSensitiveLog;
802
+ const ECSServiceProjectedMetricFilterSensitiveLog = (obj) => ({
803
+ ...obj,
804
+ });
805
+ exports.ECSServiceProjectedMetricFilterSensitiveLog = ECSServiceProjectedMetricFilterSensitiveLog;
806
+ const ECSServiceRecommendedOptionProjectedMetricFilterSensitiveLog = (obj) => ({
807
+ ...obj,
808
+ });
809
+ exports.ECSServiceRecommendedOptionProjectedMetricFilterSensitiveLog = ECSServiceRecommendedOptionProjectedMetricFilterSensitiveLog;
810
+ const GetECSServiceRecommendationProjectedMetricsResponseFilterSensitiveLog = (obj) => ({
811
+ ...obj,
812
+ });
813
+ exports.GetECSServiceRecommendationProjectedMetricsResponseFilterSensitiveLog = GetECSServiceRecommendationProjectedMetricsResponseFilterSensitiveLog;
814
+ const GetECSServiceRecommendationsRequestFilterSensitiveLog = (obj) => ({
815
+ ...obj,
816
+ });
817
+ exports.GetECSServiceRecommendationsRequestFilterSensitiveLog = GetECSServiceRecommendationsRequestFilterSensitiveLog;
818
+ const MemorySizeConfigurationFilterSensitiveLog = (obj) => ({
819
+ ...obj,
820
+ });
821
+ exports.MemorySizeConfigurationFilterSensitiveLog = MemorySizeConfigurationFilterSensitiveLog;
822
+ const ContainerConfigurationFilterSensitiveLog = (obj) => ({
823
+ ...obj,
824
+ });
825
+ exports.ContainerConfigurationFilterSensitiveLog = ContainerConfigurationFilterSensitiveLog;
826
+ const ServiceConfigurationFilterSensitiveLog = (obj) => ({
827
+ ...obj,
828
+ });
829
+ exports.ServiceConfigurationFilterSensitiveLog = ServiceConfigurationFilterSensitiveLog;
830
+ const ContainerRecommendationFilterSensitiveLog = (obj) => ({
831
+ ...obj,
832
+ });
833
+ exports.ContainerRecommendationFilterSensitiveLog = ContainerRecommendationFilterSensitiveLog;
834
+ const ECSServiceProjectedUtilizationMetricFilterSensitiveLog = (obj) => ({
835
+ ...obj,
836
+ });
837
+ exports.ECSServiceProjectedUtilizationMetricFilterSensitiveLog = ECSServiceProjectedUtilizationMetricFilterSensitiveLog;
838
+ const ECSServiceRecommendationOptionFilterSensitiveLog = (obj) => ({
839
+ ...obj,
840
+ });
841
+ exports.ECSServiceRecommendationOptionFilterSensitiveLog = ECSServiceRecommendationOptionFilterSensitiveLog;
842
+ const ECSServiceUtilizationMetricFilterSensitiveLog = (obj) => ({
843
+ ...obj,
844
+ });
845
+ exports.ECSServiceUtilizationMetricFilterSensitiveLog = ECSServiceUtilizationMetricFilterSensitiveLog;
846
+ const ECSServiceRecommendationFilterSensitiveLog = (obj) => ({
847
+ ...obj,
848
+ });
849
+ exports.ECSServiceRecommendationFilterSensitiveLog = ECSServiceRecommendationFilterSensitiveLog;
850
+ const GetECSServiceRecommendationsResponseFilterSensitiveLog = (obj) => ({
851
+ ...obj,
852
+ });
853
+ exports.GetECSServiceRecommendationsResponseFilterSensitiveLog = GetECSServiceRecommendationsResponseFilterSensitiveLog;
720
854
  const GetEffectiveRecommendationPreferencesRequestFilterSensitiveLog = (obj) => ({
721
855
  ...obj,
722
856
  });
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginateDescribeRecommendationExportJobs = void 0;
4
+ const DescribeRecommendationExportJobsCommand_1 = require("../commands/DescribeRecommendationExportJobsCommand");
5
+ const ComputeOptimizer_1 = require("../ComputeOptimizer");
6
+ const ComputeOptimizerClient_1 = require("../ComputeOptimizerClient");
7
+ const makePagedClientRequest = async (client, input, ...args) => {
8
+ return await client.send(new DescribeRecommendationExportJobsCommand_1.DescribeRecommendationExportJobsCommand(input), ...args);
9
+ };
10
+ const makePagedRequest = async (client, input, ...args) => {
11
+ return await client.describeRecommendationExportJobs(input, ...args);
12
+ };
13
+ async function* paginateDescribeRecommendationExportJobs(config, input, ...additionalArguments) {
14
+ let token = config.startingToken || undefined;
15
+ let hasNext = true;
16
+ let page;
17
+ while (hasNext) {
18
+ input.nextToken = token;
19
+ input["maxResults"] = config.pageSize;
20
+ if (config.client instanceof ComputeOptimizer_1.ComputeOptimizer) {
21
+ page = await makePagedRequest(config.client, input, ...additionalArguments);
22
+ }
23
+ else if (config.client instanceof ComputeOptimizerClient_1.ComputeOptimizerClient) {
24
+ page = await makePagedClientRequest(config.client, input, ...additionalArguments);
25
+ }
26
+ else {
27
+ throw new Error("Invalid client, expected ComputeOptimizer | ComputeOptimizerClient");
28
+ }
29
+ yield page;
30
+ const prevToken = token;
31
+ token = page.nextToken;
32
+ hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
33
+ }
34
+ return undefined;
35
+ }
36
+ exports.paginateDescribeRecommendationExportJobs = paginateDescribeRecommendationExportJobs;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginateGetEnrollmentStatusesForOrganization = void 0;
4
+ const GetEnrollmentStatusesForOrganizationCommand_1 = require("../commands/GetEnrollmentStatusesForOrganizationCommand");
5
+ const ComputeOptimizer_1 = require("../ComputeOptimizer");
6
+ const ComputeOptimizerClient_1 = require("../ComputeOptimizerClient");
7
+ const makePagedClientRequest = async (client, input, ...args) => {
8
+ return await client.send(new GetEnrollmentStatusesForOrganizationCommand_1.GetEnrollmentStatusesForOrganizationCommand(input), ...args);
9
+ };
10
+ const makePagedRequest = async (client, input, ...args) => {
11
+ return await client.getEnrollmentStatusesForOrganization(input, ...args);
12
+ };
13
+ async function* paginateGetEnrollmentStatusesForOrganization(config, input, ...additionalArguments) {
14
+ let token = config.startingToken || undefined;
15
+ let hasNext = true;
16
+ let page;
17
+ while (hasNext) {
18
+ input.nextToken = token;
19
+ input["maxResults"] = config.pageSize;
20
+ if (config.client instanceof ComputeOptimizer_1.ComputeOptimizer) {
21
+ page = await makePagedRequest(config.client, input, ...additionalArguments);
22
+ }
23
+ else if (config.client instanceof ComputeOptimizerClient_1.ComputeOptimizerClient) {
24
+ page = await makePagedClientRequest(config.client, input, ...additionalArguments);
25
+ }
26
+ else {
27
+ throw new Error("Invalid client, expected ComputeOptimizer | ComputeOptimizerClient");
28
+ }
29
+ yield page;
30
+ const prevToken = token;
31
+ token = page.nextToken;
32
+ hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
33
+ }
34
+ return undefined;
35
+ }
36
+ exports.paginateGetEnrollmentStatusesForOrganization = paginateGetEnrollmentStatusesForOrganization;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginateGetLambdaFunctionRecommendations = void 0;
4
+ const GetLambdaFunctionRecommendationsCommand_1 = require("../commands/GetLambdaFunctionRecommendationsCommand");
5
+ const ComputeOptimizer_1 = require("../ComputeOptimizer");
6
+ const ComputeOptimizerClient_1 = require("../ComputeOptimizerClient");
7
+ const makePagedClientRequest = async (client, input, ...args) => {
8
+ return await client.send(new GetLambdaFunctionRecommendationsCommand_1.GetLambdaFunctionRecommendationsCommand(input), ...args);
9
+ };
10
+ const makePagedRequest = async (client, input, ...args) => {
11
+ return await client.getLambdaFunctionRecommendations(input, ...args);
12
+ };
13
+ async function* paginateGetLambdaFunctionRecommendations(config, input, ...additionalArguments) {
14
+ let token = config.startingToken || undefined;
15
+ let hasNext = true;
16
+ let page;
17
+ while (hasNext) {
18
+ input.nextToken = token;
19
+ input["maxResults"] = config.pageSize;
20
+ if (config.client instanceof ComputeOptimizer_1.ComputeOptimizer) {
21
+ page = await makePagedRequest(config.client, input, ...additionalArguments);
22
+ }
23
+ else if (config.client instanceof ComputeOptimizerClient_1.ComputeOptimizerClient) {
24
+ page = await makePagedClientRequest(config.client, input, ...additionalArguments);
25
+ }
26
+ else {
27
+ throw new Error("Invalid client, expected ComputeOptimizer | ComputeOptimizerClient");
28
+ }
29
+ yield page;
30
+ const prevToken = token;
31
+ token = page.nextToken;
32
+ hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
33
+ }
34
+ return undefined;
35
+ }
36
+ exports.paginateGetLambdaFunctionRecommendations = paginateGetLambdaFunctionRecommendations;