mypydantic.models.compute_optimizer
1# Model Generated: Thu Mar 2 21:56:17 2023 2 3from __future__ import annotations 4 5from datetime import datetime 6from typing import Dict, List, Literal, Optional, Sequence, Union 7 8from pydantic import Field 9 10from mypydantic.models.base_model import BaseModel 11 12 13class AccountEnrollmentStatusModel(BaseModel): 14 account_id: Optional[str] = Field(default=None, alias="accountId") 15 status: Optional[Literal["Active", "Failed", "Inactive", "Pending"]] = Field( 16 default=None, alias="status" 17 ) 18 status_reason: Optional[str] = Field(default=None, alias="statusReason") 19 last_updated_timestamp: Optional[datetime] = Field( 20 default=None, alias="lastUpdatedTimestamp" 21 ) 22 23 24class AutoScalingGroupConfigurationModel(BaseModel): 25 desired_capacity: Optional[int] = Field(default=None, alias="desiredCapacity") 26 min_size: Optional[int] = Field(default=None, alias="minSize") 27 max_size: Optional[int] = Field(default=None, alias="maxSize") 28 instance_type: Optional[str] = Field(default=None, alias="instanceType") 29 30 31class UtilizationMetricModel(BaseModel): 32 name: Optional[ 33 Literal[ 34 "Cpu", 35 "DISK_READ_BYTES_PER_SECOND", 36 "DISK_READ_OPS_PER_SECOND", 37 "DISK_WRITE_BYTES_PER_SECOND", 38 "DISK_WRITE_OPS_PER_SECOND", 39 "EBS_READ_BYTES_PER_SECOND", 40 "EBS_READ_OPS_PER_SECOND", 41 "EBS_WRITE_BYTES_PER_SECOND", 42 "EBS_WRITE_OPS_PER_SECOND", 43 "Memory", 44 "NETWORK_IN_BYTES_PER_SECOND", 45 "NETWORK_OUT_BYTES_PER_SECOND", 46 "NETWORK_PACKETS_IN_PER_SECOND", 47 "NETWORK_PACKETS_OUT_PER_SECOND", 48 ] 49 ] = Field(default=None, alias="name") 50 statistic: Optional[Literal["Average", "Maximum"]] = Field( 51 default=None, alias="statistic" 52 ) 53 value: Optional[float] = Field(default=None, alias="value") 54 55 56class MemorySizeConfigurationModel(BaseModel): 57 memory: Optional[int] = Field(default=None, alias="memory") 58 memory_reservation: Optional[int] = Field(default=None, alias="memoryReservation") 59 60 61class CurrentPerformanceRiskRatingsModel(BaseModel): 62 high: Optional[int] = Field(default=None, alias="high") 63 medium: Optional[int] = Field(default=None, alias="medium") 64 low: Optional[int] = Field(default=None, alias="low") 65 very_low: Optional[int] = Field(default=None, alias="veryLow") 66 67 68class ScopeModel(BaseModel): 69 name: Optional[Literal["AccountId", "Organization", "ResourceArn"]] = Field( 70 default=None, alias="name" 71 ) 72 value: Optional[str] = Field(default=None, alias="value") 73 74 75class JobFilterModel(BaseModel): 76 name: Optional[Literal["JobStatus", "ResourceType"]] = Field( 77 default=None, alias="name" 78 ) 79 values: Optional[Sequence[str]] = Field(default=None, alias="values") 80 81 82class PaginatorConfigModel(BaseModel): 83 max_items: Optional[int] = Field(default=None, alias="MaxItems") 84 page_size: Optional[int] = Field(default=None, alias="PageSize") 85 starting_token: Optional[str] = Field(default=None, alias="StartingToken") 86 87 88class ResponseMetadataModel(BaseModel): 89 request_id: str = Field(alias="RequestId") 90 host_id: str = Field(alias="HostId") 91 http_status_code: int = Field(alias="HTTPStatusCode") 92 http_headers: Dict[str, str] = Field(alias="HTTPHeaders") 93 retry_attempts: int = Field(alias="RetryAttempts") 94 95 96class EBSFilterModel(BaseModel): 97 name: Optional[Literal["Finding"]] = Field(default=None, alias="name") 98 values: Optional[Sequence[str]] = Field(default=None, alias="values") 99 100 101class EBSUtilizationMetricModel(BaseModel): 102 name: Optional[ 103 Literal[ 104 "VolumeReadBytesPerSecond", 105 "VolumeReadOpsPerSecond", 106 "VolumeWriteBytesPerSecond", 107 "VolumeWriteOpsPerSecond", 108 ] 109 ] = Field(default=None, alias="name") 110 statistic: Optional[Literal["Average", "Maximum"]] = Field( 111 default=None, alias="statistic" 112 ) 113 value: Optional[float] = Field(default=None, alias="value") 114 115 116class ECSServiceProjectedMetricModel(BaseModel): 117 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 118 timestamps: Optional[List[datetime]] = Field(default=None, alias="timestamps") 119 upper_bound_values: Optional[List[float]] = Field( 120 default=None, alias="upperBoundValues" 121 ) 122 lower_bound_values: Optional[List[float]] = Field( 123 default=None, alias="lowerBoundValues" 124 ) 125 126 127class ECSServiceProjectedUtilizationMetricModel(BaseModel): 128 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 129 statistic: Optional[Literal["Average", "Maximum"]] = Field( 130 default=None, alias="statistic" 131 ) 132 lower_bound_value: Optional[float] = Field(default=None, alias="lowerBoundValue") 133 upper_bound_value: Optional[float] = Field(default=None, alias="upperBoundValue") 134 135 136class ECSServiceRecommendationFilterModel(BaseModel): 137 name: Optional[Literal["Finding", "FindingReasonCode"]] = Field( 138 default=None, alias="name" 139 ) 140 values: Optional[Sequence[str]] = Field(default=None, alias="values") 141 142 143class ECSServiceUtilizationMetricModel(BaseModel): 144 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 145 statistic: Optional[Literal["Average", "Maximum"]] = Field( 146 default=None, alias="statistic" 147 ) 148 value: Optional[float] = Field(default=None, alias="value") 149 150 151class ExternalMetricsPreferenceModel(BaseModel): 152 source: Optional[Literal["Datadog", "Dynatrace", "Instana", "NewRelic"]] = Field( 153 default=None, alias="source" 154 ) 155 156 157class EnrollmentFilterModel(BaseModel): 158 name: Optional[Literal["Status"]] = Field(default=None, alias="name") 159 values: Optional[Sequence[str]] = Field(default=None, alias="values") 160 161 162class EstimatedMonthlySavingsModel(BaseModel): 163 currency: Optional[Literal["CNY", "USD"]] = Field(default=None, alias="currency") 164 value: Optional[float] = Field(default=None, alias="value") 165 166 167class FilterModel(BaseModel): 168 name: Optional[ 169 Literal["Finding", "FindingReasonCodes", "RecommendationSourceType"] 170 ] = Field(default=None, alias="name") 171 values: Optional[Sequence[str]] = Field(default=None, alias="values") 172 173 174class RecommendationPreferencesModel(BaseModel): 175 cpu_vendor_architectures: Optional[ 176 Sequence[Literal["AWS_ARM64", "CURRENT"]] 177 ] = Field(default=None, alias="cpuVendorArchitectures") 178 179 180class S3DestinationConfigModel(BaseModel): 181 bucket: Optional[str] = Field(default=None, alias="bucket") 182 key_prefix: Optional[str] = Field(default=None, alias="keyPrefix") 183 184 185class S3DestinationModel(BaseModel): 186 bucket: Optional[str] = Field(default=None, alias="bucket") 187 key: Optional[str] = Field(default=None, alias="key") 188 metadata_key: Optional[str] = Field(default=None, alias="metadataKey") 189 190 191class LambdaFunctionRecommendationFilterModel(BaseModel): 192 name: Optional[Literal["Finding", "FindingReasonCode"]] = Field( 193 default=None, alias="name" 194 ) 195 values: Optional[Sequence[str]] = Field(default=None, alias="values") 196 197 198class GetRecommendationErrorModel(BaseModel): 199 identifier: Optional[str] = Field(default=None, alias="identifier") 200 code: Optional[str] = Field(default=None, alias="code") 201 message: Optional[str] = Field(default=None, alias="message") 202 203 204class GetECSServiceRecommendationProjectedMetricsRequestModel(BaseModel): 205 service_arn: str = Field(alias="serviceArn") 206 stat: Literal["Average", "Maximum"] = Field(alias="stat") 207 period: int = Field(alias="period") 208 start_time: Union[datetime, str] = Field(alias="startTime") 209 end_time: Union[datetime, str] = Field(alias="endTime") 210 211 212class GetEffectiveRecommendationPreferencesRequestModel(BaseModel): 213 resource_arn: str = Field(alias="resourceArn") 214 215 216class GetRecommendationSummariesRequestModel(BaseModel): 217 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 218 next_token: Optional[str] = Field(default=None, alias="nextToken") 219 max_results: Optional[int] = Field(default=None, alias="maxResults") 220 221 222class RecommendationSourceModel(BaseModel): 223 recommendation_source_arn: Optional[str] = Field( 224 default=None, alias="recommendationSourceArn" 225 ) 226 recommendation_source_type: Optional[ 227 Literal[ 228 "AutoScalingGroup", 229 "EbsVolume", 230 "Ec2Instance", 231 "EcsService", 232 "LambdaFunction", 233 ] 234 ] = Field(default=None, alias="recommendationSourceType") 235 236 237class LambdaFunctionMemoryProjectedMetricModel(BaseModel): 238 name: Optional[Literal["Duration"]] = Field(default=None, alias="name") 239 statistic: Optional[Literal["Expected", "LowerBound", "UpperBound"]] = Field( 240 default=None, alias="statistic" 241 ) 242 value: Optional[float] = Field(default=None, alias="value") 243 244 245class LambdaFunctionUtilizationMetricModel(BaseModel): 246 name: Optional[Literal["Duration", "Memory"]] = Field(default=None, alias="name") 247 statistic: Optional[Literal["Average", "Maximum"]] = Field( 248 default=None, alias="statistic" 249 ) 250 value: Optional[float] = Field(default=None, alias="value") 251 252 253class ProjectedMetricModel(BaseModel): 254 name: Optional[ 255 Literal[ 256 "Cpu", 257 "DISK_READ_BYTES_PER_SECOND", 258 "DISK_READ_OPS_PER_SECOND", 259 "DISK_WRITE_BYTES_PER_SECOND", 260 "DISK_WRITE_OPS_PER_SECOND", 261 "EBS_READ_BYTES_PER_SECOND", 262 "EBS_READ_OPS_PER_SECOND", 263 "EBS_WRITE_BYTES_PER_SECOND", 264 "EBS_WRITE_OPS_PER_SECOND", 265 "Memory", 266 "NETWORK_IN_BYTES_PER_SECOND", 267 "NETWORK_OUT_BYTES_PER_SECOND", 268 "NETWORK_PACKETS_IN_PER_SECOND", 269 "NETWORK_PACKETS_OUT_PER_SECOND", 270 ] 271 ] = Field(default=None, alias="name") 272 timestamps: Optional[List[datetime]] = Field(default=None, alias="timestamps") 273 values: Optional[List[float]] = Field(default=None, alias="values") 274 275 276class ReasonCodeSummaryModel(BaseModel): 277 name: Optional[Literal["MemoryOverprovisioned", "MemoryUnderprovisioned"]] = Field( 278 default=None, alias="name" 279 ) 280 value: Optional[float] = Field(default=None, alias="value") 281 282 283class UpdateEnrollmentStatusRequestModel(BaseModel): 284 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 285 include_member_accounts: Optional[bool] = Field( 286 default=None, alias="includeMemberAccounts" 287 ) 288 289 290class VolumeConfigurationModel(BaseModel): 291 volume_type: Optional[str] = Field(default=None, alias="volumeType") 292 volume_size: Optional[int] = Field(default=None, alias="volumeSize") 293 volume_baseline_iop_s: Optional[int] = Field( 294 default=None, alias="volumeBaselineIOPS" 295 ) 296 volume_burst_iop_s: Optional[int] = Field(default=None, alias="volumeBurstIOPS") 297 volume_baseline_throughput: Optional[int] = Field( 298 default=None, alias="volumeBaselineThroughput" 299 ) 300 volume_burst_throughput: Optional[int] = Field( 301 default=None, alias="volumeBurstThroughput" 302 ) 303 304 305class ContainerConfigurationModel(BaseModel): 306 container_name: Optional[str] = Field(default=None, alias="containerName") 307 memory_size_configuration: Optional[MemorySizeConfigurationModel] = Field( 308 default=None, alias="memorySizeConfiguration" 309 ) 310 cpu: Optional[int] = Field(default=None, alias="cpu") 311 312 313class ContainerRecommendationModel(BaseModel): 314 container_name: Optional[str] = Field(default=None, alias="containerName") 315 memory_size_configuration: Optional[MemorySizeConfigurationModel] = Field( 316 default=None, alias="memorySizeConfiguration" 317 ) 318 cpu: Optional[int] = Field(default=None, alias="cpu") 319 320 321class DeleteRecommendationPreferencesRequestModel(BaseModel): 322 resource_type: Literal[ 323 "AutoScalingGroup", 324 "EbsVolume", 325 "Ec2Instance", 326 "EcsService", 327 "LambdaFunction", 328 "NotApplicable", 329 ] = Field(alias="resourceType") 330 recommendation_preference_names: Sequence[ 331 Literal[ 332 "EnhancedInfrastructureMetrics", 333 "ExternalMetricsPreference", 334 "InferredWorkloadTypes", 335 ] 336 ] = Field(alias="recommendationPreferenceNames") 337 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 338 339 340class GetRecommendationPreferencesRequestModel(BaseModel): 341 resource_type: Literal[ 342 "AutoScalingGroup", 343 "EbsVolume", 344 "Ec2Instance", 345 "EcsService", 346 "LambdaFunction", 347 "NotApplicable", 348 ] = Field(alias="resourceType") 349 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 350 next_token: Optional[str] = Field(default=None, alias="nextToken") 351 max_results: Optional[int] = Field(default=None, alias="maxResults") 352 353 354class DescribeRecommendationExportJobsRequestModel(BaseModel): 355 job_ids: Optional[Sequence[str]] = Field(default=None, alias="jobIds") 356 filters: Optional[Sequence[JobFilterModel]] = Field(default=None, alias="filters") 357 next_token: Optional[str] = Field(default=None, alias="nextToken") 358 max_results: Optional[int] = Field(default=None, alias="maxResults") 359 360 361class DescribeRecommendationExportJobsRequestDescribeRecommendationExportJobsPaginateModel( 362 BaseModel 363): 364 job_ids: Optional[Sequence[str]] = Field(default=None, alias="jobIds") 365 filters: Optional[Sequence[JobFilterModel]] = Field(default=None, alias="filters") 366 pagination_config: Optional[PaginatorConfigModel] = Field( 367 default=None, alias="PaginationConfig" 368 ) 369 370 371class GetRecommendationPreferencesRequestGetRecommendationPreferencesPaginateModel( 372 BaseModel 373): 374 resource_type: Literal[ 375 "AutoScalingGroup", 376 "EbsVolume", 377 "Ec2Instance", 378 "EcsService", 379 "LambdaFunction", 380 "NotApplicable", 381 ] = Field(alias="resourceType") 382 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 383 pagination_config: Optional[PaginatorConfigModel] = Field( 384 default=None, alias="PaginationConfig" 385 ) 386 387 388class GetRecommendationSummariesRequestGetRecommendationSummariesPaginateModel( 389 BaseModel 390): 391 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 392 pagination_config: Optional[PaginatorConfigModel] = Field( 393 default=None, alias="PaginationConfig" 394 ) 395 396 397class GetEnrollmentStatusResponseModel(BaseModel): 398 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 399 status_reason: str = Field(alias="statusReason") 400 member_accounts_enrolled: bool = Field(alias="memberAccountsEnrolled") 401 last_updated_timestamp: datetime = Field(alias="lastUpdatedTimestamp") 402 number_of_member_accounts_opted_in: int = Field( 403 alias="numberOfMemberAccountsOptedIn" 404 ) 405 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 406 407 408class GetEnrollmentStatusesForOrganizationResponseModel(BaseModel): 409 account_enrollment_statuses: List[AccountEnrollmentStatusModel] = Field( 410 alias="accountEnrollmentStatuses" 411 ) 412 next_token: str = Field(alias="nextToken") 413 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 414 415 416class UpdateEnrollmentStatusResponseModel(BaseModel): 417 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 418 status_reason: str = Field(alias="statusReason") 419 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 420 421 422class GetEBSVolumeRecommendationsRequestModel(BaseModel): 423 volume_arns: Optional[Sequence[str]] = Field(default=None, alias="volumeArns") 424 next_token: Optional[str] = Field(default=None, alias="nextToken") 425 max_results: Optional[int] = Field(default=None, alias="maxResults") 426 filters: Optional[Sequence[EBSFilterModel]] = Field(default=None, alias="filters") 427 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 428 429 430class ECSServiceRecommendedOptionProjectedMetricModel(BaseModel): 431 recommended_cpu_units: Optional[int] = Field( 432 default=None, alias="recommendedCpuUnits" 433 ) 434 recommended_memory_size: Optional[int] = Field( 435 default=None, alias="recommendedMemorySize" 436 ) 437 projected_metrics: Optional[List[ECSServiceProjectedMetricModel]] = Field( 438 default=None, alias="projectedMetrics" 439 ) 440 441 442class GetECSServiceRecommendationsRequestModel(BaseModel): 443 service_arns: Optional[Sequence[str]] = Field(default=None, alias="serviceArns") 444 next_token: Optional[str] = Field(default=None, alias="nextToken") 445 max_results: Optional[int] = Field(default=None, alias="maxResults") 446 filters: Optional[Sequence[ECSServiceRecommendationFilterModel]] = Field( 447 default=None, alias="filters" 448 ) 449 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 450 451 452class EffectiveRecommendationPreferencesModel(BaseModel): 453 cpu_vendor_architectures: Optional[List[Literal["AWS_ARM64", "CURRENT"]]] = Field( 454 default=None, alias="cpuVendorArchitectures" 455 ) 456 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 457 default=None, alias="enhancedInfrastructureMetrics" 458 ) 459 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 460 default=None, alias="inferredWorkloadTypes" 461 ) 462 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 463 default=None, alias="externalMetricsPreference" 464 ) 465 466 467class GetEffectiveRecommendationPreferencesResponseModel(BaseModel): 468 enhanced_infrastructure_metrics: Literal["Active", "Inactive"] = Field( 469 alias="enhancedInfrastructureMetrics" 470 ) 471 external_metrics_preference: ExternalMetricsPreferenceModel = Field( 472 alias="externalMetricsPreference" 473 ) 474 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 475 476 477class PutRecommendationPreferencesRequestModel(BaseModel): 478 resource_type: Literal[ 479 "AutoScalingGroup", 480 "EbsVolume", 481 "Ec2Instance", 482 "EcsService", 483 "LambdaFunction", 484 "NotApplicable", 485 ] = Field(alias="resourceType") 486 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 487 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 488 default=None, alias="enhancedInfrastructureMetrics" 489 ) 490 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 491 default=None, alias="inferredWorkloadTypes" 492 ) 493 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 494 default=None, alias="externalMetricsPreference" 495 ) 496 497 498class RecommendationPreferencesDetailModel(BaseModel): 499 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 500 resource_type: Optional[ 501 Literal[ 502 "AutoScalingGroup", 503 "EbsVolume", 504 "Ec2Instance", 505 "EcsService", 506 "LambdaFunction", 507 "NotApplicable", 508 ] 509 ] = Field(default=None, alias="resourceType") 510 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 511 default=None, alias="enhancedInfrastructureMetrics" 512 ) 513 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 514 default=None, alias="inferredWorkloadTypes" 515 ) 516 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 517 default=None, alias="externalMetricsPreference" 518 ) 519 520 521class GetEnrollmentStatusesForOrganizationRequestGetEnrollmentStatusesForOrganizationPaginateModel( 522 BaseModel 523): 524 filters: Optional[Sequence[EnrollmentFilterModel]] = Field( 525 default=None, alias="filters" 526 ) 527 pagination_config: Optional[PaginatorConfigModel] = Field( 528 default=None, alias="PaginationConfig" 529 ) 530 531 532class GetEnrollmentStatusesForOrganizationRequestModel(BaseModel): 533 filters: Optional[Sequence[EnrollmentFilterModel]] = Field( 534 default=None, alias="filters" 535 ) 536 next_token: Optional[str] = Field(default=None, alias="nextToken") 537 max_results: Optional[int] = Field(default=None, alias="maxResults") 538 539 540class SavingsOpportunityModel(BaseModel): 541 savings_opportunity_percentage: Optional[float] = Field( 542 default=None, alias="savingsOpportunityPercentage" 543 ) 544 estimated_monthly_savings: Optional[EstimatedMonthlySavingsModel] = Field( 545 default=None, alias="estimatedMonthlySavings" 546 ) 547 548 549class GetAutoScalingGroupRecommendationsRequestModel(BaseModel): 550 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 551 auto_scaling_group_arns: Optional[Sequence[str]] = Field( 552 default=None, alias="autoScalingGroupArns" 553 ) 554 next_token: Optional[str] = Field(default=None, alias="nextToken") 555 max_results: Optional[int] = Field(default=None, alias="maxResults") 556 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 557 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 558 default=None, alias="recommendationPreferences" 559 ) 560 561 562class GetEC2InstanceRecommendationsRequestModel(BaseModel): 563 instance_arns: Optional[Sequence[str]] = Field(default=None, alias="instanceArns") 564 next_token: Optional[str] = Field(default=None, alias="nextToken") 565 max_results: Optional[int] = Field(default=None, alias="maxResults") 566 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 567 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 568 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 569 default=None, alias="recommendationPreferences" 570 ) 571 572 573class GetEC2RecommendationProjectedMetricsRequestModel(BaseModel): 574 instance_arn: str = Field(alias="instanceArn") 575 stat: Literal["Average", "Maximum"] = Field(alias="stat") 576 period: int = Field(alias="period") 577 start_time: Union[datetime, str] = Field(alias="startTime") 578 end_time: Union[datetime, str] = Field(alias="endTime") 579 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 580 default=None, alias="recommendationPreferences" 581 ) 582 583 584class ExportAutoScalingGroupRecommendationsRequestModel(BaseModel): 585 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 586 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 587 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 588 fields_to_export: Optional[ 589 Sequence[ 590 Literal[ 591 "AccountId", 592 "AutoScalingGroupArn", 593 "AutoScalingGroupName", 594 "CurrentConfigurationDesiredCapacity", 595 "CurrentConfigurationInstanceType", 596 "CurrentConfigurationMaxSize", 597 "CurrentConfigurationMinSize", 598 "CurrentMemory", 599 "CurrentNetwork", 600 "CurrentOnDemandPrice", 601 "CurrentPerformanceRisk", 602 "CurrentStandardOneYearNoUpfrontReservedPrice", 603 "CurrentStandardThreeYearNoUpfrontReservedPrice", 604 "CurrentStorage", 605 "CurrentVCpus", 606 "EffectiveRecommendationPreferencesCpuVendorArchitectures", 607 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", 608 "EffectiveRecommendationPreferencesInferredWorkloadTypes", 609 "Finding", 610 "InferredWorkloadTypes", 611 "LastRefreshTimestamp", 612 "LookbackPeriodInDays", 613 "RecommendationOptionsConfigurationDesiredCapacity", 614 "RecommendationOptionsConfigurationInstanceType", 615 "RecommendationOptionsConfigurationMaxSize", 616 "RecommendationOptionsConfigurationMinSize", 617 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 618 "RecommendationOptionsEstimatedMonthlySavingsValue", 619 "RecommendationOptionsMemory", 620 "RecommendationOptionsMigrationEffort", 621 "RecommendationOptionsNetwork", 622 "RecommendationOptionsOnDemandPrice", 623 "RecommendationOptionsPerformanceRisk", 624 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 625 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 626 "RecommendationOptionsSavingsOpportunityPercentage", 627 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", 628 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", 629 "RecommendationOptionsStorage", 630 "RecommendationOptionsVcpus", 631 "UtilizationMetricsCpuMaximum", 632 "UtilizationMetricsDiskReadBytesPerSecondMaximum", 633 "UtilizationMetricsDiskReadOpsPerSecondMaximum", 634 "UtilizationMetricsDiskWriteBytesPerSecondMaximum", 635 "UtilizationMetricsDiskWriteOpsPerSecondMaximum", 636 "UtilizationMetricsEbsReadBytesPerSecondMaximum", 637 "UtilizationMetricsEbsReadOpsPerSecondMaximum", 638 "UtilizationMetricsEbsWriteBytesPerSecondMaximum", 639 "UtilizationMetricsEbsWriteOpsPerSecondMaximum", 640 "UtilizationMetricsMemoryMaximum", 641 "UtilizationMetricsNetworkInBytesPerSecondMaximum", 642 "UtilizationMetricsNetworkOutBytesPerSecondMaximum", 643 "UtilizationMetricsNetworkPacketsInPerSecondMaximum", 644 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum", 645 ] 646 ] 647 ] = Field(default=None, alias="fieldsToExport") 648 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 649 include_member_accounts: Optional[bool] = Field( 650 default=None, alias="includeMemberAccounts" 651 ) 652 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 653 default=None, alias="recommendationPreferences" 654 ) 655 656 657class ExportEBSVolumeRecommendationsRequestModel(BaseModel): 658 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 659 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 660 filters: Optional[Sequence[EBSFilterModel]] = Field(default=None, alias="filters") 661 fields_to_export: Optional[ 662 Sequence[ 663 Literal[ 664 "AccountId", 665 "CurrentConfigurationVolumeBaselineIOPS", 666 "CurrentConfigurationVolumeBaselineThroughput", 667 "CurrentConfigurationVolumeBurstIOPS", 668 "CurrentConfigurationVolumeBurstThroughput", 669 "CurrentConfigurationVolumeSize", 670 "CurrentConfigurationVolumeType", 671 "CurrentMonthlyPrice", 672 "CurrentPerformanceRisk", 673 "Finding", 674 "LastRefreshTimestamp", 675 "LookbackPeriodInDays", 676 "RecommendationOptionsConfigurationVolumeBaselineIOPS", 677 "RecommendationOptionsConfigurationVolumeBaselineThroughput", 678 "RecommendationOptionsConfigurationVolumeBurstIOPS", 679 "RecommendationOptionsConfigurationVolumeBurstThroughput", 680 "RecommendationOptionsConfigurationVolumeSize", 681 "RecommendationOptionsConfigurationVolumeType", 682 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 683 "RecommendationOptionsEstimatedMonthlySavingsValue", 684 "RecommendationOptionsMonthlyPrice", 685 "RecommendationOptionsPerformanceRisk", 686 "RecommendationOptionsSavingsOpportunityPercentage", 687 "UtilizationMetricsVolumeReadBytesPerSecondMaximum", 688 "UtilizationMetricsVolumeReadOpsPerSecondMaximum", 689 "UtilizationMetricsVolumeWriteBytesPerSecondMaximum", 690 "UtilizationMetricsVolumeWriteOpsPerSecondMaximum", 691 "VolumeArn", 692 ] 693 ] 694 ] = Field(default=None, alias="fieldsToExport") 695 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 696 include_member_accounts: Optional[bool] = Field( 697 default=None, alias="includeMemberAccounts" 698 ) 699 700 701class ExportEC2InstanceRecommendationsRequestModel(BaseModel): 702 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 703 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 704 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 705 fields_to_export: Optional[ 706 Sequence[ 707 Literal[ 708 "AccountId", 709 "CurrentInstanceType", 710 "CurrentMemory", 711 "CurrentNetwork", 712 "CurrentOnDemandPrice", 713 "CurrentPerformanceRisk", 714 "CurrentStandardOneYearNoUpfrontReservedPrice", 715 "CurrentStandardThreeYearNoUpfrontReservedPrice", 716 "CurrentStorage", 717 "CurrentVCpus", 718 "EffectiveRecommendationPreferencesCpuVendorArchitectures", 719 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", 720 "EffectiveRecommendationPreferencesExternalMetricsSource", 721 "EffectiveRecommendationPreferencesInferredWorkloadTypes", 722 "Finding", 723 "FindingReasonCodes", 724 "InferredWorkloadTypes", 725 "InstanceArn", 726 "InstanceName", 727 "LastRefreshTimestamp", 728 "LookbackPeriodInDays", 729 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 730 "RecommendationOptionsEstimatedMonthlySavingsValue", 731 "RecommendationOptionsInstanceType", 732 "RecommendationOptionsMemory", 733 "RecommendationOptionsMigrationEffort", 734 "RecommendationOptionsNetwork", 735 "RecommendationOptionsOnDemandPrice", 736 "RecommendationOptionsPerformanceRisk", 737 "RecommendationOptionsPlatformDifferences", 738 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 739 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 740 "RecommendationOptionsSavingsOpportunityPercentage", 741 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", 742 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", 743 "RecommendationOptionsStorage", 744 "RecommendationOptionsVcpus", 745 "RecommendationsSourcesRecommendationSourceArn", 746 "RecommendationsSourcesRecommendationSourceType", 747 "UtilizationMetricsCpuMaximum", 748 "UtilizationMetricsDiskReadBytesPerSecondMaximum", 749 "UtilizationMetricsDiskReadOpsPerSecondMaximum", 750 "UtilizationMetricsDiskWriteBytesPerSecondMaximum", 751 "UtilizationMetricsDiskWriteOpsPerSecondMaximum", 752 "UtilizationMetricsEbsReadBytesPerSecondMaximum", 753 "UtilizationMetricsEbsReadOpsPerSecondMaximum", 754 "UtilizationMetricsEbsWriteBytesPerSecondMaximum", 755 "UtilizationMetricsEbsWriteOpsPerSecondMaximum", 756 "UtilizationMetricsMemoryMaximum", 757 "UtilizationMetricsNetworkInBytesPerSecondMaximum", 758 "UtilizationMetricsNetworkOutBytesPerSecondMaximum", 759 "UtilizationMetricsNetworkPacketsInPerSecondMaximum", 760 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum", 761 ] 762 ] 763 ] = Field(default=None, alias="fieldsToExport") 764 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 765 include_member_accounts: Optional[bool] = Field( 766 default=None, alias="includeMemberAccounts" 767 ) 768 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 769 default=None, alias="recommendationPreferences" 770 ) 771 772 773class ExportECSServiceRecommendationsRequestModel(BaseModel): 774 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 775 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 776 filters: Optional[Sequence[ECSServiceRecommendationFilterModel]] = Field( 777 default=None, alias="filters" 778 ) 779 fields_to_export: Optional[ 780 Sequence[ 781 Literal[ 782 "AccountId", 783 "CurrentPerformanceRisk", 784 "CurrentServiceConfigurationAutoScalingConfiguration", 785 "CurrentServiceConfigurationCpu", 786 "CurrentServiceConfigurationMemory", 787 "CurrentServiceConfigurationTaskDefinitionArn", 788 "CurrentServiceContainerConfigurations", 789 "Finding", 790 "FindingReasonCodes", 791 "LastRefreshTimestamp", 792 "LaunchType", 793 "LookbackPeriodInDays", 794 "RecommendationOptionsContainerRecommendations", 795 "RecommendationOptionsCpu", 796 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 797 "RecommendationOptionsEstimatedMonthlySavingsValue", 798 "RecommendationOptionsMemory", 799 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 800 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 801 "RecommendationOptionsSavingsOpportunityPercentage", 802 "ServiceArn", 803 "UtilizationMetricsCpuMaximum", 804 "UtilizationMetricsMemoryMaximum", 805 ] 806 ] 807 ] = Field(default=None, alias="fieldsToExport") 808 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 809 include_member_accounts: Optional[bool] = Field( 810 default=None, alias="includeMemberAccounts" 811 ) 812 813 814class ExportAutoScalingGroupRecommendationsResponseModel(BaseModel): 815 job_id: str = Field(alias="jobId") 816 s3_destination: S3DestinationModel = Field(alias="s3Destination") 817 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 818 819 820class ExportDestinationModel(BaseModel): 821 s3: Optional[S3DestinationModel] = Field(default=None, alias="s3") 822 823 824class ExportEBSVolumeRecommendationsResponseModel(BaseModel): 825 job_id: str = Field(alias="jobId") 826 s3_destination: S3DestinationModel = Field(alias="s3Destination") 827 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 828 829 830class ExportEC2InstanceRecommendationsResponseModel(BaseModel): 831 job_id: str = Field(alias="jobId") 832 s3_destination: S3DestinationModel = Field(alias="s3Destination") 833 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 834 835 836class ExportECSServiceRecommendationsResponseModel(BaseModel): 837 job_id: str = Field(alias="jobId") 838 s3_destination: S3DestinationModel = Field(alias="s3Destination") 839 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 840 841 842class ExportLambdaFunctionRecommendationsResponseModel(BaseModel): 843 job_id: str = Field(alias="jobId") 844 s3_destination: S3DestinationModel = Field(alias="s3Destination") 845 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 846 847 848class ExportLambdaFunctionRecommendationsRequestModel(BaseModel): 849 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 850 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 851 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 852 default=None, alias="filters" 853 ) 854 fields_to_export: Optional[ 855 Sequence[ 856 Literal[ 857 "AccountId", 858 "CurrentConfigurationMemorySize", 859 "CurrentConfigurationTimeout", 860 "CurrentCostAverage", 861 "CurrentCostTotal", 862 "CurrentPerformanceRisk", 863 "Finding", 864 "FindingReasonCodes", 865 "FunctionArn", 866 "FunctionVersion", 867 "LastRefreshTimestamp", 868 "LookbackPeriodInDays", 869 "NumberOfInvocations", 870 "RecommendationOptionsConfigurationMemorySize", 871 "RecommendationOptionsCostHigh", 872 "RecommendationOptionsCostLow", 873 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 874 "RecommendationOptionsEstimatedMonthlySavingsValue", 875 "RecommendationOptionsProjectedUtilizationMetricsDurationExpected", 876 "RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound", 877 "RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound", 878 "RecommendationOptionsSavingsOpportunityPercentage", 879 "UtilizationMetricsDurationAverage", 880 "UtilizationMetricsDurationMaximum", 881 "UtilizationMetricsMemoryAverage", 882 "UtilizationMetricsMemoryMaximum", 883 ] 884 ] 885 ] = Field(default=None, alias="fieldsToExport") 886 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 887 include_member_accounts: Optional[bool] = Field( 888 default=None, alias="includeMemberAccounts" 889 ) 890 891 892class GetLambdaFunctionRecommendationsRequestGetLambdaFunctionRecommendationsPaginateModel( 893 BaseModel 894): 895 function_arns: Optional[Sequence[str]] = Field(default=None, alias="functionArns") 896 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 897 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 898 default=None, alias="filters" 899 ) 900 pagination_config: Optional[PaginatorConfigModel] = Field( 901 default=None, alias="PaginationConfig" 902 ) 903 904 905class GetLambdaFunctionRecommendationsRequestModel(BaseModel): 906 function_arns: Optional[Sequence[str]] = Field(default=None, alias="functionArns") 907 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 908 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 909 default=None, alias="filters" 910 ) 911 next_token: Optional[str] = Field(default=None, alias="nextToken") 912 max_results: Optional[int] = Field(default=None, alias="maxResults") 913 914 915class RecommendedOptionProjectedMetricModel(BaseModel): 916 recommended_instance_type: Optional[str] = Field( 917 default=None, alias="recommendedInstanceType" 918 ) 919 rank: Optional[int] = Field(default=None, alias="rank") 920 projected_metrics: Optional[List[ProjectedMetricModel]] = Field( 921 default=None, alias="projectedMetrics" 922 ) 923 924 925class SummaryModel(BaseModel): 926 name: Optional[ 927 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 928 ] = Field(default=None, alias="name") 929 value: Optional[float] = Field(default=None, alias="value") 930 reason_code_summaries: Optional[List[ReasonCodeSummaryModel]] = Field( 931 default=None, alias="reasonCodeSummaries" 932 ) 933 934 935class ServiceConfigurationModel(BaseModel): 936 memory: Optional[int] = Field(default=None, alias="memory") 937 cpu: Optional[int] = Field(default=None, alias="cpu") 938 container_configurations: Optional[List[ContainerConfigurationModel]] = Field( 939 default=None, alias="containerConfigurations" 940 ) 941 auto_scaling_configuration: Optional[ 942 Literal["TargetTrackingScalingCpu", "TargetTrackingScalingMemory"] 943 ] = Field(default=None, alias="autoScalingConfiguration") 944 task_definition_arn: Optional[str] = Field(default=None, alias="taskDefinitionArn") 945 946 947class GetECSServiceRecommendationProjectedMetricsResponseModel(BaseModel): 948 recommended_option_projected_metrics: List[ 949 ECSServiceRecommendedOptionProjectedMetricModel 950 ] = Field(alias="recommendedOptionProjectedMetrics") 951 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 952 953 954class GetRecommendationPreferencesResponseModel(BaseModel): 955 next_token: str = Field(alias="nextToken") 956 recommendation_preferences_details: List[ 957 RecommendationPreferencesDetailModel 958 ] = Field(alias="recommendationPreferencesDetails") 959 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 960 961 962class AutoScalingGroupRecommendationOptionModel(BaseModel): 963 configuration: Optional[AutoScalingGroupConfigurationModel] = Field( 964 default=None, alias="configuration" 965 ) 966 projected_utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 967 default=None, alias="projectedUtilizationMetrics" 968 ) 969 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 970 rank: Optional[int] = Field(default=None, alias="rank") 971 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 972 default=None, alias="savingsOpportunity" 973 ) 974 migration_effort: Optional[Literal["High", "Low", "Medium", "VeryLow"]] = Field( 975 default=None, alias="migrationEffort" 976 ) 977 978 979class ECSServiceRecommendationOptionModel(BaseModel): 980 memory: Optional[int] = Field(default=None, alias="memory") 981 cpu: Optional[int] = Field(default=None, alias="cpu") 982 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 983 default=None, alias="savingsOpportunity" 984 ) 985 projected_utilization_metrics: Optional[ 986 List[ECSServiceProjectedUtilizationMetricModel] 987 ] = Field(default=None, alias="projectedUtilizationMetrics") 988 container_recommendations: Optional[List[ContainerRecommendationModel]] = Field( 989 default=None, alias="containerRecommendations" 990 ) 991 992 993class InstanceRecommendationOptionModel(BaseModel): 994 instance_type: Optional[str] = Field(default=None, alias="instanceType") 995 projected_utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 996 default=None, alias="projectedUtilizationMetrics" 997 ) 998 platform_differences: Optional[ 999 List[ 1000 Literal[ 1001 "Architecture", 1002 "Hypervisor", 1003 "InstanceStoreAvailability", 1004 "NetworkInterface", 1005 "StorageInterface", 1006 "VirtualizationType", 1007 ] 1008 ] 1009 ] = Field(default=None, alias="platformDifferences") 1010 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 1011 rank: Optional[int] = Field(default=None, alias="rank") 1012 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1013 default=None, alias="savingsOpportunity" 1014 ) 1015 migration_effort: Optional[Literal["High", "Low", "Medium", "VeryLow"]] = Field( 1016 default=None, alias="migrationEffort" 1017 ) 1018 1019 1020class LambdaFunctionMemoryRecommendationOptionModel(BaseModel): 1021 rank: Optional[int] = Field(default=None, alias="rank") 1022 memory_size: Optional[int] = Field(default=None, alias="memorySize") 1023 projected_utilization_metrics: Optional[ 1024 List[LambdaFunctionMemoryProjectedMetricModel] 1025 ] = Field(default=None, alias="projectedUtilizationMetrics") 1026 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1027 default=None, alias="savingsOpportunity" 1028 ) 1029 1030 1031class VolumeRecommendationOptionModel(BaseModel): 1032 configuration: Optional[VolumeConfigurationModel] = Field( 1033 default=None, alias="configuration" 1034 ) 1035 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 1036 rank: Optional[int] = Field(default=None, alias="rank") 1037 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1038 default=None, alias="savingsOpportunity" 1039 ) 1040 1041 1042class RecommendationExportJobModel(BaseModel): 1043 job_id: Optional[str] = Field(default=None, alias="jobId") 1044 destination: Optional[ExportDestinationModel] = Field( 1045 default=None, alias="destination" 1046 ) 1047 resource_type: Optional[ 1048 Literal[ 1049 "AutoScalingGroup", 1050 "EbsVolume", 1051 "Ec2Instance", 1052 "EcsService", 1053 "LambdaFunction", 1054 "NotApplicable", 1055 ] 1056 ] = Field(default=None, alias="resourceType") 1057 status: Optional[Literal["Complete", "Failed", "InProgress", "Queued"]] = Field( 1058 default=None, alias="status" 1059 ) 1060 creation_timestamp: Optional[datetime] = Field( 1061 default=None, alias="creationTimestamp" 1062 ) 1063 last_updated_timestamp: Optional[datetime] = Field( 1064 default=None, alias="lastUpdatedTimestamp" 1065 ) 1066 failure_reason: Optional[str] = Field(default=None, alias="failureReason") 1067 1068 1069class GetEC2RecommendationProjectedMetricsResponseModel(BaseModel): 1070 recommended_option_projected_metrics: List[ 1071 RecommendedOptionProjectedMetricModel 1072 ] = Field(alias="recommendedOptionProjectedMetrics") 1073 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1074 1075 1076class RecommendationSummaryModel(BaseModel): 1077 summaries: Optional[List[SummaryModel]] = Field(default=None, alias="summaries") 1078 recommendation_resource_type: Optional[ 1079 Literal[ 1080 "AutoScalingGroup", 1081 "EbsVolume", 1082 "Ec2Instance", 1083 "EcsService", 1084 "LambdaFunction", 1085 ] 1086 ] = Field(default=None, alias="recommendationResourceType") 1087 account_id: Optional[str] = Field(default=None, alias="accountId") 1088 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1089 default=None, alias="savingsOpportunity" 1090 ) 1091 current_performance_risk_ratings: Optional[ 1092 CurrentPerformanceRiskRatingsModel 1093 ] = Field(default=None, alias="currentPerformanceRiskRatings") 1094 1095 1096class AutoScalingGroupRecommendationModel(BaseModel): 1097 account_id: Optional[str] = Field(default=None, alias="accountId") 1098 auto_scaling_group_arn: Optional[str] = Field( 1099 default=None, alias="autoScalingGroupArn" 1100 ) 1101 auto_scaling_group_name: Optional[str] = Field( 1102 default=None, alias="autoScalingGroupName" 1103 ) 1104 finding: Optional[ 1105 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 1106 ] = Field(default=None, alias="finding") 1107 utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 1108 default=None, alias="utilizationMetrics" 1109 ) 1110 look_back_period_in_days: Optional[float] = Field( 1111 default=None, alias="lookBackPeriodInDays" 1112 ) 1113 current_configuration: Optional[AutoScalingGroupConfigurationModel] = Field( 1114 default=None, alias="currentConfiguration" 1115 ) 1116 recommendation_options: Optional[ 1117 List[AutoScalingGroupRecommendationOptionModel] 1118 ] = Field(default=None, alias="recommendationOptions") 1119 last_refresh_timestamp: Optional[datetime] = Field( 1120 default=None, alias="lastRefreshTimestamp" 1121 ) 1122 current_performance_risk: Optional[ 1123 Literal["High", "Low", "Medium", "VeryLow"] 1124 ] = Field(default=None, alias="currentPerformanceRisk") 1125 effective_recommendation_preferences: Optional[ 1126 EffectiveRecommendationPreferencesModel 1127 ] = Field(default=None, alias="effectiveRecommendationPreferences") 1128 inferred_workload_types: Optional[ 1129 List[ 1130 Literal[ 1131 "AmazonEmr", 1132 "ApacheCassandra", 1133 "ApacheHadoop", 1134 "Kafka", 1135 "Memcached", 1136 "Nginx", 1137 "PostgreSql", 1138 "Redis", 1139 ] 1140 ] 1141 ] = Field(default=None, alias="inferredWorkloadTypes") 1142 1143 1144class ECSServiceRecommendationModel(BaseModel): 1145 service_arn: Optional[str] = Field(default=None, alias="serviceArn") 1146 account_id: Optional[str] = Field(default=None, alias="accountId") 1147 current_service_configuration: Optional[ServiceConfigurationModel] = Field( 1148 default=None, alias="currentServiceConfiguration" 1149 ) 1150 utilization_metrics: Optional[List[ECSServiceUtilizationMetricModel]] = Field( 1151 default=None, alias="utilizationMetrics" 1152 ) 1153 lookback_period_in_days: Optional[float] = Field( 1154 default=None, alias="lookbackPeriodInDays" 1155 ) 1156 launch_type: Optional[Literal["EC2", "Fargate"]] = Field( 1157 default=None, alias="launchType" 1158 ) 1159 last_refresh_timestamp: Optional[datetime] = Field( 1160 default=None, alias="lastRefreshTimestamp" 1161 ) 1162 finding: Optional[ 1163 Literal["Optimized", "Overprovisioned", "Underprovisioned"] 1164 ] = Field(default=None, alias="finding") 1165 finding_reason_codes: Optional[ 1166 List[ 1167 Literal[ 1168 "CPUOverprovisioned", 1169 "CPUUnderprovisioned", 1170 "MemoryOverprovisioned", 1171 "MemoryUnderprovisioned", 1172 ] 1173 ] 1174 ] = Field(default=None, alias="findingReasonCodes") 1175 service_recommendation_options: Optional[ 1176 List[ECSServiceRecommendationOptionModel] 1177 ] = Field(default=None, alias="serviceRecommendationOptions") 1178 current_performance_risk: Optional[ 1179 Literal["High", "Low", "Medium", "VeryLow"] 1180 ] = Field(default=None, alias="currentPerformanceRisk") 1181 1182 1183class InstanceRecommendationModel(BaseModel): 1184 instance_arn: Optional[str] = Field(default=None, alias="instanceArn") 1185 account_id: Optional[str] = Field(default=None, alias="accountId") 1186 instance_name: Optional[str] = Field(default=None, alias="instanceName") 1187 current_instance_type: Optional[str] = Field( 1188 default=None, alias="currentInstanceType" 1189 ) 1190 finding: Optional[ 1191 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 1192 ] = Field(default=None, alias="finding") 1193 finding_reason_codes: Optional[ 1194 List[ 1195 Literal[ 1196 "CPUOverprovisioned", 1197 "CPUUnderprovisioned", 1198 "DiskIOPSOverprovisioned", 1199 "DiskIOPSUnderprovisioned", 1200 "DiskThroughputOverprovisioned", 1201 "DiskThroughputUnderprovisioned", 1202 "EBSIOPSOverprovisioned", 1203 "EBSIOPSUnderprovisioned", 1204 "EBSThroughputOverprovisioned", 1205 "EBSThroughputUnderprovisioned", 1206 "MemoryOverprovisioned", 1207 "MemoryUnderprovisioned", 1208 "NetworkBandwidthOverprovisioned", 1209 "NetworkBandwidthUnderprovisioned", 1210 "NetworkPPSOverprovisioned", 1211 "NetworkPPSUnderprovisioned", 1212 ] 1213 ] 1214 ] = Field(default=None, alias="findingReasonCodes") 1215 utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 1216 default=None, alias="utilizationMetrics" 1217 ) 1218 look_back_period_in_days: Optional[float] = Field( 1219 default=None, alias="lookBackPeriodInDays" 1220 ) 1221 recommendation_options: Optional[List[InstanceRecommendationOptionModel]] = Field( 1222 default=None, alias="recommendationOptions" 1223 ) 1224 recommendation_sources: Optional[List[RecommendationSourceModel]] = Field( 1225 default=None, alias="recommendationSources" 1226 ) 1227 last_refresh_timestamp: Optional[datetime] = Field( 1228 default=None, alias="lastRefreshTimestamp" 1229 ) 1230 current_performance_risk: Optional[ 1231 Literal["High", "Low", "Medium", "VeryLow"] 1232 ] = Field(default=None, alias="currentPerformanceRisk") 1233 effective_recommendation_preferences: Optional[ 1234 EffectiveRecommendationPreferencesModel 1235 ] = Field(default=None, alias="effectiveRecommendationPreferences") 1236 inferred_workload_types: Optional[ 1237 List[ 1238 Literal[ 1239 "AmazonEmr", 1240 "ApacheCassandra", 1241 "ApacheHadoop", 1242 "Kafka", 1243 "Memcached", 1244 "Nginx", 1245 "PostgreSql", 1246 "Redis", 1247 ] 1248 ] 1249 ] = Field(default=None, alias="inferredWorkloadTypes") 1250 1251 1252class LambdaFunctionRecommendationModel(BaseModel): 1253 function_arn: Optional[str] = Field(default=None, alias="functionArn") 1254 function_version: Optional[str] = Field(default=None, alias="functionVersion") 1255 account_id: Optional[str] = Field(default=None, alias="accountId") 1256 current_memory_size: Optional[int] = Field(default=None, alias="currentMemorySize") 1257 number_of_invocations: Optional[int] = Field( 1258 default=None, alias="numberOfInvocations" 1259 ) 1260 utilization_metrics: Optional[List[LambdaFunctionUtilizationMetricModel]] = Field( 1261 default=None, alias="utilizationMetrics" 1262 ) 1263 lookback_period_in_days: Optional[float] = Field( 1264 default=None, alias="lookbackPeriodInDays" 1265 ) 1266 last_refresh_timestamp: Optional[datetime] = Field( 1267 default=None, alias="lastRefreshTimestamp" 1268 ) 1269 finding: Optional[Literal["NotOptimized", "Optimized", "Unavailable"]] = Field( 1270 default=None, alias="finding" 1271 ) 1272 finding_reason_codes: Optional[ 1273 List[ 1274 Literal[ 1275 "Inconclusive", 1276 "InsufficientData", 1277 "MemoryOverprovisioned", 1278 "MemoryUnderprovisioned", 1279 ] 1280 ] 1281 ] = Field(default=None, alias="findingReasonCodes") 1282 memory_size_recommendation_options: Optional[ 1283 List[LambdaFunctionMemoryRecommendationOptionModel] 1284 ] = Field(default=None, alias="memorySizeRecommendationOptions") 1285 current_performance_risk: Optional[ 1286 Literal["High", "Low", "Medium", "VeryLow"] 1287 ] = Field(default=None, alias="currentPerformanceRisk") 1288 1289 1290class VolumeRecommendationModel(BaseModel): 1291 volume_arn: Optional[str] = Field(default=None, alias="volumeArn") 1292 account_id: Optional[str] = Field(default=None, alias="accountId") 1293 current_configuration: Optional[VolumeConfigurationModel] = Field( 1294 default=None, alias="currentConfiguration" 1295 ) 1296 finding: Optional[Literal["NotOptimized", "Optimized"]] = Field( 1297 default=None, alias="finding" 1298 ) 1299 utilization_metrics: Optional[List[EBSUtilizationMetricModel]] = Field( 1300 default=None, alias="utilizationMetrics" 1301 ) 1302 look_back_period_in_days: Optional[float] = Field( 1303 default=None, alias="lookBackPeriodInDays" 1304 ) 1305 volume_recommendation_options: Optional[ 1306 List[VolumeRecommendationOptionModel] 1307 ] = Field(default=None, alias="volumeRecommendationOptions") 1308 last_refresh_timestamp: Optional[datetime] = Field( 1309 default=None, alias="lastRefreshTimestamp" 1310 ) 1311 current_performance_risk: Optional[ 1312 Literal["High", "Low", "Medium", "VeryLow"] 1313 ] = Field(default=None, alias="currentPerformanceRisk") 1314 1315 1316class DescribeRecommendationExportJobsResponseModel(BaseModel): 1317 recommendation_export_jobs: List[RecommendationExportJobModel] = Field( 1318 alias="recommendationExportJobs" 1319 ) 1320 next_token: str = Field(alias="nextToken") 1321 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1322 1323 1324class GetRecommendationSummariesResponseModel(BaseModel): 1325 next_token: str = Field(alias="nextToken") 1326 recommendation_summaries: List[RecommendationSummaryModel] = Field( 1327 alias="recommendationSummaries" 1328 ) 1329 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1330 1331 1332class GetAutoScalingGroupRecommendationsResponseModel(BaseModel): 1333 next_token: str = Field(alias="nextToken") 1334 auto_scaling_group_recommendations: List[ 1335 AutoScalingGroupRecommendationModel 1336 ] = Field(alias="autoScalingGroupRecommendations") 1337 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1338 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1339 1340 1341class GetECSServiceRecommendationsResponseModel(BaseModel): 1342 next_token: str = Field(alias="nextToken") 1343 ecs_service_recommendations: List[ECSServiceRecommendationModel] = Field( 1344 alias="ecsServiceRecommendations" 1345 ) 1346 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1347 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1348 1349 1350class GetEC2InstanceRecommendationsResponseModel(BaseModel): 1351 next_token: str = Field(alias="nextToken") 1352 instance_recommendations: List[InstanceRecommendationModel] = Field( 1353 alias="instanceRecommendations" 1354 ) 1355 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1356 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1357 1358 1359class GetLambdaFunctionRecommendationsResponseModel(BaseModel): 1360 next_token: str = Field(alias="nextToken") 1361 lambda_function_recommendations: List[LambdaFunctionRecommendationModel] = Field( 1362 alias="lambdaFunctionRecommendations" 1363 ) 1364 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata") 1365 1366 1367class GetEBSVolumeRecommendationsResponseModel(BaseModel): 1368 next_token: str = Field(alias="nextToken") 1369 volume_recommendations: List[VolumeRecommendationModel] = Field( 1370 alias="volumeRecommendations" 1371 ) 1372 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1373 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
14class AccountEnrollmentStatusModel(BaseModel): 15 account_id: Optional[str] = Field(default=None, alias="accountId") 16 status: Optional[Literal["Active", "Failed", "Inactive", "Pending"]] = Field( 17 default=None, alias="status" 18 ) 19 status_reason: Optional[str] = Field(default=None, alias="statusReason") 20 last_updated_timestamp: Optional[datetime] = Field( 21 default=None, alias="lastUpdatedTimestamp" 22 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
25class AutoScalingGroupConfigurationModel(BaseModel): 26 desired_capacity: Optional[int] = Field(default=None, alias="desiredCapacity") 27 min_size: Optional[int] = Field(default=None, alias="minSize") 28 max_size: Optional[int] = Field(default=None, alias="maxSize") 29 instance_type: Optional[str] = Field(default=None, alias="instanceType")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
32class UtilizationMetricModel(BaseModel): 33 name: Optional[ 34 Literal[ 35 "Cpu", 36 "DISK_READ_BYTES_PER_SECOND", 37 "DISK_READ_OPS_PER_SECOND", 38 "DISK_WRITE_BYTES_PER_SECOND", 39 "DISK_WRITE_OPS_PER_SECOND", 40 "EBS_READ_BYTES_PER_SECOND", 41 "EBS_READ_OPS_PER_SECOND", 42 "EBS_WRITE_BYTES_PER_SECOND", 43 "EBS_WRITE_OPS_PER_SECOND", 44 "Memory", 45 "NETWORK_IN_BYTES_PER_SECOND", 46 "NETWORK_OUT_BYTES_PER_SECOND", 47 "NETWORK_PACKETS_IN_PER_SECOND", 48 "NETWORK_PACKETS_OUT_PER_SECOND", 49 ] 50 ] = Field(default=None, alias="name") 51 statistic: Optional[Literal["Average", "Maximum"]] = Field( 52 default=None, alias="statistic" 53 ) 54 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
57class MemorySizeConfigurationModel(BaseModel): 58 memory: Optional[int] = Field(default=None, alias="memory") 59 memory_reservation: Optional[int] = Field(default=None, alias="memoryReservation")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
62class CurrentPerformanceRiskRatingsModel(BaseModel): 63 high: Optional[int] = Field(default=None, alias="high") 64 medium: Optional[int] = Field(default=None, alias="medium") 65 low: Optional[int] = Field(default=None, alias="low") 66 very_low: Optional[int] = Field(default=None, alias="veryLow")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
69class ScopeModel(BaseModel): 70 name: Optional[Literal["AccountId", "Organization", "ResourceArn"]] = Field( 71 default=None, alias="name" 72 ) 73 value: Optional[str] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
76class JobFilterModel(BaseModel): 77 name: Optional[Literal["JobStatus", "ResourceType"]] = Field( 78 default=None, alias="name" 79 ) 80 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
83class PaginatorConfigModel(BaseModel): 84 max_items: Optional[int] = Field(default=None, alias="MaxItems") 85 page_size: Optional[int] = Field(default=None, alias="PageSize") 86 starting_token: Optional[str] = Field(default=None, alias="StartingToken")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
89class ResponseMetadataModel(BaseModel): 90 request_id: str = Field(alias="RequestId") 91 host_id: str = Field(alias="HostId") 92 http_status_code: int = Field(alias="HTTPStatusCode") 93 http_headers: Dict[str, str] = Field(alias="HTTPHeaders") 94 retry_attempts: int = Field(alias="RetryAttempts")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
97class EBSFilterModel(BaseModel): 98 name: Optional[Literal["Finding"]] = Field(default=None, alias="name") 99 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
102class EBSUtilizationMetricModel(BaseModel): 103 name: Optional[ 104 Literal[ 105 "VolumeReadBytesPerSecond", 106 "VolumeReadOpsPerSecond", 107 "VolumeWriteBytesPerSecond", 108 "VolumeWriteOpsPerSecond", 109 ] 110 ] = Field(default=None, alias="name") 111 statistic: Optional[Literal["Average", "Maximum"]] = Field( 112 default=None, alias="statistic" 113 ) 114 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
117class ECSServiceProjectedMetricModel(BaseModel): 118 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 119 timestamps: Optional[List[datetime]] = Field(default=None, alias="timestamps") 120 upper_bound_values: Optional[List[float]] = Field( 121 default=None, alias="upperBoundValues" 122 ) 123 lower_bound_values: Optional[List[float]] = Field( 124 default=None, alias="lowerBoundValues" 125 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
128class ECSServiceProjectedUtilizationMetricModel(BaseModel): 129 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 130 statistic: Optional[Literal["Average", "Maximum"]] = Field( 131 default=None, alias="statistic" 132 ) 133 lower_bound_value: Optional[float] = Field(default=None, alias="lowerBoundValue") 134 upper_bound_value: Optional[float] = Field(default=None, alias="upperBoundValue")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
137class ECSServiceRecommendationFilterModel(BaseModel): 138 name: Optional[Literal["Finding", "FindingReasonCode"]] = Field( 139 default=None, alias="name" 140 ) 141 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
144class ECSServiceUtilizationMetricModel(BaseModel): 145 name: Optional[Literal["Cpu", "Memory"]] = Field(default=None, alias="name") 146 statistic: Optional[Literal["Average", "Maximum"]] = Field( 147 default=None, alias="statistic" 148 ) 149 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
152class ExternalMetricsPreferenceModel(BaseModel): 153 source: Optional[Literal["Datadog", "Dynatrace", "Instana", "NewRelic"]] = Field( 154 default=None, alias="source" 155 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
158class EnrollmentFilterModel(BaseModel): 159 name: Optional[Literal["Status"]] = Field(default=None, alias="name") 160 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
163class EstimatedMonthlySavingsModel(BaseModel): 164 currency: Optional[Literal["CNY", "USD"]] = Field(default=None, alias="currency") 165 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
168class FilterModel(BaseModel): 169 name: Optional[ 170 Literal["Finding", "FindingReasonCodes", "RecommendationSourceType"] 171 ] = Field(default=None, alias="name") 172 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
175class RecommendationPreferencesModel(BaseModel): 176 cpu_vendor_architectures: Optional[ 177 Sequence[Literal["AWS_ARM64", "CURRENT"]] 178 ] = Field(default=None, alias="cpuVendorArchitectures")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
181class S3DestinationConfigModel(BaseModel): 182 bucket: Optional[str] = Field(default=None, alias="bucket") 183 key_prefix: Optional[str] = Field(default=None, alias="keyPrefix")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
186class S3DestinationModel(BaseModel): 187 bucket: Optional[str] = Field(default=None, alias="bucket") 188 key: Optional[str] = Field(default=None, alias="key") 189 metadata_key: Optional[str] = Field(default=None, alias="metadataKey")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
192class LambdaFunctionRecommendationFilterModel(BaseModel): 193 name: Optional[Literal["Finding", "FindingReasonCode"]] = Field( 194 default=None, alias="name" 195 ) 196 values: Optional[Sequence[str]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
199class GetRecommendationErrorModel(BaseModel): 200 identifier: Optional[str] = Field(default=None, alias="identifier") 201 code: Optional[str] = Field(default=None, alias="code") 202 message: Optional[str] = Field(default=None, alias="message")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetECSServiceRecommendationProjectedMetricsRequestModel(mypydantic.models.base_model.BaseModel):
205class GetECSServiceRecommendationProjectedMetricsRequestModel(BaseModel): 206 service_arn: str = Field(alias="serviceArn") 207 stat: Literal["Average", "Maximum"] = Field(alias="stat") 208 period: int = Field(alias="period") 209 start_time: Union[datetime, str] = Field(alias="startTime") 210 end_time: Union[datetime, str] = Field(alias="endTime")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
213class GetEffectiveRecommendationPreferencesRequestModel(BaseModel): 214 resource_arn: str = Field(alias="resourceArn")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
217class GetRecommendationSummariesRequestModel(BaseModel): 218 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 219 next_token: Optional[str] = Field(default=None, alias="nextToken") 220 max_results: Optional[int] = Field(default=None, alias="maxResults")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
223class RecommendationSourceModel(BaseModel): 224 recommendation_source_arn: Optional[str] = Field( 225 default=None, alias="recommendationSourceArn" 226 ) 227 recommendation_source_type: Optional[ 228 Literal[ 229 "AutoScalingGroup", 230 "EbsVolume", 231 "Ec2Instance", 232 "EcsService", 233 "LambdaFunction", 234 ] 235 ] = Field(default=None, alias="recommendationSourceType")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
238class LambdaFunctionMemoryProjectedMetricModel(BaseModel): 239 name: Optional[Literal["Duration"]] = Field(default=None, alias="name") 240 statistic: Optional[Literal["Expected", "LowerBound", "UpperBound"]] = Field( 241 default=None, alias="statistic" 242 ) 243 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
246class LambdaFunctionUtilizationMetricModel(BaseModel): 247 name: Optional[Literal["Duration", "Memory"]] = Field(default=None, alias="name") 248 statistic: Optional[Literal["Average", "Maximum"]] = Field( 249 default=None, alias="statistic" 250 ) 251 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
254class ProjectedMetricModel(BaseModel): 255 name: Optional[ 256 Literal[ 257 "Cpu", 258 "DISK_READ_BYTES_PER_SECOND", 259 "DISK_READ_OPS_PER_SECOND", 260 "DISK_WRITE_BYTES_PER_SECOND", 261 "DISK_WRITE_OPS_PER_SECOND", 262 "EBS_READ_BYTES_PER_SECOND", 263 "EBS_READ_OPS_PER_SECOND", 264 "EBS_WRITE_BYTES_PER_SECOND", 265 "EBS_WRITE_OPS_PER_SECOND", 266 "Memory", 267 "NETWORK_IN_BYTES_PER_SECOND", 268 "NETWORK_OUT_BYTES_PER_SECOND", 269 "NETWORK_PACKETS_IN_PER_SECOND", 270 "NETWORK_PACKETS_OUT_PER_SECOND", 271 ] 272 ] = Field(default=None, alias="name") 273 timestamps: Optional[List[datetime]] = Field(default=None, alias="timestamps") 274 values: Optional[List[float]] = Field(default=None, alias="values")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
277class ReasonCodeSummaryModel(BaseModel): 278 name: Optional[Literal["MemoryOverprovisioned", "MemoryUnderprovisioned"]] = Field( 279 default=None, alias="name" 280 ) 281 value: Optional[float] = Field(default=None, alias="value")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
284class UpdateEnrollmentStatusRequestModel(BaseModel): 285 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 286 include_member_accounts: Optional[bool] = Field( 287 default=None, alias="includeMemberAccounts" 288 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
291class VolumeConfigurationModel(BaseModel): 292 volume_type: Optional[str] = Field(default=None, alias="volumeType") 293 volume_size: Optional[int] = Field(default=None, alias="volumeSize") 294 volume_baseline_iop_s: Optional[int] = Field( 295 default=None, alias="volumeBaselineIOPS" 296 ) 297 volume_burst_iop_s: Optional[int] = Field(default=None, alias="volumeBurstIOPS") 298 volume_baseline_throughput: Optional[int] = Field( 299 default=None, alias="volumeBaselineThroughput" 300 ) 301 volume_burst_throughput: Optional[int] = Field( 302 default=None, alias="volumeBurstThroughput" 303 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
306class ContainerConfigurationModel(BaseModel): 307 container_name: Optional[str] = Field(default=None, alias="containerName") 308 memory_size_configuration: Optional[MemorySizeConfigurationModel] = Field( 309 default=None, alias="memorySizeConfiguration" 310 ) 311 cpu: Optional[int] = Field(default=None, alias="cpu")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
314class ContainerRecommendationModel(BaseModel): 315 container_name: Optional[str] = Field(default=None, alias="containerName") 316 memory_size_configuration: Optional[MemorySizeConfigurationModel] = Field( 317 default=None, alias="memorySizeConfiguration" 318 ) 319 cpu: Optional[int] = Field(default=None, alias="cpu")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
322class DeleteRecommendationPreferencesRequestModel(BaseModel): 323 resource_type: Literal[ 324 "AutoScalingGroup", 325 "EbsVolume", 326 "Ec2Instance", 327 "EcsService", 328 "LambdaFunction", 329 "NotApplicable", 330 ] = Field(alias="resourceType") 331 recommendation_preference_names: Sequence[ 332 Literal[ 333 "EnhancedInfrastructureMetrics", 334 "ExternalMetricsPreference", 335 "InferredWorkloadTypes", 336 ] 337 ] = Field(alias="recommendationPreferenceNames") 338 scope: Optional[ScopeModel] = Field(default=None, alias="scope")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
341class GetRecommendationPreferencesRequestModel(BaseModel): 342 resource_type: Literal[ 343 "AutoScalingGroup", 344 "EbsVolume", 345 "Ec2Instance", 346 "EcsService", 347 "LambdaFunction", 348 "NotApplicable", 349 ] = Field(alias="resourceType") 350 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 351 next_token: Optional[str] = Field(default=None, alias="nextToken") 352 max_results: Optional[int] = Field(default=None, alias="maxResults")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
355class DescribeRecommendationExportJobsRequestModel(BaseModel): 356 job_ids: Optional[Sequence[str]] = Field(default=None, alias="jobIds") 357 filters: Optional[Sequence[JobFilterModel]] = Field(default=None, alias="filters") 358 next_token: Optional[str] = Field(default=None, alias="nextToken") 359 max_results: Optional[int] = Field(default=None, alias="maxResults")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
DescribeRecommendationExportJobsRequestDescribeRecommendationExportJobsPaginateModel(mypydantic.models.base_model.BaseModel):
362class DescribeRecommendationExportJobsRequestDescribeRecommendationExportJobsPaginateModel( 363 BaseModel 364): 365 job_ids: Optional[Sequence[str]] = Field(default=None, alias="jobIds") 366 filters: Optional[Sequence[JobFilterModel]] = Field(default=None, alias="filters") 367 pagination_config: Optional[PaginatorConfigModel] = Field( 368 default=None, alias="PaginationConfig" 369 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetRecommendationPreferencesRequestGetRecommendationPreferencesPaginateModel(mypydantic.models.base_model.BaseModel):
372class GetRecommendationPreferencesRequestGetRecommendationPreferencesPaginateModel( 373 BaseModel 374): 375 resource_type: Literal[ 376 "AutoScalingGroup", 377 "EbsVolume", 378 "Ec2Instance", 379 "EcsService", 380 "LambdaFunction", 381 "NotApplicable", 382 ] = Field(alias="resourceType") 383 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 384 pagination_config: Optional[PaginatorConfigModel] = Field( 385 default=None, alias="PaginationConfig" 386 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetRecommendationSummariesRequestGetRecommendationSummariesPaginateModel(mypydantic.models.base_model.BaseModel):
389class GetRecommendationSummariesRequestGetRecommendationSummariesPaginateModel( 390 BaseModel 391): 392 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 393 pagination_config: Optional[PaginatorConfigModel] = Field( 394 default=None, alias="PaginationConfig" 395 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
398class GetEnrollmentStatusResponseModel(BaseModel): 399 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 400 status_reason: str = Field(alias="statusReason") 401 member_accounts_enrolled: bool = Field(alias="memberAccountsEnrolled") 402 last_updated_timestamp: datetime = Field(alias="lastUpdatedTimestamp") 403 number_of_member_accounts_opted_in: int = Field( 404 alias="numberOfMemberAccountsOptedIn" 405 ) 406 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
409class GetEnrollmentStatusesForOrganizationResponseModel(BaseModel): 410 account_enrollment_statuses: List[AccountEnrollmentStatusModel] = Field( 411 alias="accountEnrollmentStatuses" 412 ) 413 next_token: str = Field(alias="nextToken") 414 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
417class UpdateEnrollmentStatusResponseModel(BaseModel): 418 status: Literal["Active", "Failed", "Inactive", "Pending"] = Field(alias="status") 419 status_reason: str = Field(alias="statusReason") 420 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
423class GetEBSVolumeRecommendationsRequestModel(BaseModel): 424 volume_arns: Optional[Sequence[str]] = Field(default=None, alias="volumeArns") 425 next_token: Optional[str] = Field(default=None, alias="nextToken") 426 max_results: Optional[int] = Field(default=None, alias="maxResults") 427 filters: Optional[Sequence[EBSFilterModel]] = Field(default=None, alias="filters") 428 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
431class ECSServiceRecommendedOptionProjectedMetricModel(BaseModel): 432 recommended_cpu_units: Optional[int] = Field( 433 default=None, alias="recommendedCpuUnits" 434 ) 435 recommended_memory_size: Optional[int] = Field( 436 default=None, alias="recommendedMemorySize" 437 ) 438 projected_metrics: Optional[List[ECSServiceProjectedMetricModel]] = Field( 439 default=None, alias="projectedMetrics" 440 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
443class GetECSServiceRecommendationsRequestModel(BaseModel): 444 service_arns: Optional[Sequence[str]] = Field(default=None, alias="serviceArns") 445 next_token: Optional[str] = Field(default=None, alias="nextToken") 446 max_results: Optional[int] = Field(default=None, alias="maxResults") 447 filters: Optional[Sequence[ECSServiceRecommendationFilterModel]] = Field( 448 default=None, alias="filters" 449 ) 450 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
453class EffectiveRecommendationPreferencesModel(BaseModel): 454 cpu_vendor_architectures: Optional[List[Literal["AWS_ARM64", "CURRENT"]]] = Field( 455 default=None, alias="cpuVendorArchitectures" 456 ) 457 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 458 default=None, alias="enhancedInfrastructureMetrics" 459 ) 460 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 461 default=None, alias="inferredWorkloadTypes" 462 ) 463 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 464 default=None, alias="externalMetricsPreference" 465 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
468class GetEffectiveRecommendationPreferencesResponseModel(BaseModel): 469 enhanced_infrastructure_metrics: Literal["Active", "Inactive"] = Field( 470 alias="enhancedInfrastructureMetrics" 471 ) 472 external_metrics_preference: ExternalMetricsPreferenceModel = Field( 473 alias="externalMetricsPreference" 474 ) 475 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
478class PutRecommendationPreferencesRequestModel(BaseModel): 479 resource_type: Literal[ 480 "AutoScalingGroup", 481 "EbsVolume", 482 "Ec2Instance", 483 "EcsService", 484 "LambdaFunction", 485 "NotApplicable", 486 ] = Field(alias="resourceType") 487 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 488 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 489 default=None, alias="enhancedInfrastructureMetrics" 490 ) 491 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 492 default=None, alias="inferredWorkloadTypes" 493 ) 494 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 495 default=None, alias="externalMetricsPreference" 496 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
499class RecommendationPreferencesDetailModel(BaseModel): 500 scope: Optional[ScopeModel] = Field(default=None, alias="scope") 501 resource_type: Optional[ 502 Literal[ 503 "AutoScalingGroup", 504 "EbsVolume", 505 "Ec2Instance", 506 "EcsService", 507 "LambdaFunction", 508 "NotApplicable", 509 ] 510 ] = Field(default=None, alias="resourceType") 511 enhanced_infrastructure_metrics: Optional[Literal["Active", "Inactive"]] = Field( 512 default=None, alias="enhancedInfrastructureMetrics" 513 ) 514 inferred_workload_types: Optional[Literal["Active", "Inactive"]] = Field( 515 default=None, alias="inferredWorkloadTypes" 516 ) 517 external_metrics_preference: Optional[ExternalMetricsPreferenceModel] = Field( 518 default=None, alias="externalMetricsPreference" 519 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetEnrollmentStatusesForOrganizationRequestGetEnrollmentStatusesForOrganizationPaginateModel(mypydantic.models.base_model.BaseModel):
522class GetEnrollmentStatusesForOrganizationRequestGetEnrollmentStatusesForOrganizationPaginateModel( 523 BaseModel 524): 525 filters: Optional[Sequence[EnrollmentFilterModel]] = Field( 526 default=None, alias="filters" 527 ) 528 pagination_config: Optional[PaginatorConfigModel] = Field( 529 default=None, alias="PaginationConfig" 530 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
533class GetEnrollmentStatusesForOrganizationRequestModel(BaseModel): 534 filters: Optional[Sequence[EnrollmentFilterModel]] = Field( 535 default=None, alias="filters" 536 ) 537 next_token: Optional[str] = Field(default=None, alias="nextToken") 538 max_results: Optional[int] = Field(default=None, alias="maxResults")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
541class SavingsOpportunityModel(BaseModel): 542 savings_opportunity_percentage: Optional[float] = Field( 543 default=None, alias="savingsOpportunityPercentage" 544 ) 545 estimated_monthly_savings: Optional[EstimatedMonthlySavingsModel] = Field( 546 default=None, alias="estimatedMonthlySavings" 547 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
550class GetAutoScalingGroupRecommendationsRequestModel(BaseModel): 551 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 552 auto_scaling_group_arns: Optional[Sequence[str]] = Field( 553 default=None, alias="autoScalingGroupArns" 554 ) 555 next_token: Optional[str] = Field(default=None, alias="nextToken") 556 max_results: Optional[int] = Field(default=None, alias="maxResults") 557 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 558 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 559 default=None, alias="recommendationPreferences" 560 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
563class GetEC2InstanceRecommendationsRequestModel(BaseModel): 564 instance_arns: Optional[Sequence[str]] = Field(default=None, alias="instanceArns") 565 next_token: Optional[str] = Field(default=None, alias="nextToken") 566 max_results: Optional[int] = Field(default=None, alias="maxResults") 567 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 568 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 569 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 570 default=None, alias="recommendationPreferences" 571 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
574class GetEC2RecommendationProjectedMetricsRequestModel(BaseModel): 575 instance_arn: str = Field(alias="instanceArn") 576 stat: Literal["Average", "Maximum"] = Field(alias="stat") 577 period: int = Field(alias="period") 578 start_time: Union[datetime, str] = Field(alias="startTime") 579 end_time: Union[datetime, str] = Field(alias="endTime") 580 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 581 default=None, alias="recommendationPreferences" 582 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
585class ExportAutoScalingGroupRecommendationsRequestModel(BaseModel): 586 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 587 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 588 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 589 fields_to_export: Optional[ 590 Sequence[ 591 Literal[ 592 "AccountId", 593 "AutoScalingGroupArn", 594 "AutoScalingGroupName", 595 "CurrentConfigurationDesiredCapacity", 596 "CurrentConfigurationInstanceType", 597 "CurrentConfigurationMaxSize", 598 "CurrentConfigurationMinSize", 599 "CurrentMemory", 600 "CurrentNetwork", 601 "CurrentOnDemandPrice", 602 "CurrentPerformanceRisk", 603 "CurrentStandardOneYearNoUpfrontReservedPrice", 604 "CurrentStandardThreeYearNoUpfrontReservedPrice", 605 "CurrentStorage", 606 "CurrentVCpus", 607 "EffectiveRecommendationPreferencesCpuVendorArchitectures", 608 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", 609 "EffectiveRecommendationPreferencesInferredWorkloadTypes", 610 "Finding", 611 "InferredWorkloadTypes", 612 "LastRefreshTimestamp", 613 "LookbackPeriodInDays", 614 "RecommendationOptionsConfigurationDesiredCapacity", 615 "RecommendationOptionsConfigurationInstanceType", 616 "RecommendationOptionsConfigurationMaxSize", 617 "RecommendationOptionsConfigurationMinSize", 618 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 619 "RecommendationOptionsEstimatedMonthlySavingsValue", 620 "RecommendationOptionsMemory", 621 "RecommendationOptionsMigrationEffort", 622 "RecommendationOptionsNetwork", 623 "RecommendationOptionsOnDemandPrice", 624 "RecommendationOptionsPerformanceRisk", 625 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 626 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 627 "RecommendationOptionsSavingsOpportunityPercentage", 628 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", 629 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", 630 "RecommendationOptionsStorage", 631 "RecommendationOptionsVcpus", 632 "UtilizationMetricsCpuMaximum", 633 "UtilizationMetricsDiskReadBytesPerSecondMaximum", 634 "UtilizationMetricsDiskReadOpsPerSecondMaximum", 635 "UtilizationMetricsDiskWriteBytesPerSecondMaximum", 636 "UtilizationMetricsDiskWriteOpsPerSecondMaximum", 637 "UtilizationMetricsEbsReadBytesPerSecondMaximum", 638 "UtilizationMetricsEbsReadOpsPerSecondMaximum", 639 "UtilizationMetricsEbsWriteBytesPerSecondMaximum", 640 "UtilizationMetricsEbsWriteOpsPerSecondMaximum", 641 "UtilizationMetricsMemoryMaximum", 642 "UtilizationMetricsNetworkInBytesPerSecondMaximum", 643 "UtilizationMetricsNetworkOutBytesPerSecondMaximum", 644 "UtilizationMetricsNetworkPacketsInPerSecondMaximum", 645 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum", 646 ] 647 ] 648 ] = Field(default=None, alias="fieldsToExport") 649 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 650 include_member_accounts: Optional[bool] = Field( 651 default=None, alias="includeMemberAccounts" 652 ) 653 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 654 default=None, alias="recommendationPreferences" 655 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
658class ExportEBSVolumeRecommendationsRequestModel(BaseModel): 659 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 660 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 661 filters: Optional[Sequence[EBSFilterModel]] = Field(default=None, alias="filters") 662 fields_to_export: Optional[ 663 Sequence[ 664 Literal[ 665 "AccountId", 666 "CurrentConfigurationVolumeBaselineIOPS", 667 "CurrentConfigurationVolumeBaselineThroughput", 668 "CurrentConfigurationVolumeBurstIOPS", 669 "CurrentConfigurationVolumeBurstThroughput", 670 "CurrentConfigurationVolumeSize", 671 "CurrentConfigurationVolumeType", 672 "CurrentMonthlyPrice", 673 "CurrentPerformanceRisk", 674 "Finding", 675 "LastRefreshTimestamp", 676 "LookbackPeriodInDays", 677 "RecommendationOptionsConfigurationVolumeBaselineIOPS", 678 "RecommendationOptionsConfigurationVolumeBaselineThroughput", 679 "RecommendationOptionsConfigurationVolumeBurstIOPS", 680 "RecommendationOptionsConfigurationVolumeBurstThroughput", 681 "RecommendationOptionsConfigurationVolumeSize", 682 "RecommendationOptionsConfigurationVolumeType", 683 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 684 "RecommendationOptionsEstimatedMonthlySavingsValue", 685 "RecommendationOptionsMonthlyPrice", 686 "RecommendationOptionsPerformanceRisk", 687 "RecommendationOptionsSavingsOpportunityPercentage", 688 "UtilizationMetricsVolumeReadBytesPerSecondMaximum", 689 "UtilizationMetricsVolumeReadOpsPerSecondMaximum", 690 "UtilizationMetricsVolumeWriteBytesPerSecondMaximum", 691 "UtilizationMetricsVolumeWriteOpsPerSecondMaximum", 692 "VolumeArn", 693 ] 694 ] 695 ] = Field(default=None, alias="fieldsToExport") 696 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 697 include_member_accounts: Optional[bool] = Field( 698 default=None, alias="includeMemberAccounts" 699 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
702class ExportEC2InstanceRecommendationsRequestModel(BaseModel): 703 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 704 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 705 filters: Optional[Sequence[FilterModel]] = Field(default=None, alias="filters") 706 fields_to_export: Optional[ 707 Sequence[ 708 Literal[ 709 "AccountId", 710 "CurrentInstanceType", 711 "CurrentMemory", 712 "CurrentNetwork", 713 "CurrentOnDemandPrice", 714 "CurrentPerformanceRisk", 715 "CurrentStandardOneYearNoUpfrontReservedPrice", 716 "CurrentStandardThreeYearNoUpfrontReservedPrice", 717 "CurrentStorage", 718 "CurrentVCpus", 719 "EffectiveRecommendationPreferencesCpuVendorArchitectures", 720 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", 721 "EffectiveRecommendationPreferencesExternalMetricsSource", 722 "EffectiveRecommendationPreferencesInferredWorkloadTypes", 723 "Finding", 724 "FindingReasonCodes", 725 "InferredWorkloadTypes", 726 "InstanceArn", 727 "InstanceName", 728 "LastRefreshTimestamp", 729 "LookbackPeriodInDays", 730 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 731 "RecommendationOptionsEstimatedMonthlySavingsValue", 732 "RecommendationOptionsInstanceType", 733 "RecommendationOptionsMemory", 734 "RecommendationOptionsMigrationEffort", 735 "RecommendationOptionsNetwork", 736 "RecommendationOptionsOnDemandPrice", 737 "RecommendationOptionsPerformanceRisk", 738 "RecommendationOptionsPlatformDifferences", 739 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 740 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 741 "RecommendationOptionsSavingsOpportunityPercentage", 742 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", 743 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", 744 "RecommendationOptionsStorage", 745 "RecommendationOptionsVcpus", 746 "RecommendationsSourcesRecommendationSourceArn", 747 "RecommendationsSourcesRecommendationSourceType", 748 "UtilizationMetricsCpuMaximum", 749 "UtilizationMetricsDiskReadBytesPerSecondMaximum", 750 "UtilizationMetricsDiskReadOpsPerSecondMaximum", 751 "UtilizationMetricsDiskWriteBytesPerSecondMaximum", 752 "UtilizationMetricsDiskWriteOpsPerSecondMaximum", 753 "UtilizationMetricsEbsReadBytesPerSecondMaximum", 754 "UtilizationMetricsEbsReadOpsPerSecondMaximum", 755 "UtilizationMetricsEbsWriteBytesPerSecondMaximum", 756 "UtilizationMetricsEbsWriteOpsPerSecondMaximum", 757 "UtilizationMetricsMemoryMaximum", 758 "UtilizationMetricsNetworkInBytesPerSecondMaximum", 759 "UtilizationMetricsNetworkOutBytesPerSecondMaximum", 760 "UtilizationMetricsNetworkPacketsInPerSecondMaximum", 761 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum", 762 ] 763 ] 764 ] = Field(default=None, alias="fieldsToExport") 765 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 766 include_member_accounts: Optional[bool] = Field( 767 default=None, alias="includeMemberAccounts" 768 ) 769 recommendation_preferences: Optional[RecommendationPreferencesModel] = Field( 770 default=None, alias="recommendationPreferences" 771 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
774class ExportECSServiceRecommendationsRequestModel(BaseModel): 775 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 776 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 777 filters: Optional[Sequence[ECSServiceRecommendationFilterModel]] = Field( 778 default=None, alias="filters" 779 ) 780 fields_to_export: Optional[ 781 Sequence[ 782 Literal[ 783 "AccountId", 784 "CurrentPerformanceRisk", 785 "CurrentServiceConfigurationAutoScalingConfiguration", 786 "CurrentServiceConfigurationCpu", 787 "CurrentServiceConfigurationMemory", 788 "CurrentServiceConfigurationTaskDefinitionArn", 789 "CurrentServiceContainerConfigurations", 790 "Finding", 791 "FindingReasonCodes", 792 "LastRefreshTimestamp", 793 "LaunchType", 794 "LookbackPeriodInDays", 795 "RecommendationOptionsContainerRecommendations", 796 "RecommendationOptionsCpu", 797 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 798 "RecommendationOptionsEstimatedMonthlySavingsValue", 799 "RecommendationOptionsMemory", 800 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", 801 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", 802 "RecommendationOptionsSavingsOpportunityPercentage", 803 "ServiceArn", 804 "UtilizationMetricsCpuMaximum", 805 "UtilizationMetricsMemoryMaximum", 806 ] 807 ] 808 ] = Field(default=None, alias="fieldsToExport") 809 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 810 include_member_accounts: Optional[bool] = Field( 811 default=None, alias="includeMemberAccounts" 812 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
815class ExportAutoScalingGroupRecommendationsResponseModel(BaseModel): 816 job_id: str = Field(alias="jobId") 817 s3_destination: S3DestinationModel = Field(alias="s3Destination") 818 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
821class ExportDestinationModel(BaseModel): 822 s3: Optional[S3DestinationModel] = Field(default=None, alias="s3")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
825class ExportEBSVolumeRecommendationsResponseModel(BaseModel): 826 job_id: str = Field(alias="jobId") 827 s3_destination: S3DestinationModel = Field(alias="s3Destination") 828 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
831class ExportEC2InstanceRecommendationsResponseModel(BaseModel): 832 job_id: str = Field(alias="jobId") 833 s3_destination: S3DestinationModel = Field(alias="s3Destination") 834 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
837class ExportECSServiceRecommendationsResponseModel(BaseModel): 838 job_id: str = Field(alias="jobId") 839 s3_destination: S3DestinationModel = Field(alias="s3Destination") 840 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
843class ExportLambdaFunctionRecommendationsResponseModel(BaseModel): 844 job_id: str = Field(alias="jobId") 845 s3_destination: S3DestinationModel = Field(alias="s3Destination") 846 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
849class ExportLambdaFunctionRecommendationsRequestModel(BaseModel): 850 s3_destination_config: S3DestinationConfigModel = Field(alias="s3DestinationConfig") 851 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 852 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 853 default=None, alias="filters" 854 ) 855 fields_to_export: Optional[ 856 Sequence[ 857 Literal[ 858 "AccountId", 859 "CurrentConfigurationMemorySize", 860 "CurrentConfigurationTimeout", 861 "CurrentCostAverage", 862 "CurrentCostTotal", 863 "CurrentPerformanceRisk", 864 "Finding", 865 "FindingReasonCodes", 866 "FunctionArn", 867 "FunctionVersion", 868 "LastRefreshTimestamp", 869 "LookbackPeriodInDays", 870 "NumberOfInvocations", 871 "RecommendationOptionsConfigurationMemorySize", 872 "RecommendationOptionsCostHigh", 873 "RecommendationOptionsCostLow", 874 "RecommendationOptionsEstimatedMonthlySavingsCurrency", 875 "RecommendationOptionsEstimatedMonthlySavingsValue", 876 "RecommendationOptionsProjectedUtilizationMetricsDurationExpected", 877 "RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound", 878 "RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound", 879 "RecommendationOptionsSavingsOpportunityPercentage", 880 "UtilizationMetricsDurationAverage", 881 "UtilizationMetricsDurationMaximum", 882 "UtilizationMetricsMemoryAverage", 883 "UtilizationMetricsMemoryMaximum", 884 ] 885 ] 886 ] = Field(default=None, alias="fieldsToExport") 887 file_format: Optional[Literal["Csv"]] = Field(default=None, alias="fileFormat") 888 include_member_accounts: Optional[bool] = Field( 889 default=None, alias="includeMemberAccounts" 890 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetLambdaFunctionRecommendationsRequestGetLambdaFunctionRecommendationsPaginateModel(mypydantic.models.base_model.BaseModel):
893class GetLambdaFunctionRecommendationsRequestGetLambdaFunctionRecommendationsPaginateModel( 894 BaseModel 895): 896 function_arns: Optional[Sequence[str]] = Field(default=None, alias="functionArns") 897 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 898 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 899 default=None, alias="filters" 900 ) 901 pagination_config: Optional[PaginatorConfigModel] = Field( 902 default=None, alias="PaginationConfig" 903 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
906class GetLambdaFunctionRecommendationsRequestModel(BaseModel): 907 function_arns: Optional[Sequence[str]] = Field(default=None, alias="functionArns") 908 account_ids: Optional[Sequence[str]] = Field(default=None, alias="accountIds") 909 filters: Optional[Sequence[LambdaFunctionRecommendationFilterModel]] = Field( 910 default=None, alias="filters" 911 ) 912 next_token: Optional[str] = Field(default=None, alias="nextToken") 913 max_results: Optional[int] = Field(default=None, alias="maxResults")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
916class RecommendedOptionProjectedMetricModel(BaseModel): 917 recommended_instance_type: Optional[str] = Field( 918 default=None, alias="recommendedInstanceType" 919 ) 920 rank: Optional[int] = Field(default=None, alias="rank") 921 projected_metrics: Optional[List[ProjectedMetricModel]] = Field( 922 default=None, alias="projectedMetrics" 923 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
926class SummaryModel(BaseModel): 927 name: Optional[ 928 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 929 ] = Field(default=None, alias="name") 930 value: Optional[float] = Field(default=None, alias="value") 931 reason_code_summaries: Optional[List[ReasonCodeSummaryModel]] = Field( 932 default=None, alias="reasonCodeSummaries" 933 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
936class ServiceConfigurationModel(BaseModel): 937 memory: Optional[int] = Field(default=None, alias="memory") 938 cpu: Optional[int] = Field(default=None, alias="cpu") 939 container_configurations: Optional[List[ContainerConfigurationModel]] = Field( 940 default=None, alias="containerConfigurations" 941 ) 942 auto_scaling_configuration: Optional[ 943 Literal["TargetTrackingScalingCpu", "TargetTrackingScalingMemory"] 944 ] = Field(default=None, alias="autoScalingConfiguration") 945 task_definition_arn: Optional[str] = Field(default=None, alias="taskDefinitionArn")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
class
GetECSServiceRecommendationProjectedMetricsResponseModel(mypydantic.models.base_model.BaseModel):
948class GetECSServiceRecommendationProjectedMetricsResponseModel(BaseModel): 949 recommended_option_projected_metrics: List[ 950 ECSServiceRecommendedOptionProjectedMetricModel 951 ] = Field(alias="recommendedOptionProjectedMetrics") 952 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
955class GetRecommendationPreferencesResponseModel(BaseModel): 956 next_token: str = Field(alias="nextToken") 957 recommendation_preferences_details: List[ 958 RecommendationPreferencesDetailModel 959 ] = Field(alias="recommendationPreferencesDetails") 960 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
963class AutoScalingGroupRecommendationOptionModel(BaseModel): 964 configuration: Optional[AutoScalingGroupConfigurationModel] = Field( 965 default=None, alias="configuration" 966 ) 967 projected_utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 968 default=None, alias="projectedUtilizationMetrics" 969 ) 970 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 971 rank: Optional[int] = Field(default=None, alias="rank") 972 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 973 default=None, alias="savingsOpportunity" 974 ) 975 migration_effort: Optional[Literal["High", "Low", "Medium", "VeryLow"]] = Field( 976 default=None, alias="migrationEffort" 977 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
980class ECSServiceRecommendationOptionModel(BaseModel): 981 memory: Optional[int] = Field(default=None, alias="memory") 982 cpu: Optional[int] = Field(default=None, alias="cpu") 983 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 984 default=None, alias="savingsOpportunity" 985 ) 986 projected_utilization_metrics: Optional[ 987 List[ECSServiceProjectedUtilizationMetricModel] 988 ] = Field(default=None, alias="projectedUtilizationMetrics") 989 container_recommendations: Optional[List[ContainerRecommendationModel]] = Field( 990 default=None, alias="containerRecommendations" 991 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
994class InstanceRecommendationOptionModel(BaseModel): 995 instance_type: Optional[str] = Field(default=None, alias="instanceType") 996 projected_utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 997 default=None, alias="projectedUtilizationMetrics" 998 ) 999 platform_differences: Optional[ 1000 List[ 1001 Literal[ 1002 "Architecture", 1003 "Hypervisor", 1004 "InstanceStoreAvailability", 1005 "NetworkInterface", 1006 "StorageInterface", 1007 "VirtualizationType", 1008 ] 1009 ] 1010 ] = Field(default=None, alias="platformDifferences") 1011 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 1012 rank: Optional[int] = Field(default=None, alias="rank") 1013 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1014 default=None, alias="savingsOpportunity" 1015 ) 1016 migration_effort: Optional[Literal["High", "Low", "Medium", "VeryLow"]] = Field( 1017 default=None, alias="migrationEffort" 1018 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1021class LambdaFunctionMemoryRecommendationOptionModel(BaseModel): 1022 rank: Optional[int] = Field(default=None, alias="rank") 1023 memory_size: Optional[int] = Field(default=None, alias="memorySize") 1024 projected_utilization_metrics: Optional[ 1025 List[LambdaFunctionMemoryProjectedMetricModel] 1026 ] = Field(default=None, alias="projectedUtilizationMetrics") 1027 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1028 default=None, alias="savingsOpportunity" 1029 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1032class VolumeRecommendationOptionModel(BaseModel): 1033 configuration: Optional[VolumeConfigurationModel] = Field( 1034 default=None, alias="configuration" 1035 ) 1036 performance_risk: Optional[float] = Field(default=None, alias="performanceRisk") 1037 rank: Optional[int] = Field(default=None, alias="rank") 1038 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1039 default=None, alias="savingsOpportunity" 1040 )
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1043class RecommendationExportJobModel(BaseModel): 1044 job_id: Optional[str] = Field(default=None, alias="jobId") 1045 destination: Optional[ExportDestinationModel] = Field( 1046 default=None, alias="destination" 1047 ) 1048 resource_type: Optional[ 1049 Literal[ 1050 "AutoScalingGroup", 1051 "EbsVolume", 1052 "Ec2Instance", 1053 "EcsService", 1054 "LambdaFunction", 1055 "NotApplicable", 1056 ] 1057 ] = Field(default=None, alias="resourceType") 1058 status: Optional[Literal["Complete", "Failed", "InProgress", "Queued"]] = Field( 1059 default=None, alias="status" 1060 ) 1061 creation_timestamp: Optional[datetime] = Field( 1062 default=None, alias="creationTimestamp" 1063 ) 1064 last_updated_timestamp: Optional[datetime] = Field( 1065 default=None, alias="lastUpdatedTimestamp" 1066 ) 1067 failure_reason: Optional[str] = Field(default=None, alias="failureReason")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1070class GetEC2RecommendationProjectedMetricsResponseModel(BaseModel): 1071 recommended_option_projected_metrics: List[ 1072 RecommendedOptionProjectedMetricModel 1073 ] = Field(alias="recommendedOptionProjectedMetrics") 1074 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1077class RecommendationSummaryModel(BaseModel): 1078 summaries: Optional[List[SummaryModel]] = Field(default=None, alias="summaries") 1079 recommendation_resource_type: Optional[ 1080 Literal[ 1081 "AutoScalingGroup", 1082 "EbsVolume", 1083 "Ec2Instance", 1084 "EcsService", 1085 "LambdaFunction", 1086 ] 1087 ] = Field(default=None, alias="recommendationResourceType") 1088 account_id: Optional[str] = Field(default=None, alias="accountId") 1089 savings_opportunity: Optional[SavingsOpportunityModel] = Field( 1090 default=None, alias="savingsOpportunity" 1091 ) 1092 current_performance_risk_ratings: Optional[ 1093 CurrentPerformanceRiskRatingsModel 1094 ] = Field(default=None, alias="currentPerformanceRiskRatings")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1097class AutoScalingGroupRecommendationModel(BaseModel): 1098 account_id: Optional[str] = Field(default=None, alias="accountId") 1099 auto_scaling_group_arn: Optional[str] = Field( 1100 default=None, alias="autoScalingGroupArn" 1101 ) 1102 auto_scaling_group_name: Optional[str] = Field( 1103 default=None, alias="autoScalingGroupName" 1104 ) 1105 finding: Optional[ 1106 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 1107 ] = Field(default=None, alias="finding") 1108 utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 1109 default=None, alias="utilizationMetrics" 1110 ) 1111 look_back_period_in_days: Optional[float] = Field( 1112 default=None, alias="lookBackPeriodInDays" 1113 ) 1114 current_configuration: Optional[AutoScalingGroupConfigurationModel] = Field( 1115 default=None, alias="currentConfiguration" 1116 ) 1117 recommendation_options: Optional[ 1118 List[AutoScalingGroupRecommendationOptionModel] 1119 ] = Field(default=None, alias="recommendationOptions") 1120 last_refresh_timestamp: Optional[datetime] = Field( 1121 default=None, alias="lastRefreshTimestamp" 1122 ) 1123 current_performance_risk: Optional[ 1124 Literal["High", "Low", "Medium", "VeryLow"] 1125 ] = Field(default=None, alias="currentPerformanceRisk") 1126 effective_recommendation_preferences: Optional[ 1127 EffectiveRecommendationPreferencesModel 1128 ] = Field(default=None, alias="effectiveRecommendationPreferences") 1129 inferred_workload_types: Optional[ 1130 List[ 1131 Literal[ 1132 "AmazonEmr", 1133 "ApacheCassandra", 1134 "ApacheHadoop", 1135 "Kafka", 1136 "Memcached", 1137 "Nginx", 1138 "PostgreSql", 1139 "Redis", 1140 ] 1141 ] 1142 ] = Field(default=None, alias="inferredWorkloadTypes")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1145class ECSServiceRecommendationModel(BaseModel): 1146 service_arn: Optional[str] = Field(default=None, alias="serviceArn") 1147 account_id: Optional[str] = Field(default=None, alias="accountId") 1148 current_service_configuration: Optional[ServiceConfigurationModel] = Field( 1149 default=None, alias="currentServiceConfiguration" 1150 ) 1151 utilization_metrics: Optional[List[ECSServiceUtilizationMetricModel]] = Field( 1152 default=None, alias="utilizationMetrics" 1153 ) 1154 lookback_period_in_days: Optional[float] = Field( 1155 default=None, alias="lookbackPeriodInDays" 1156 ) 1157 launch_type: Optional[Literal["EC2", "Fargate"]] = Field( 1158 default=None, alias="launchType" 1159 ) 1160 last_refresh_timestamp: Optional[datetime] = Field( 1161 default=None, alias="lastRefreshTimestamp" 1162 ) 1163 finding: Optional[ 1164 Literal["Optimized", "Overprovisioned", "Underprovisioned"] 1165 ] = Field(default=None, alias="finding") 1166 finding_reason_codes: Optional[ 1167 List[ 1168 Literal[ 1169 "CPUOverprovisioned", 1170 "CPUUnderprovisioned", 1171 "MemoryOverprovisioned", 1172 "MemoryUnderprovisioned", 1173 ] 1174 ] 1175 ] = Field(default=None, alias="findingReasonCodes") 1176 service_recommendation_options: Optional[ 1177 List[ECSServiceRecommendationOptionModel] 1178 ] = Field(default=None, alias="serviceRecommendationOptions") 1179 current_performance_risk: Optional[ 1180 Literal["High", "Low", "Medium", "VeryLow"] 1181 ] = Field(default=None, alias="currentPerformanceRisk")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1184class InstanceRecommendationModel(BaseModel): 1185 instance_arn: Optional[str] = Field(default=None, alias="instanceArn") 1186 account_id: Optional[str] = Field(default=None, alias="accountId") 1187 instance_name: Optional[str] = Field(default=None, alias="instanceName") 1188 current_instance_type: Optional[str] = Field( 1189 default=None, alias="currentInstanceType" 1190 ) 1191 finding: Optional[ 1192 Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] 1193 ] = Field(default=None, alias="finding") 1194 finding_reason_codes: Optional[ 1195 List[ 1196 Literal[ 1197 "CPUOverprovisioned", 1198 "CPUUnderprovisioned", 1199 "DiskIOPSOverprovisioned", 1200 "DiskIOPSUnderprovisioned", 1201 "DiskThroughputOverprovisioned", 1202 "DiskThroughputUnderprovisioned", 1203 "EBSIOPSOverprovisioned", 1204 "EBSIOPSUnderprovisioned", 1205 "EBSThroughputOverprovisioned", 1206 "EBSThroughputUnderprovisioned", 1207 "MemoryOverprovisioned", 1208 "MemoryUnderprovisioned", 1209 "NetworkBandwidthOverprovisioned", 1210 "NetworkBandwidthUnderprovisioned", 1211 "NetworkPPSOverprovisioned", 1212 "NetworkPPSUnderprovisioned", 1213 ] 1214 ] 1215 ] = Field(default=None, alias="findingReasonCodes") 1216 utilization_metrics: Optional[List[UtilizationMetricModel]] = Field( 1217 default=None, alias="utilizationMetrics" 1218 ) 1219 look_back_period_in_days: Optional[float] = Field( 1220 default=None, alias="lookBackPeriodInDays" 1221 ) 1222 recommendation_options: Optional[List[InstanceRecommendationOptionModel]] = Field( 1223 default=None, alias="recommendationOptions" 1224 ) 1225 recommendation_sources: Optional[List[RecommendationSourceModel]] = Field( 1226 default=None, alias="recommendationSources" 1227 ) 1228 last_refresh_timestamp: Optional[datetime] = Field( 1229 default=None, alias="lastRefreshTimestamp" 1230 ) 1231 current_performance_risk: Optional[ 1232 Literal["High", "Low", "Medium", "VeryLow"] 1233 ] = Field(default=None, alias="currentPerformanceRisk") 1234 effective_recommendation_preferences: Optional[ 1235 EffectiveRecommendationPreferencesModel 1236 ] = Field(default=None, alias="effectiveRecommendationPreferences") 1237 inferred_workload_types: Optional[ 1238 List[ 1239 Literal[ 1240 "AmazonEmr", 1241 "ApacheCassandra", 1242 "ApacheHadoop", 1243 "Kafka", 1244 "Memcached", 1245 "Nginx", 1246 "PostgreSql", 1247 "Redis", 1248 ] 1249 ] 1250 ] = Field(default=None, alias="inferredWorkloadTypes")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1253class LambdaFunctionRecommendationModel(BaseModel): 1254 function_arn: Optional[str] = Field(default=None, alias="functionArn") 1255 function_version: Optional[str] = Field(default=None, alias="functionVersion") 1256 account_id: Optional[str] = Field(default=None, alias="accountId") 1257 current_memory_size: Optional[int] = Field(default=None, alias="currentMemorySize") 1258 number_of_invocations: Optional[int] = Field( 1259 default=None, alias="numberOfInvocations" 1260 ) 1261 utilization_metrics: Optional[List[LambdaFunctionUtilizationMetricModel]] = Field( 1262 default=None, alias="utilizationMetrics" 1263 ) 1264 lookback_period_in_days: Optional[float] = Field( 1265 default=None, alias="lookbackPeriodInDays" 1266 ) 1267 last_refresh_timestamp: Optional[datetime] = Field( 1268 default=None, alias="lastRefreshTimestamp" 1269 ) 1270 finding: Optional[Literal["NotOptimized", "Optimized", "Unavailable"]] = Field( 1271 default=None, alias="finding" 1272 ) 1273 finding_reason_codes: Optional[ 1274 List[ 1275 Literal[ 1276 "Inconclusive", 1277 "InsufficientData", 1278 "MemoryOverprovisioned", 1279 "MemoryUnderprovisioned", 1280 ] 1281 ] 1282 ] = Field(default=None, alias="findingReasonCodes") 1283 memory_size_recommendation_options: Optional[ 1284 List[LambdaFunctionMemoryRecommendationOptionModel] 1285 ] = Field(default=None, alias="memorySizeRecommendationOptions") 1286 current_performance_risk: Optional[ 1287 Literal["High", "Low", "Medium", "VeryLow"] 1288 ] = Field(default=None, alias="currentPerformanceRisk")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1291class VolumeRecommendationModel(BaseModel): 1292 volume_arn: Optional[str] = Field(default=None, alias="volumeArn") 1293 account_id: Optional[str] = Field(default=None, alias="accountId") 1294 current_configuration: Optional[VolumeConfigurationModel] = Field( 1295 default=None, alias="currentConfiguration" 1296 ) 1297 finding: Optional[Literal["NotOptimized", "Optimized"]] = Field( 1298 default=None, alias="finding" 1299 ) 1300 utilization_metrics: Optional[List[EBSUtilizationMetricModel]] = Field( 1301 default=None, alias="utilizationMetrics" 1302 ) 1303 look_back_period_in_days: Optional[float] = Field( 1304 default=None, alias="lookBackPeriodInDays" 1305 ) 1306 volume_recommendation_options: Optional[ 1307 List[VolumeRecommendationOptionModel] 1308 ] = Field(default=None, alias="volumeRecommendationOptions") 1309 last_refresh_timestamp: Optional[datetime] = Field( 1310 default=None, alias="lastRefreshTimestamp" 1311 ) 1312 current_performance_risk: Optional[ 1313 Literal["High", "Low", "Medium", "VeryLow"] 1314 ] = Field(default=None, alias="currentPerformanceRisk")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1317class DescribeRecommendationExportJobsResponseModel(BaseModel): 1318 recommendation_export_jobs: List[RecommendationExportJobModel] = Field( 1319 alias="recommendationExportJobs" 1320 ) 1321 next_token: str = Field(alias="nextToken") 1322 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1325class GetRecommendationSummariesResponseModel(BaseModel): 1326 next_token: str = Field(alias="nextToken") 1327 recommendation_summaries: List[RecommendationSummaryModel] = Field( 1328 alias="recommendationSummaries" 1329 ) 1330 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1333class GetAutoScalingGroupRecommendationsResponseModel(BaseModel): 1334 next_token: str = Field(alias="nextToken") 1335 auto_scaling_group_recommendations: List[ 1336 AutoScalingGroupRecommendationModel 1337 ] = Field(alias="autoScalingGroupRecommendations") 1338 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1339 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1342class GetECSServiceRecommendationsResponseModel(BaseModel): 1343 next_token: str = Field(alias="nextToken") 1344 ecs_service_recommendations: List[ECSServiceRecommendationModel] = Field( 1345 alias="ecsServiceRecommendations" 1346 ) 1347 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1348 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1351class GetEC2InstanceRecommendationsResponseModel(BaseModel): 1352 next_token: str = Field(alias="nextToken") 1353 instance_recommendations: List[InstanceRecommendationModel] = Field( 1354 alias="instanceRecommendations" 1355 ) 1356 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1357 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1360class GetLambdaFunctionRecommendationsResponseModel(BaseModel): 1361 next_token: str = Field(alias="nextToken") 1362 lambda_function_recommendations: List[LambdaFunctionRecommendationModel] = Field( 1363 alias="lambdaFunctionRecommendations" 1364 ) 1365 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs
1368class GetEBSVolumeRecommendationsResponseModel(BaseModel): 1369 next_token: str = Field(alias="nextToken") 1370 volume_recommendations: List[VolumeRecommendationModel] = Field( 1371 alias="volumeRecommendations" 1372 ) 1373 errors: List[GetRecommendationErrorModel] = Field(alias="errors") 1374 response_metadata: ResponseMetadataModel = Field(alias="ResponseMetadata")
Inherited Members
- pydantic.main.BaseModel
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs