aws-cdk-lib 2.167.2__py3-none-any.whl → 2.168.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +2081 -0
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.167.2.jsii.tgz → aws-cdk-lib@2.168.0.jsii.tgz} +0 -0
- aws_cdk/aws_applicationautoscaling/__init__.py +1691 -95
- aws_cdk/aws_applicationinsights/__init__.py +41 -0
- aws_cdk/aws_applicationsignals/__init__.py +117 -0
- aws_cdk/aws_autoscaling/__init__.py +441 -6
- aws_cdk/aws_batch/__init__.py +202 -5
- aws_cdk/aws_bedrock/__init__.py +12 -12
- aws_cdk/aws_cleanrooms/__init__.py +17 -8
- aws_cdk/aws_cloudformation/__init__.py +2571 -492
- aws_cdk/aws_cloudfront/__init__.py +231 -0
- aws_cdk/aws_cloudfront/experimental/__init__.py +5 -0
- aws_cdk/aws_cloudfront_origins/__init__.py +714 -132
- aws_cdk/aws_cloudtrail/__init__.py +52 -14
- aws_cdk/aws_codebuild/__init__.py +668 -2
- aws_cdk/aws_connectcampaignsv2/__init__.py +3376 -0
- aws_cdk/aws_dynamodb/__init__.py +332 -11
- aws_cdk/aws_ec2/__init__.py +13 -4
- aws_cdk/aws_ecs/__init__.py +213 -0
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +160 -11
- aws_cdk/aws_fis/__init__.py +495 -0
- aws_cdk/aws_gamelift/__init__.py +3101 -1135
- aws_cdk/aws_kinesisfirehose/__init__.py +696 -5
- aws_cdk/aws_lambda/__init__.py +634 -259
- aws_cdk/aws_lambda_destinations/__init__.py +73 -0
- aws_cdk/aws_lambda_event_sources/__init__.py +102 -2
- aws_cdk/aws_location/__init__.py +18 -18
- aws_cdk/aws_mediastore/__init__.py +22 -10
- aws_cdk/aws_opensearchservice/__init__.py +6 -0
- aws_cdk/aws_quicksight/__init__.py +35 -19
- aws_cdk/aws_rds/__init__.py +51 -3
- aws_cdk/aws_securityhub/__init__.py +11 -14
- aws_cdk/aws_ses/__init__.py +58 -5
- aws_cdk/aws_stepfunctions_tasks/__init__.py +1601 -8
- aws_cdk/aws_transfer/__init__.py +0 -8
- aws_cdk/aws_vpclattice/__init__.py +39 -0
- aws_cdk/aws_wisdom/__init__.py +134 -85
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/RECORD +44 -43
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/top_level.txt +0 -0
|
@@ -2033,6 +2033,97 @@ class CfnScalingPolicy(
|
|
|
2033
2033
|
policy_type="policyType",
|
|
2034
2034
|
|
|
2035
2035
|
# the properties below are optional
|
|
2036
|
+
predictive_scaling_policy_configuration=appscaling.CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty(
|
|
2037
|
+
metric_specifications=[appscaling.CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty(
|
|
2038
|
+
target_value=123,
|
|
2039
|
+
|
|
2040
|
+
# the properties below are optional
|
|
2041
|
+
customized_capacity_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty(
|
|
2042
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2043
|
+
expression="expression",
|
|
2044
|
+
id="id",
|
|
2045
|
+
label="label",
|
|
2046
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2047
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2048
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2049
|
+
name="name",
|
|
2050
|
+
value="value"
|
|
2051
|
+
)],
|
|
2052
|
+
metric_name="metricName",
|
|
2053
|
+
namespace="namespace"
|
|
2054
|
+
),
|
|
2055
|
+
stat="stat",
|
|
2056
|
+
unit="unit"
|
|
2057
|
+
),
|
|
2058
|
+
return_data=False
|
|
2059
|
+
)]
|
|
2060
|
+
),
|
|
2061
|
+
customized_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty(
|
|
2062
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2063
|
+
expression="expression",
|
|
2064
|
+
id="id",
|
|
2065
|
+
label="label",
|
|
2066
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2067
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2068
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2069
|
+
name="name",
|
|
2070
|
+
value="value"
|
|
2071
|
+
)],
|
|
2072
|
+
metric_name="metricName",
|
|
2073
|
+
namespace="namespace"
|
|
2074
|
+
),
|
|
2075
|
+
stat="stat",
|
|
2076
|
+
unit="unit"
|
|
2077
|
+
),
|
|
2078
|
+
return_data=False
|
|
2079
|
+
)]
|
|
2080
|
+
),
|
|
2081
|
+
customized_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty(
|
|
2082
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2083
|
+
expression="expression",
|
|
2084
|
+
id="id",
|
|
2085
|
+
label="label",
|
|
2086
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2087
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2088
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2089
|
+
name="name",
|
|
2090
|
+
value="value"
|
|
2091
|
+
)],
|
|
2092
|
+
metric_name="metricName",
|
|
2093
|
+
namespace="namespace"
|
|
2094
|
+
),
|
|
2095
|
+
stat="stat",
|
|
2096
|
+
unit="unit"
|
|
2097
|
+
),
|
|
2098
|
+
return_data=False
|
|
2099
|
+
)]
|
|
2100
|
+
),
|
|
2101
|
+
predefined_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty(
|
|
2102
|
+
predefined_metric_type="predefinedMetricType",
|
|
2103
|
+
|
|
2104
|
+
# the properties below are optional
|
|
2105
|
+
resource_label="resourceLabel"
|
|
2106
|
+
),
|
|
2107
|
+
predefined_metric_pair_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty(
|
|
2108
|
+
predefined_metric_type="predefinedMetricType",
|
|
2109
|
+
|
|
2110
|
+
# the properties below are optional
|
|
2111
|
+
resource_label="resourceLabel"
|
|
2112
|
+
),
|
|
2113
|
+
predefined_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty(
|
|
2114
|
+
predefined_metric_type="predefinedMetricType",
|
|
2115
|
+
|
|
2116
|
+
# the properties below are optional
|
|
2117
|
+
resource_label="resourceLabel"
|
|
2118
|
+
)
|
|
2119
|
+
)],
|
|
2120
|
+
|
|
2121
|
+
# the properties below are optional
|
|
2122
|
+
max_capacity_breach_behavior="maxCapacityBreachBehavior",
|
|
2123
|
+
max_capacity_buffer=123,
|
|
2124
|
+
mode="mode",
|
|
2125
|
+
scheduling_buffer_time=123
|
|
2126
|
+
),
|
|
2036
2127
|
resource_id="resourceId",
|
|
2037
2128
|
scalable_dimension="scalableDimension",
|
|
2038
2129
|
scaling_target_id="scalingTargetId",
|
|
@@ -2102,6 +2193,7 @@ class CfnScalingPolicy(
|
|
|
2102
2193
|
*,
|
|
2103
2194
|
policy_name: builtins.str,
|
|
2104
2195
|
policy_type: builtins.str,
|
|
2196
|
+
predictive_scaling_policy_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2105
2197
|
resource_id: typing.Optional[builtins.str] = None,
|
|
2106
2198
|
scalable_dimension: typing.Optional[builtins.str] = None,
|
|
2107
2199
|
scaling_target_id: typing.Optional[builtins.str] = None,
|
|
@@ -2114,6 +2206,7 @@ class CfnScalingPolicy(
|
|
|
2114
2206
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
2115
2207
|
:param policy_name: The name of the scaling policy. Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
|
|
2116
2208
|
:param policy_type: The scaling policy type. The following policy types are supported: ``TargetTrackingScaling`` —Not supported for Amazon EMR ``StepScaling`` —Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.
|
|
2209
|
+
:param predictive_scaling_policy_configuration:
|
|
2117
2210
|
:param resource_id: The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier. - ECS service - The resource type is ``service`` and the unique identifier is the cluster name and service name. Example: ``service/my-cluster/my-service`` . - Spot Fleet - The resource type is ``spot-fleet-request`` and the unique identifier is the Spot Fleet request ID. Example: ``spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`` . - EMR cluster - The resource type is ``instancegroup`` and the unique identifier is the cluster ID and instance group ID. Example: ``instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`` . - AppStream 2.0 fleet - The resource type is ``fleet`` and the unique identifier is the fleet name. Example: ``fleet/sample-fleet`` . - DynamoDB table - The resource type is ``table`` and the unique identifier is the table name. Example: ``table/my-table`` . - DynamoDB global secondary index - The resource type is ``index`` and the unique identifier is the index name. Example: ``table/my-table/index/my-table-index`` . - Aurora DB cluster - The resource type is ``cluster`` and the unique identifier is the cluster name. Example: ``cluster:my-db-cluster`` . - SageMaker endpoint variant - The resource type is ``variant`` and the unique identifier is the resource ID. Example: ``endpoint/my-end-point/variant/KMeansClustering`` . - Custom resources are not supported with a resource type. This parameter must specify the ``OutputValue`` from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our `GitHub repository <https://docs.aws.amazon.com/https://github.com/aws/aws-auto-scaling-custom-resource>`_ . - Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: ``arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE`` . - Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: ``arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE`` . - Lambda provisioned concurrency - The resource type is ``function`` and the unique identifier is the function name with a function version or alias name suffix that is not ``$LATEST`` . Example: ``function:my-function:prod`` or ``function:my-function:1`` . - Amazon Keyspaces table - The resource type is ``table`` and the unique identifier is the table name. Example: ``keyspace/mykeyspace/table/mytable`` . - Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: ``arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5`` . - Amazon ElastiCache replication group - The resource type is ``replication-group`` and the unique identifier is the replication group name. Example: ``replication-group/mycluster`` . - Neptune cluster - The resource type is ``cluster`` and the unique identifier is the cluster name. Example: ``cluster:mycluster`` . - SageMaker serverless endpoint - The resource type is ``variant`` and the unique identifier is the resource ID. Example: ``endpoint/my-end-point/variant/KMeansClustering`` . - SageMaker inference component - The resource type is ``inference-component`` and the unique identifier is the resource ID. Example: ``inference-component/my-inference-component`` . - Pool of WorkSpaces - The resource type is ``workspacespool`` and the unique identifier is the pool ID. Example: ``workspacespool/wspool-123456`` .
|
|
2118
2211
|
:param scalable_dimension: The scalable dimension. This string consists of the service namespace, resource type, and scaling property. - ``ecs:service:DesiredCount`` - The task count of an ECS service. - ``elasticmapreduce:instancegroup:InstanceCount`` - The instance count of an EMR Instance Group. - ``ec2:spot-fleet-request:TargetCapacity`` - The target capacity of a Spot Fleet. - ``appstream:fleet:DesiredCapacity`` - The capacity of an AppStream 2.0 fleet. - ``dynamodb:table:ReadCapacityUnits`` - The provisioned read capacity for a DynamoDB table. - ``dynamodb:table:WriteCapacityUnits`` - The provisioned write capacity for a DynamoDB table. - ``dynamodb:index:ReadCapacityUnits`` - The provisioned read capacity for a DynamoDB global secondary index. - ``dynamodb:index:WriteCapacityUnits`` - The provisioned write capacity for a DynamoDB global secondary index. - ``rds:cluster:ReadReplicaCount`` - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition. - ``sagemaker:variant:DesiredInstanceCount`` - The number of EC2 instances for a SageMaker model endpoint variant. - ``custom-resource:ResourceType:Property`` - The scalable dimension for a custom resource provided by your own application or service. - ``comprehend:document-classifier-endpoint:DesiredInferenceUnits`` - The number of inference units for an Amazon Comprehend document classification endpoint. - ``comprehend:entity-recognizer-endpoint:DesiredInferenceUnits`` - The number of inference units for an Amazon Comprehend entity recognizer endpoint. - ``lambda:function:ProvisionedConcurrency`` - The provisioned concurrency for a Lambda function. - ``cassandra:table:ReadCapacityUnits`` - The provisioned read capacity for an Amazon Keyspaces table. - ``cassandra:table:WriteCapacityUnits`` - The provisioned write capacity for an Amazon Keyspaces table. - ``kafka:broker-storage:VolumeSize`` - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster. - ``elasticache:replication-group:NodeGroups`` - The number of node groups for an Amazon ElastiCache replication group. - ``elasticache:replication-group:Replicas`` - The number of replicas per node group for an Amazon ElastiCache replication group. - ``neptune:cluster:ReadReplicaCount`` - The count of read replicas in an Amazon Neptune DB cluster. - ``sagemaker:variant:DesiredProvisionedConcurrency`` - The provisioned concurrency for a SageMaker serverless endpoint. - ``sagemaker:inference-component:DesiredCopyCount`` - The number of copies across an endpoint for a SageMaker inference component. - ``workspaces:workspacespool:DesiredUserSessions`` - The number of user sessions for the WorkSpaces in the pool.
|
|
2119
2212
|
:param scaling_target_id: The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the ``AWS::ApplicationAutoScaling::ScalableTarget`` resource. .. epigraph:: You must specify either the ``ScalingTargetId`` property, or the ``ResourceId`` , ``ScalableDimension`` , and ``ServiceNamespace`` properties, but not both.
|
|
@@ -2128,6 +2221,7 @@ class CfnScalingPolicy(
|
|
|
2128
2221
|
props = CfnScalingPolicyProps(
|
|
2129
2222
|
policy_name=policy_name,
|
|
2130
2223
|
policy_type=policy_type,
|
|
2224
|
+
predictive_scaling_policy_configuration=predictive_scaling_policy_configuration,
|
|
2131
2225
|
resource_id=resource_id,
|
|
2132
2226
|
scalable_dimension=scalable_dimension,
|
|
2133
2227
|
scaling_target_id=scaling_target_id,
|
|
@@ -2208,6 +2302,23 @@ class CfnScalingPolicy(
|
|
|
2208
2302
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2209
2303
|
jsii.set(self, "policyType", value) # pyright: ignore[reportArgumentType]
|
|
2210
2304
|
|
|
2305
|
+
@builtins.property
|
|
2306
|
+
@jsii.member(jsii_name="predictiveScalingPolicyConfiguration")
|
|
2307
|
+
def predictive_scaling_policy_configuration(
|
|
2308
|
+
self,
|
|
2309
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty"]]:
|
|
2310
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty"]], jsii.get(self, "predictiveScalingPolicyConfiguration"))
|
|
2311
|
+
|
|
2312
|
+
@predictive_scaling_policy_configuration.setter
|
|
2313
|
+
def predictive_scaling_policy_configuration(
|
|
2314
|
+
self,
|
|
2315
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty"]],
|
|
2316
|
+
) -> None:
|
|
2317
|
+
if __debug__:
|
|
2318
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a8ff4907f03a84bc381a0bf64cc7a5454e5ac237c8f91eef6a31a3bb7ccceabb)
|
|
2319
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2320
|
+
jsii.set(self, "predictiveScalingPolicyConfiguration", value) # pyright: ignore[reportArgumentType]
|
|
2321
|
+
|
|
2211
2322
|
@builtins.property
|
|
2212
2323
|
@jsii.member(jsii_name="resourceId")
|
|
2213
2324
|
def resource_id(self) -> typing.Optional[builtins.str]:
|
|
@@ -2428,46 +2539,1323 @@ class CfnScalingPolicy(
|
|
|
2428
2539
|
result = self._values.get("metric_name")
|
|
2429
2540
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2430
2541
|
|
|
2431
|
-
@builtins.property
|
|
2432
|
-
def metrics(
|
|
2433
|
-
self,
|
|
2434
|
-
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.TargetTrackingMetricDataQueryProperty"]]]]:
|
|
2435
|
-
'''The metrics to include in the target tracking scaling policy, as a metric data query.
|
|
2542
|
+
@builtins.property
|
|
2543
|
+
def metrics(
|
|
2544
|
+
self,
|
|
2545
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.TargetTrackingMetricDataQueryProperty"]]]]:
|
|
2546
|
+
'''The metrics to include in the target tracking scaling policy, as a metric data query.
|
|
2547
|
+
|
|
2548
|
+
This can include both raw metric and metric math expressions.
|
|
2549
|
+
|
|
2550
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-metrics
|
|
2551
|
+
'''
|
|
2552
|
+
result = self._values.get("metrics")
|
|
2553
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.TargetTrackingMetricDataQueryProperty"]]]], result)
|
|
2554
|
+
|
|
2555
|
+
@builtins.property
|
|
2556
|
+
def namespace(self) -> typing.Optional[builtins.str]:
|
|
2557
|
+
'''The namespace of the metric.
|
|
2558
|
+
|
|
2559
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace
|
|
2560
|
+
'''
|
|
2561
|
+
result = self._values.get("namespace")
|
|
2562
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2563
|
+
|
|
2564
|
+
@builtins.property
|
|
2565
|
+
def statistic(self) -> typing.Optional[builtins.str]:
|
|
2566
|
+
'''The statistic of the metric.
|
|
2567
|
+
|
|
2568
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic
|
|
2569
|
+
'''
|
|
2570
|
+
result = self._values.get("statistic")
|
|
2571
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2572
|
+
|
|
2573
|
+
@builtins.property
|
|
2574
|
+
def unit(self) -> typing.Optional[builtins.str]:
|
|
2575
|
+
'''The unit of the metric.
|
|
2576
|
+
|
|
2577
|
+
For a complete list of the units that CloudWatch supports, see the `MetricDatum <https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html>`_ data type in the *Amazon CloudWatch API Reference* .
|
|
2578
|
+
|
|
2579
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit
|
|
2580
|
+
'''
|
|
2581
|
+
result = self._values.get("unit")
|
|
2582
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2583
|
+
|
|
2584
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2585
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2586
|
+
|
|
2587
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2588
|
+
return not (rhs == self)
|
|
2589
|
+
|
|
2590
|
+
def __repr__(self) -> str:
|
|
2591
|
+
return "CustomizedMetricSpecificationProperty(%s)" % ", ".join(
|
|
2592
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2593
|
+
)
|
|
2594
|
+
|
|
2595
|
+
@jsii.data_type(
|
|
2596
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.MetricDimensionProperty",
|
|
2597
|
+
jsii_struct_bases=[],
|
|
2598
|
+
name_mapping={"name": "name", "value": "value"},
|
|
2599
|
+
)
|
|
2600
|
+
class MetricDimensionProperty:
|
|
2601
|
+
def __init__(self, *, name: builtins.str, value: builtins.str) -> None:
|
|
2602
|
+
'''``MetricDimension`` specifies a name/value pair that is part of the identity of a CloudWatch metric for the ``Dimensions`` property of the `AWS::ApplicationAutoScaling::ScalingPolicy CustomizedMetricSpecification <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html>`_ property type. Duplicate dimensions are not allowed.
|
|
2603
|
+
|
|
2604
|
+
:param name: The name of the dimension.
|
|
2605
|
+
:param value: The value of the dimension.
|
|
2606
|
+
|
|
2607
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html
|
|
2608
|
+
:exampleMetadata: fixture=_generated
|
|
2609
|
+
|
|
2610
|
+
Example::
|
|
2611
|
+
|
|
2612
|
+
# The code below shows an example of how to instantiate this type.
|
|
2613
|
+
# The values are placeholders you should change.
|
|
2614
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2615
|
+
|
|
2616
|
+
metric_dimension_property = appscaling.CfnScalingPolicy.MetricDimensionProperty(
|
|
2617
|
+
name="name",
|
|
2618
|
+
value="value"
|
|
2619
|
+
)
|
|
2620
|
+
'''
|
|
2621
|
+
if __debug__:
|
|
2622
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2bbab6c71eac87b44a87976e9ec88ca8fb9d041a349eeb47474fae5790b2b304)
|
|
2623
|
+
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
2624
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2625
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2626
|
+
"name": name,
|
|
2627
|
+
"value": value,
|
|
2628
|
+
}
|
|
2629
|
+
|
|
2630
|
+
@builtins.property
|
|
2631
|
+
def name(self) -> builtins.str:
|
|
2632
|
+
'''The name of the dimension.
|
|
2633
|
+
|
|
2634
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name
|
|
2635
|
+
'''
|
|
2636
|
+
result = self._values.get("name")
|
|
2637
|
+
assert result is not None, "Required property 'name' is missing"
|
|
2638
|
+
return typing.cast(builtins.str, result)
|
|
2639
|
+
|
|
2640
|
+
@builtins.property
|
|
2641
|
+
def value(self) -> builtins.str:
|
|
2642
|
+
'''The value of the dimension.
|
|
2643
|
+
|
|
2644
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value
|
|
2645
|
+
'''
|
|
2646
|
+
result = self._values.get("value")
|
|
2647
|
+
assert result is not None, "Required property 'value' is missing"
|
|
2648
|
+
return typing.cast(builtins.str, result)
|
|
2649
|
+
|
|
2650
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2651
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2652
|
+
|
|
2653
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2654
|
+
return not (rhs == self)
|
|
2655
|
+
|
|
2656
|
+
def __repr__(self) -> str:
|
|
2657
|
+
return "MetricDimensionProperty(%s)" % ", ".join(
|
|
2658
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2659
|
+
)
|
|
2660
|
+
|
|
2661
|
+
@jsii.data_type(
|
|
2662
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredefinedMetricSpecificationProperty",
|
|
2663
|
+
jsii_struct_bases=[],
|
|
2664
|
+
name_mapping={
|
|
2665
|
+
"predefined_metric_type": "predefinedMetricType",
|
|
2666
|
+
"resource_label": "resourceLabel",
|
|
2667
|
+
},
|
|
2668
|
+
)
|
|
2669
|
+
class PredefinedMetricSpecificationProperty:
|
|
2670
|
+
def __init__(
|
|
2671
|
+
self,
|
|
2672
|
+
*,
|
|
2673
|
+
predefined_metric_type: builtins.str,
|
|
2674
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
2675
|
+
) -> None:
|
|
2676
|
+
'''Contains predefined metric specification information for a target tracking scaling policy for Application Auto Scaling.
|
|
2677
|
+
|
|
2678
|
+
``PredefinedMetricSpecification`` is a property of the `AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingScalingPolicyConfiguration <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html>`_ property type.
|
|
2679
|
+
|
|
2680
|
+
:param predefined_metric_type: The metric type. The ``ALBRequestCountPerTarget`` metric type applies only to Spot fleet requests and ECS services.
|
|
2681
|
+
:param resource_label: Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ``ALBRequestCountPerTarget`` and there is a target group attached to the Spot Fleet or ECS service. You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is: ``app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff`` . Where: - app// is the final portion of the load balancer ARN - targetgroup// is the final portion of the target group ARN. To find the ARN for an Application Load Balancer, use the `DescribeLoadBalancers <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html>`_ API operation. To find the ARN for the target group, use the `DescribeTargetGroups <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html>`_ API operation.
|
|
2682
|
+
|
|
2683
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html
|
|
2684
|
+
:exampleMetadata: fixture=_generated
|
|
2685
|
+
|
|
2686
|
+
Example::
|
|
2687
|
+
|
|
2688
|
+
# The code below shows an example of how to instantiate this type.
|
|
2689
|
+
# The values are placeholders you should change.
|
|
2690
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2691
|
+
|
|
2692
|
+
predefined_metric_specification_property = appscaling.CfnScalingPolicy.PredefinedMetricSpecificationProperty(
|
|
2693
|
+
predefined_metric_type="predefinedMetricType",
|
|
2694
|
+
|
|
2695
|
+
# the properties below are optional
|
|
2696
|
+
resource_label="resourceLabel"
|
|
2697
|
+
)
|
|
2698
|
+
'''
|
|
2699
|
+
if __debug__:
|
|
2700
|
+
type_hints = typing.get_type_hints(_typecheckingstub__006a90e58fd47516fb147d13d14740fcdcd4c98e1ffcee20b2746e63c245c11a)
|
|
2701
|
+
check_type(argname="argument predefined_metric_type", value=predefined_metric_type, expected_type=type_hints["predefined_metric_type"])
|
|
2702
|
+
check_type(argname="argument resource_label", value=resource_label, expected_type=type_hints["resource_label"])
|
|
2703
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2704
|
+
"predefined_metric_type": predefined_metric_type,
|
|
2705
|
+
}
|
|
2706
|
+
if resource_label is not None:
|
|
2707
|
+
self._values["resource_label"] = resource_label
|
|
2708
|
+
|
|
2709
|
+
@builtins.property
|
|
2710
|
+
def predefined_metric_type(self) -> builtins.str:
|
|
2711
|
+
'''The metric type.
|
|
2712
|
+
|
|
2713
|
+
The ``ALBRequestCountPerTarget`` metric type applies only to Spot fleet requests and ECS services.
|
|
2714
|
+
|
|
2715
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype
|
|
2716
|
+
'''
|
|
2717
|
+
result = self._values.get("predefined_metric_type")
|
|
2718
|
+
assert result is not None, "Required property 'predefined_metric_type' is missing"
|
|
2719
|
+
return typing.cast(builtins.str, result)
|
|
2720
|
+
|
|
2721
|
+
@builtins.property
|
|
2722
|
+
def resource_label(self) -> typing.Optional[builtins.str]:
|
|
2723
|
+
'''Identifies the resource associated with the metric type.
|
|
2724
|
+
|
|
2725
|
+
You can't specify a resource label unless the metric type is ``ALBRequestCountPerTarget`` and there is a target group attached to the Spot Fleet or ECS service.
|
|
2726
|
+
|
|
2727
|
+
You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:
|
|
2728
|
+
|
|
2729
|
+
``app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff`` .
|
|
2730
|
+
|
|
2731
|
+
Where:
|
|
2732
|
+
|
|
2733
|
+
- app// is the final portion of the load balancer ARN
|
|
2734
|
+
- targetgroup// is the final portion of the target group ARN.
|
|
2735
|
+
|
|
2736
|
+
To find the ARN for an Application Load Balancer, use the `DescribeLoadBalancers <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html>`_ API operation. To find the ARN for the target group, use the `DescribeTargetGroups <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html>`_ API operation.
|
|
2737
|
+
|
|
2738
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel
|
|
2739
|
+
'''
|
|
2740
|
+
result = self._values.get("resource_label")
|
|
2741
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2742
|
+
|
|
2743
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2744
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2745
|
+
|
|
2746
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2747
|
+
return not (rhs == self)
|
|
2748
|
+
|
|
2749
|
+
def __repr__(self) -> str:
|
|
2750
|
+
return "PredefinedMetricSpecificationProperty(%s)" % ", ".join(
|
|
2751
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2752
|
+
)
|
|
2753
|
+
|
|
2754
|
+
@jsii.data_type(
|
|
2755
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty",
|
|
2756
|
+
jsii_struct_bases=[],
|
|
2757
|
+
name_mapping={"metric_data_queries": "metricDataQueries"},
|
|
2758
|
+
)
|
|
2759
|
+
class PredictiveScalingCustomizedCapacityMetricProperty:
|
|
2760
|
+
def __init__(
|
|
2761
|
+
self,
|
|
2762
|
+
*,
|
|
2763
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
2764
|
+
) -> None:
|
|
2765
|
+
'''
|
|
2766
|
+
:param metric_data_queries:
|
|
2767
|
+
|
|
2768
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedcapacitymetric.html
|
|
2769
|
+
:exampleMetadata: fixture=_generated
|
|
2770
|
+
|
|
2771
|
+
Example::
|
|
2772
|
+
|
|
2773
|
+
# The code below shows an example of how to instantiate this type.
|
|
2774
|
+
# The values are placeholders you should change.
|
|
2775
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2776
|
+
|
|
2777
|
+
predictive_scaling_customized_capacity_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty(
|
|
2778
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2779
|
+
expression="expression",
|
|
2780
|
+
id="id",
|
|
2781
|
+
label="label",
|
|
2782
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2783
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2784
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2785
|
+
name="name",
|
|
2786
|
+
value="value"
|
|
2787
|
+
)],
|
|
2788
|
+
metric_name="metricName",
|
|
2789
|
+
namespace="namespace"
|
|
2790
|
+
),
|
|
2791
|
+
stat="stat",
|
|
2792
|
+
unit="unit"
|
|
2793
|
+
),
|
|
2794
|
+
return_data=False
|
|
2795
|
+
)]
|
|
2796
|
+
)
|
|
2797
|
+
'''
|
|
2798
|
+
if __debug__:
|
|
2799
|
+
type_hints = typing.get_type_hints(_typecheckingstub__baf809a31130dc9f7046310d5551e4d1bc142c89cd1fb21ab0fece90cd2ef669)
|
|
2800
|
+
check_type(argname="argument metric_data_queries", value=metric_data_queries, expected_type=type_hints["metric_data_queries"])
|
|
2801
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2802
|
+
"metric_data_queries": metric_data_queries,
|
|
2803
|
+
}
|
|
2804
|
+
|
|
2805
|
+
@builtins.property
|
|
2806
|
+
def metric_data_queries(
|
|
2807
|
+
self,
|
|
2808
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]]:
|
|
2809
|
+
'''
|
|
2810
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedcapacitymetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingcustomizedcapacitymetric-metricdataqueries
|
|
2811
|
+
'''
|
|
2812
|
+
result = self._values.get("metric_data_queries")
|
|
2813
|
+
assert result is not None, "Required property 'metric_data_queries' is missing"
|
|
2814
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]], result)
|
|
2815
|
+
|
|
2816
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2817
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2818
|
+
|
|
2819
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2820
|
+
return not (rhs == self)
|
|
2821
|
+
|
|
2822
|
+
def __repr__(self) -> str:
|
|
2823
|
+
return "PredictiveScalingCustomizedCapacityMetricProperty(%s)" % ", ".join(
|
|
2824
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2825
|
+
)
|
|
2826
|
+
|
|
2827
|
+
@jsii.data_type(
|
|
2828
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty",
|
|
2829
|
+
jsii_struct_bases=[],
|
|
2830
|
+
name_mapping={"metric_data_queries": "metricDataQueries"},
|
|
2831
|
+
)
|
|
2832
|
+
class PredictiveScalingCustomizedLoadMetricProperty:
|
|
2833
|
+
def __init__(
|
|
2834
|
+
self,
|
|
2835
|
+
*,
|
|
2836
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
2837
|
+
) -> None:
|
|
2838
|
+
'''
|
|
2839
|
+
:param metric_data_queries:
|
|
2840
|
+
|
|
2841
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedloadmetric.html
|
|
2842
|
+
:exampleMetadata: fixture=_generated
|
|
2843
|
+
|
|
2844
|
+
Example::
|
|
2845
|
+
|
|
2846
|
+
# The code below shows an example of how to instantiate this type.
|
|
2847
|
+
# The values are placeholders you should change.
|
|
2848
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2849
|
+
|
|
2850
|
+
predictive_scaling_customized_load_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty(
|
|
2851
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2852
|
+
expression="expression",
|
|
2853
|
+
id="id",
|
|
2854
|
+
label="label",
|
|
2855
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2856
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2857
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2858
|
+
name="name",
|
|
2859
|
+
value="value"
|
|
2860
|
+
)],
|
|
2861
|
+
metric_name="metricName",
|
|
2862
|
+
namespace="namespace"
|
|
2863
|
+
),
|
|
2864
|
+
stat="stat",
|
|
2865
|
+
unit="unit"
|
|
2866
|
+
),
|
|
2867
|
+
return_data=False
|
|
2868
|
+
)]
|
|
2869
|
+
)
|
|
2870
|
+
'''
|
|
2871
|
+
if __debug__:
|
|
2872
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ac39ce2bb72379aa4920ed39bac91cdf3aa4ff447d41bf13801719c58eab7362)
|
|
2873
|
+
check_type(argname="argument metric_data_queries", value=metric_data_queries, expected_type=type_hints["metric_data_queries"])
|
|
2874
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2875
|
+
"metric_data_queries": metric_data_queries,
|
|
2876
|
+
}
|
|
2877
|
+
|
|
2878
|
+
@builtins.property
|
|
2879
|
+
def metric_data_queries(
|
|
2880
|
+
self,
|
|
2881
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]]:
|
|
2882
|
+
'''
|
|
2883
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedloadmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingcustomizedloadmetric-metricdataqueries
|
|
2884
|
+
'''
|
|
2885
|
+
result = self._values.get("metric_data_queries")
|
|
2886
|
+
assert result is not None, "Required property 'metric_data_queries' is missing"
|
|
2887
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]], result)
|
|
2888
|
+
|
|
2889
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2890
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2891
|
+
|
|
2892
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2893
|
+
return not (rhs == self)
|
|
2894
|
+
|
|
2895
|
+
def __repr__(self) -> str:
|
|
2896
|
+
return "PredictiveScalingCustomizedLoadMetricProperty(%s)" % ", ".join(
|
|
2897
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2898
|
+
)
|
|
2899
|
+
|
|
2900
|
+
@jsii.data_type(
|
|
2901
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty",
|
|
2902
|
+
jsii_struct_bases=[],
|
|
2903
|
+
name_mapping={"metric_data_queries": "metricDataQueries"},
|
|
2904
|
+
)
|
|
2905
|
+
class PredictiveScalingCustomizedScalingMetricProperty:
|
|
2906
|
+
def __init__(
|
|
2907
|
+
self,
|
|
2908
|
+
*,
|
|
2909
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
2910
|
+
) -> None:
|
|
2911
|
+
'''
|
|
2912
|
+
:param metric_data_queries:
|
|
2913
|
+
|
|
2914
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedscalingmetric.html
|
|
2915
|
+
:exampleMetadata: fixture=_generated
|
|
2916
|
+
|
|
2917
|
+
Example::
|
|
2918
|
+
|
|
2919
|
+
# The code below shows an example of how to instantiate this type.
|
|
2920
|
+
# The values are placeholders you should change.
|
|
2921
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2922
|
+
|
|
2923
|
+
predictive_scaling_customized_scaling_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty(
|
|
2924
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
2925
|
+
expression="expression",
|
|
2926
|
+
id="id",
|
|
2927
|
+
label="label",
|
|
2928
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
2929
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
2930
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
2931
|
+
name="name",
|
|
2932
|
+
value="value"
|
|
2933
|
+
)],
|
|
2934
|
+
metric_name="metricName",
|
|
2935
|
+
namespace="namespace"
|
|
2936
|
+
),
|
|
2937
|
+
stat="stat",
|
|
2938
|
+
unit="unit"
|
|
2939
|
+
),
|
|
2940
|
+
return_data=False
|
|
2941
|
+
)]
|
|
2942
|
+
)
|
|
2943
|
+
'''
|
|
2944
|
+
if __debug__:
|
|
2945
|
+
type_hints = typing.get_type_hints(_typecheckingstub__35c3daca56887d07a7f16cb4e42cd7ee2b3e51829f3cd7bea4e65022fc7eddb6)
|
|
2946
|
+
check_type(argname="argument metric_data_queries", value=metric_data_queries, expected_type=type_hints["metric_data_queries"])
|
|
2947
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2948
|
+
"metric_data_queries": metric_data_queries,
|
|
2949
|
+
}
|
|
2950
|
+
|
|
2951
|
+
@builtins.property
|
|
2952
|
+
def metric_data_queries(
|
|
2953
|
+
self,
|
|
2954
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]]:
|
|
2955
|
+
'''
|
|
2956
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingcustomizedscalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingcustomizedscalingmetric-metricdataqueries
|
|
2957
|
+
'''
|
|
2958
|
+
result = self._values.get("metric_data_queries")
|
|
2959
|
+
assert result is not None, "Required property 'metric_data_queries' is missing"
|
|
2960
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty"]]], result)
|
|
2961
|
+
|
|
2962
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2963
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2964
|
+
|
|
2965
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2966
|
+
return not (rhs == self)
|
|
2967
|
+
|
|
2968
|
+
def __repr__(self) -> str:
|
|
2969
|
+
return "PredictiveScalingCustomizedScalingMetricProperty(%s)" % ", ".join(
|
|
2970
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2971
|
+
)
|
|
2972
|
+
|
|
2973
|
+
@jsii.data_type(
|
|
2974
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty",
|
|
2975
|
+
jsii_struct_bases=[],
|
|
2976
|
+
name_mapping={
|
|
2977
|
+
"expression": "expression",
|
|
2978
|
+
"id": "id",
|
|
2979
|
+
"label": "label",
|
|
2980
|
+
"metric_stat": "metricStat",
|
|
2981
|
+
"return_data": "returnData",
|
|
2982
|
+
},
|
|
2983
|
+
)
|
|
2984
|
+
class PredictiveScalingMetricDataQueryProperty:
|
|
2985
|
+
def __init__(
|
|
2986
|
+
self,
|
|
2987
|
+
*,
|
|
2988
|
+
expression: typing.Optional[builtins.str] = None,
|
|
2989
|
+
id: typing.Optional[builtins.str] = None,
|
|
2990
|
+
label: typing.Optional[builtins.str] = None,
|
|
2991
|
+
metric_stat: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricStatProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2992
|
+
return_data: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
2993
|
+
) -> None:
|
|
2994
|
+
'''
|
|
2995
|
+
:param expression: The math expression to perform on the returned data, if this object is performing a math expression.
|
|
2996
|
+
:param id: A short name that identifies the object's results in the response.
|
|
2997
|
+
:param label: A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
|
|
2998
|
+
:param metric_stat:
|
|
2999
|
+
:param return_data: Indicates whether to return the timestamps and raw data values of this metric.
|
|
3000
|
+
|
|
3001
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html
|
|
3002
|
+
:exampleMetadata: fixture=_generated
|
|
3003
|
+
|
|
3004
|
+
Example::
|
|
3005
|
+
|
|
3006
|
+
# The code below shows an example of how to instantiate this type.
|
|
3007
|
+
# The values are placeholders you should change.
|
|
3008
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3009
|
+
|
|
3010
|
+
predictive_scaling_metric_data_query_property = appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3011
|
+
expression="expression",
|
|
3012
|
+
id="id",
|
|
3013
|
+
label="label",
|
|
3014
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3015
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3016
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3017
|
+
name="name",
|
|
3018
|
+
value="value"
|
|
3019
|
+
)],
|
|
3020
|
+
metric_name="metricName",
|
|
3021
|
+
namespace="namespace"
|
|
3022
|
+
),
|
|
3023
|
+
stat="stat",
|
|
3024
|
+
unit="unit"
|
|
3025
|
+
),
|
|
3026
|
+
return_data=False
|
|
3027
|
+
)
|
|
3028
|
+
'''
|
|
3029
|
+
if __debug__:
|
|
3030
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7cb94698782194f83da9ca6414a5ca1d6c86a5b368bafaae48a59aa90207ed6e)
|
|
3031
|
+
check_type(argname="argument expression", value=expression, expected_type=type_hints["expression"])
|
|
3032
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
3033
|
+
check_type(argname="argument label", value=label, expected_type=type_hints["label"])
|
|
3034
|
+
check_type(argname="argument metric_stat", value=metric_stat, expected_type=type_hints["metric_stat"])
|
|
3035
|
+
check_type(argname="argument return_data", value=return_data, expected_type=type_hints["return_data"])
|
|
3036
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3037
|
+
if expression is not None:
|
|
3038
|
+
self._values["expression"] = expression
|
|
3039
|
+
if id is not None:
|
|
3040
|
+
self._values["id"] = id
|
|
3041
|
+
if label is not None:
|
|
3042
|
+
self._values["label"] = label
|
|
3043
|
+
if metric_stat is not None:
|
|
3044
|
+
self._values["metric_stat"] = metric_stat
|
|
3045
|
+
if return_data is not None:
|
|
3046
|
+
self._values["return_data"] = return_data
|
|
3047
|
+
|
|
3048
|
+
@builtins.property
|
|
3049
|
+
def expression(self) -> typing.Optional[builtins.str]:
|
|
3050
|
+
'''The math expression to perform on the returned data, if this object is performing a math expression.
|
|
3051
|
+
|
|
3052
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery-expression
|
|
3053
|
+
'''
|
|
3054
|
+
result = self._values.get("expression")
|
|
3055
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3056
|
+
|
|
3057
|
+
@builtins.property
|
|
3058
|
+
def id(self) -> typing.Optional[builtins.str]:
|
|
3059
|
+
'''A short name that identifies the object's results in the response.
|
|
3060
|
+
|
|
3061
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery-id
|
|
3062
|
+
'''
|
|
3063
|
+
result = self._values.get("id")
|
|
3064
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3065
|
+
|
|
3066
|
+
@builtins.property
|
|
3067
|
+
def label(self) -> typing.Optional[builtins.str]:
|
|
3068
|
+
'''A human-readable label for this metric or expression.
|
|
3069
|
+
|
|
3070
|
+
This is especially useful if this is a math expression, so that you know what the value represents.
|
|
3071
|
+
|
|
3072
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery-label
|
|
3073
|
+
'''
|
|
3074
|
+
result = self._values.get("label")
|
|
3075
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3076
|
+
|
|
3077
|
+
@builtins.property
|
|
3078
|
+
def metric_stat(
|
|
3079
|
+
self,
|
|
3080
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricStatProperty"]]:
|
|
3081
|
+
'''
|
|
3082
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery-metricstat
|
|
3083
|
+
'''
|
|
3084
|
+
result = self._values.get("metric_stat")
|
|
3085
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricStatProperty"]], result)
|
|
3086
|
+
|
|
3087
|
+
@builtins.property
|
|
3088
|
+
def return_data(
|
|
3089
|
+
self,
|
|
3090
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
3091
|
+
'''Indicates whether to return the timestamps and raw data values of this metric.
|
|
3092
|
+
|
|
3093
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdataquery-returndata
|
|
3094
|
+
'''
|
|
3095
|
+
result = self._values.get("return_data")
|
|
3096
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
3097
|
+
|
|
3098
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3099
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3100
|
+
|
|
3101
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3102
|
+
return not (rhs == self)
|
|
3103
|
+
|
|
3104
|
+
def __repr__(self) -> str:
|
|
3105
|
+
return "PredictiveScalingMetricDataQueryProperty(%s)" % ", ".join(
|
|
3106
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3107
|
+
)
|
|
3108
|
+
|
|
3109
|
+
@jsii.data_type(
|
|
3110
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty",
|
|
3111
|
+
jsii_struct_bases=[],
|
|
3112
|
+
name_mapping={"name": "name", "value": "value"},
|
|
3113
|
+
)
|
|
3114
|
+
class PredictiveScalingMetricDimensionProperty:
|
|
3115
|
+
def __init__(
|
|
3116
|
+
self,
|
|
3117
|
+
*,
|
|
3118
|
+
name: typing.Optional[builtins.str] = None,
|
|
3119
|
+
value: typing.Optional[builtins.str] = None,
|
|
3120
|
+
) -> None:
|
|
3121
|
+
'''
|
|
3122
|
+
:param name: The name of the dimension.
|
|
3123
|
+
:param value: The value of the dimension.
|
|
3124
|
+
|
|
3125
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdimension.html
|
|
3126
|
+
:exampleMetadata: fixture=_generated
|
|
3127
|
+
|
|
3128
|
+
Example::
|
|
3129
|
+
|
|
3130
|
+
# The code below shows an example of how to instantiate this type.
|
|
3131
|
+
# The values are placeholders you should change.
|
|
3132
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3133
|
+
|
|
3134
|
+
predictive_scaling_metric_dimension_property = appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3135
|
+
name="name",
|
|
3136
|
+
value="value"
|
|
3137
|
+
)
|
|
3138
|
+
'''
|
|
3139
|
+
if __debug__:
|
|
3140
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7ccc47b2e2a5c048e3788cb9ab802a7d336f9313040d285e9600e27e4aac7530)
|
|
3141
|
+
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
3142
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3143
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3144
|
+
if name is not None:
|
|
3145
|
+
self._values["name"] = name
|
|
3146
|
+
if value is not None:
|
|
3147
|
+
self._values["value"] = value
|
|
3148
|
+
|
|
3149
|
+
@builtins.property
|
|
3150
|
+
def name(self) -> typing.Optional[builtins.str]:
|
|
3151
|
+
'''The name of the dimension.
|
|
3152
|
+
|
|
3153
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdimension.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdimension-name
|
|
3154
|
+
'''
|
|
3155
|
+
result = self._values.get("name")
|
|
3156
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3157
|
+
|
|
3158
|
+
@builtins.property
|
|
3159
|
+
def value(self) -> typing.Optional[builtins.str]:
|
|
3160
|
+
'''The value of the dimension.
|
|
3161
|
+
|
|
3162
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricdimension.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricdimension-value
|
|
3163
|
+
'''
|
|
3164
|
+
result = self._values.get("value")
|
|
3165
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3166
|
+
|
|
3167
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3168
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3169
|
+
|
|
3170
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3171
|
+
return not (rhs == self)
|
|
3172
|
+
|
|
3173
|
+
def __repr__(self) -> str:
|
|
3174
|
+
return "PredictiveScalingMetricDimensionProperty(%s)" % ", ".join(
|
|
3175
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3176
|
+
)
|
|
3177
|
+
|
|
3178
|
+
@jsii.data_type(
|
|
3179
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingMetricProperty",
|
|
3180
|
+
jsii_struct_bases=[],
|
|
3181
|
+
name_mapping={
|
|
3182
|
+
"dimensions": "dimensions",
|
|
3183
|
+
"metric_name": "metricName",
|
|
3184
|
+
"namespace": "namespace",
|
|
3185
|
+
},
|
|
3186
|
+
)
|
|
3187
|
+
class PredictiveScalingMetricProperty:
|
|
3188
|
+
def __init__(
|
|
3189
|
+
self,
|
|
3190
|
+
*,
|
|
3191
|
+
dimensions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricDimensionProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3192
|
+
metric_name: typing.Optional[builtins.str] = None,
|
|
3193
|
+
namespace: typing.Optional[builtins.str] = None,
|
|
3194
|
+
) -> None:
|
|
3195
|
+
'''
|
|
3196
|
+
:param dimensions: The dimensions for the metric.
|
|
3197
|
+
:param metric_name: The name of the metric.
|
|
3198
|
+
:param namespace: The namespace of the metric.
|
|
3199
|
+
|
|
3200
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetric.html
|
|
3201
|
+
:exampleMetadata: fixture=_generated
|
|
3202
|
+
|
|
3203
|
+
Example::
|
|
3204
|
+
|
|
3205
|
+
# The code below shows an example of how to instantiate this type.
|
|
3206
|
+
# The values are placeholders you should change.
|
|
3207
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3208
|
+
|
|
3209
|
+
predictive_scaling_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3210
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3211
|
+
name="name",
|
|
3212
|
+
value="value"
|
|
3213
|
+
)],
|
|
3214
|
+
metric_name="metricName",
|
|
3215
|
+
namespace="namespace"
|
|
3216
|
+
)
|
|
3217
|
+
'''
|
|
3218
|
+
if __debug__:
|
|
3219
|
+
type_hints = typing.get_type_hints(_typecheckingstub__f0b4c5e65c6e655cdbc3a71099a7f7da3c2dbccf56465777a98264de1eb74f85)
|
|
3220
|
+
check_type(argname="argument dimensions", value=dimensions, expected_type=type_hints["dimensions"])
|
|
3221
|
+
check_type(argname="argument metric_name", value=metric_name, expected_type=type_hints["metric_name"])
|
|
3222
|
+
check_type(argname="argument namespace", value=namespace, expected_type=type_hints["namespace"])
|
|
3223
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3224
|
+
if dimensions is not None:
|
|
3225
|
+
self._values["dimensions"] = dimensions
|
|
3226
|
+
if metric_name is not None:
|
|
3227
|
+
self._values["metric_name"] = metric_name
|
|
3228
|
+
if namespace is not None:
|
|
3229
|
+
self._values["namespace"] = namespace
|
|
3230
|
+
|
|
3231
|
+
@builtins.property
|
|
3232
|
+
def dimensions(
|
|
3233
|
+
self,
|
|
3234
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDimensionProperty"]]]]:
|
|
3235
|
+
'''The dimensions for the metric.
|
|
3236
|
+
|
|
3237
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetric-dimensions
|
|
3238
|
+
'''
|
|
3239
|
+
result = self._values.get("dimensions")
|
|
3240
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricDimensionProperty"]]]], result)
|
|
3241
|
+
|
|
3242
|
+
@builtins.property
|
|
3243
|
+
def metric_name(self) -> typing.Optional[builtins.str]:
|
|
3244
|
+
'''The name of the metric.
|
|
3245
|
+
|
|
3246
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetric-metricname
|
|
3247
|
+
'''
|
|
3248
|
+
result = self._values.get("metric_name")
|
|
3249
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3250
|
+
|
|
3251
|
+
@builtins.property
|
|
3252
|
+
def namespace(self) -> typing.Optional[builtins.str]:
|
|
3253
|
+
'''The namespace of the metric.
|
|
3254
|
+
|
|
3255
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetric-namespace
|
|
3256
|
+
'''
|
|
3257
|
+
result = self._values.get("namespace")
|
|
3258
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3259
|
+
|
|
3260
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3261
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3262
|
+
|
|
3263
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3264
|
+
return not (rhs == self)
|
|
3265
|
+
|
|
3266
|
+
def __repr__(self) -> str:
|
|
3267
|
+
return "PredictiveScalingMetricProperty(%s)" % ", ".join(
|
|
3268
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3269
|
+
)
|
|
3270
|
+
|
|
3271
|
+
@jsii.data_type(
|
|
3272
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty",
|
|
3273
|
+
jsii_struct_bases=[],
|
|
3274
|
+
name_mapping={
|
|
3275
|
+
"target_value": "targetValue",
|
|
3276
|
+
"customized_capacity_metric_specification": "customizedCapacityMetricSpecification",
|
|
3277
|
+
"customized_load_metric_specification": "customizedLoadMetricSpecification",
|
|
3278
|
+
"customized_scaling_metric_specification": "customizedScalingMetricSpecification",
|
|
3279
|
+
"predefined_load_metric_specification": "predefinedLoadMetricSpecification",
|
|
3280
|
+
"predefined_metric_pair_specification": "predefinedMetricPairSpecification",
|
|
3281
|
+
"predefined_scaling_metric_specification": "predefinedScalingMetricSpecification",
|
|
3282
|
+
},
|
|
3283
|
+
)
|
|
3284
|
+
class PredictiveScalingMetricSpecificationProperty:
|
|
3285
|
+
def __init__(
|
|
3286
|
+
self,
|
|
3287
|
+
*,
|
|
3288
|
+
target_value: jsii.Number,
|
|
3289
|
+
customized_capacity_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3290
|
+
customized_load_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3291
|
+
customized_scaling_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3292
|
+
predefined_load_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3293
|
+
predefined_metric_pair_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3294
|
+
predefined_scaling_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3295
|
+
) -> None:
|
|
3296
|
+
'''
|
|
3297
|
+
:param target_value:
|
|
3298
|
+
:param customized_capacity_metric_specification:
|
|
3299
|
+
:param customized_load_metric_specification:
|
|
3300
|
+
:param customized_scaling_metric_specification:
|
|
3301
|
+
:param predefined_load_metric_specification:
|
|
3302
|
+
:param predefined_metric_pair_specification:
|
|
3303
|
+
:param predefined_scaling_metric_specification:
|
|
3304
|
+
|
|
3305
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html
|
|
3306
|
+
:exampleMetadata: fixture=_generated
|
|
3307
|
+
|
|
3308
|
+
Example::
|
|
3309
|
+
|
|
3310
|
+
# The code below shows an example of how to instantiate this type.
|
|
3311
|
+
# The values are placeholders you should change.
|
|
3312
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3313
|
+
|
|
3314
|
+
predictive_scaling_metric_specification_property = appscaling.CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty(
|
|
3315
|
+
target_value=123,
|
|
3316
|
+
|
|
3317
|
+
# the properties below are optional
|
|
3318
|
+
customized_capacity_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty(
|
|
3319
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3320
|
+
expression="expression",
|
|
3321
|
+
id="id",
|
|
3322
|
+
label="label",
|
|
3323
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3324
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3325
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3326
|
+
name="name",
|
|
3327
|
+
value="value"
|
|
3328
|
+
)],
|
|
3329
|
+
metric_name="metricName",
|
|
3330
|
+
namespace="namespace"
|
|
3331
|
+
),
|
|
3332
|
+
stat="stat",
|
|
3333
|
+
unit="unit"
|
|
3334
|
+
),
|
|
3335
|
+
return_data=False
|
|
3336
|
+
)]
|
|
3337
|
+
),
|
|
3338
|
+
customized_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty(
|
|
3339
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3340
|
+
expression="expression",
|
|
3341
|
+
id="id",
|
|
3342
|
+
label="label",
|
|
3343
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3344
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3345
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3346
|
+
name="name",
|
|
3347
|
+
value="value"
|
|
3348
|
+
)],
|
|
3349
|
+
metric_name="metricName",
|
|
3350
|
+
namespace="namespace"
|
|
3351
|
+
),
|
|
3352
|
+
stat="stat",
|
|
3353
|
+
unit="unit"
|
|
3354
|
+
),
|
|
3355
|
+
return_data=False
|
|
3356
|
+
)]
|
|
3357
|
+
),
|
|
3358
|
+
customized_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty(
|
|
3359
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3360
|
+
expression="expression",
|
|
3361
|
+
id="id",
|
|
3362
|
+
label="label",
|
|
3363
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3364
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3365
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3366
|
+
name="name",
|
|
3367
|
+
value="value"
|
|
3368
|
+
)],
|
|
3369
|
+
metric_name="metricName",
|
|
3370
|
+
namespace="namespace"
|
|
3371
|
+
),
|
|
3372
|
+
stat="stat",
|
|
3373
|
+
unit="unit"
|
|
3374
|
+
),
|
|
3375
|
+
return_data=False
|
|
3376
|
+
)]
|
|
3377
|
+
),
|
|
3378
|
+
predefined_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty(
|
|
3379
|
+
predefined_metric_type="predefinedMetricType",
|
|
3380
|
+
|
|
3381
|
+
# the properties below are optional
|
|
3382
|
+
resource_label="resourceLabel"
|
|
3383
|
+
),
|
|
3384
|
+
predefined_metric_pair_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty(
|
|
3385
|
+
predefined_metric_type="predefinedMetricType",
|
|
3386
|
+
|
|
3387
|
+
# the properties below are optional
|
|
3388
|
+
resource_label="resourceLabel"
|
|
3389
|
+
),
|
|
3390
|
+
predefined_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty(
|
|
3391
|
+
predefined_metric_type="predefinedMetricType",
|
|
3392
|
+
|
|
3393
|
+
# the properties below are optional
|
|
3394
|
+
resource_label="resourceLabel"
|
|
3395
|
+
)
|
|
3396
|
+
)
|
|
3397
|
+
'''
|
|
3398
|
+
if __debug__:
|
|
3399
|
+
type_hints = typing.get_type_hints(_typecheckingstub__f335e7dbac02e5d34252ec23dcd35d90e1872a21cb862e79274e27b4db9fe43d)
|
|
3400
|
+
check_type(argname="argument target_value", value=target_value, expected_type=type_hints["target_value"])
|
|
3401
|
+
check_type(argname="argument customized_capacity_metric_specification", value=customized_capacity_metric_specification, expected_type=type_hints["customized_capacity_metric_specification"])
|
|
3402
|
+
check_type(argname="argument customized_load_metric_specification", value=customized_load_metric_specification, expected_type=type_hints["customized_load_metric_specification"])
|
|
3403
|
+
check_type(argname="argument customized_scaling_metric_specification", value=customized_scaling_metric_specification, expected_type=type_hints["customized_scaling_metric_specification"])
|
|
3404
|
+
check_type(argname="argument predefined_load_metric_specification", value=predefined_load_metric_specification, expected_type=type_hints["predefined_load_metric_specification"])
|
|
3405
|
+
check_type(argname="argument predefined_metric_pair_specification", value=predefined_metric_pair_specification, expected_type=type_hints["predefined_metric_pair_specification"])
|
|
3406
|
+
check_type(argname="argument predefined_scaling_metric_specification", value=predefined_scaling_metric_specification, expected_type=type_hints["predefined_scaling_metric_specification"])
|
|
3407
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
3408
|
+
"target_value": target_value,
|
|
3409
|
+
}
|
|
3410
|
+
if customized_capacity_metric_specification is not None:
|
|
3411
|
+
self._values["customized_capacity_metric_specification"] = customized_capacity_metric_specification
|
|
3412
|
+
if customized_load_metric_specification is not None:
|
|
3413
|
+
self._values["customized_load_metric_specification"] = customized_load_metric_specification
|
|
3414
|
+
if customized_scaling_metric_specification is not None:
|
|
3415
|
+
self._values["customized_scaling_metric_specification"] = customized_scaling_metric_specification
|
|
3416
|
+
if predefined_load_metric_specification is not None:
|
|
3417
|
+
self._values["predefined_load_metric_specification"] = predefined_load_metric_specification
|
|
3418
|
+
if predefined_metric_pair_specification is not None:
|
|
3419
|
+
self._values["predefined_metric_pair_specification"] = predefined_metric_pair_specification
|
|
3420
|
+
if predefined_scaling_metric_specification is not None:
|
|
3421
|
+
self._values["predefined_scaling_metric_specification"] = predefined_scaling_metric_specification
|
|
3422
|
+
|
|
3423
|
+
@builtins.property
|
|
3424
|
+
def target_value(self) -> jsii.Number:
|
|
3425
|
+
'''
|
|
3426
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-targetvalue
|
|
3427
|
+
'''
|
|
3428
|
+
result = self._values.get("target_value")
|
|
3429
|
+
assert result is not None, "Required property 'target_value' is missing"
|
|
3430
|
+
return typing.cast(jsii.Number, result)
|
|
3431
|
+
|
|
3432
|
+
@builtins.property
|
|
3433
|
+
def customized_capacity_metric_specification(
|
|
3434
|
+
self,
|
|
3435
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty"]]:
|
|
3436
|
+
'''
|
|
3437
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-customizedcapacitymetricspecification
|
|
3438
|
+
'''
|
|
3439
|
+
result = self._values.get("customized_capacity_metric_specification")
|
|
3440
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty"]], result)
|
|
3441
|
+
|
|
3442
|
+
@builtins.property
|
|
3443
|
+
def customized_load_metric_specification(
|
|
3444
|
+
self,
|
|
3445
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty"]]:
|
|
3446
|
+
'''
|
|
3447
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-customizedloadmetricspecification
|
|
3448
|
+
'''
|
|
3449
|
+
result = self._values.get("customized_load_metric_specification")
|
|
3450
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty"]], result)
|
|
3451
|
+
|
|
3452
|
+
@builtins.property
|
|
3453
|
+
def customized_scaling_metric_specification(
|
|
3454
|
+
self,
|
|
3455
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty"]]:
|
|
3456
|
+
'''
|
|
3457
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-customizedscalingmetricspecification
|
|
3458
|
+
'''
|
|
3459
|
+
result = self._values.get("customized_scaling_metric_specification")
|
|
3460
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty"]], result)
|
|
3461
|
+
|
|
3462
|
+
@builtins.property
|
|
3463
|
+
def predefined_load_metric_specification(
|
|
3464
|
+
self,
|
|
3465
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty"]]:
|
|
3466
|
+
'''
|
|
3467
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-predefinedloadmetricspecification
|
|
3468
|
+
'''
|
|
3469
|
+
result = self._values.get("predefined_load_metric_specification")
|
|
3470
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty"]], result)
|
|
3471
|
+
|
|
3472
|
+
@builtins.property
|
|
3473
|
+
def predefined_metric_pair_specification(
|
|
3474
|
+
self,
|
|
3475
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty"]]:
|
|
3476
|
+
'''
|
|
3477
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-predefinedmetricpairspecification
|
|
3478
|
+
'''
|
|
3479
|
+
result = self._values.get("predefined_metric_pair_specification")
|
|
3480
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty"]], result)
|
|
3481
|
+
|
|
3482
|
+
@builtins.property
|
|
3483
|
+
def predefined_scaling_metric_specification(
|
|
3484
|
+
self,
|
|
3485
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty"]]:
|
|
3486
|
+
'''
|
|
3487
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricspecification-predefinedscalingmetricspecification
|
|
3488
|
+
'''
|
|
3489
|
+
result = self._values.get("predefined_scaling_metric_specification")
|
|
3490
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty"]], result)
|
|
3491
|
+
|
|
3492
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3493
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3494
|
+
|
|
3495
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3496
|
+
return not (rhs == self)
|
|
3497
|
+
|
|
3498
|
+
def __repr__(self) -> str:
|
|
3499
|
+
return "PredictiveScalingMetricSpecificationProperty(%s)" % ", ".join(
|
|
3500
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3501
|
+
)
|
|
3502
|
+
|
|
3503
|
+
@jsii.data_type(
|
|
3504
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty",
|
|
3505
|
+
jsii_struct_bases=[],
|
|
3506
|
+
name_mapping={"metric": "metric", "stat": "stat", "unit": "unit"},
|
|
3507
|
+
)
|
|
3508
|
+
class PredictiveScalingMetricStatProperty:
|
|
3509
|
+
def __init__(
|
|
3510
|
+
self,
|
|
3511
|
+
*,
|
|
3512
|
+
metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3513
|
+
stat: typing.Optional[builtins.str] = None,
|
|
3514
|
+
unit: typing.Optional[builtins.str] = None,
|
|
3515
|
+
) -> None:
|
|
3516
|
+
'''
|
|
3517
|
+
:param metric:
|
|
3518
|
+
:param stat: The statistic to return. It can include any CloudWatch statistic or extended statistic.
|
|
3519
|
+
:param unit: The unit to use for the returned data points.
|
|
3520
|
+
|
|
3521
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricstat.html
|
|
3522
|
+
:exampleMetadata: fixture=_generated
|
|
3523
|
+
|
|
3524
|
+
Example::
|
|
3525
|
+
|
|
3526
|
+
# The code below shows an example of how to instantiate this type.
|
|
3527
|
+
# The values are placeholders you should change.
|
|
3528
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3529
|
+
|
|
3530
|
+
predictive_scaling_metric_stat_property = appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3531
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3532
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3533
|
+
name="name",
|
|
3534
|
+
value="value"
|
|
3535
|
+
)],
|
|
3536
|
+
metric_name="metricName",
|
|
3537
|
+
namespace="namespace"
|
|
3538
|
+
),
|
|
3539
|
+
stat="stat",
|
|
3540
|
+
unit="unit"
|
|
3541
|
+
)
|
|
3542
|
+
'''
|
|
3543
|
+
if __debug__:
|
|
3544
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d53af1f339feb5962e1705bee9b01c7d79acf6dc4927d3891f0bd6415f07b584)
|
|
3545
|
+
check_type(argname="argument metric", value=metric, expected_type=type_hints["metric"])
|
|
3546
|
+
check_type(argname="argument stat", value=stat, expected_type=type_hints["stat"])
|
|
3547
|
+
check_type(argname="argument unit", value=unit, expected_type=type_hints["unit"])
|
|
3548
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3549
|
+
if metric is not None:
|
|
3550
|
+
self._values["metric"] = metric
|
|
3551
|
+
if stat is not None:
|
|
3552
|
+
self._values["stat"] = stat
|
|
3553
|
+
if unit is not None:
|
|
3554
|
+
self._values["unit"] = unit
|
|
3555
|
+
|
|
3556
|
+
@builtins.property
|
|
3557
|
+
def metric(
|
|
3558
|
+
self,
|
|
3559
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricProperty"]]:
|
|
3560
|
+
'''
|
|
3561
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricstat.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricstat-metric
|
|
3562
|
+
'''
|
|
3563
|
+
result = self._values.get("metric")
|
|
3564
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricProperty"]], result)
|
|
3565
|
+
|
|
3566
|
+
@builtins.property
|
|
3567
|
+
def stat(self) -> typing.Optional[builtins.str]:
|
|
3568
|
+
'''The statistic to return.
|
|
3569
|
+
|
|
3570
|
+
It can include any CloudWatch statistic or extended statistic.
|
|
3571
|
+
|
|
3572
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricstat.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricstat-stat
|
|
3573
|
+
'''
|
|
3574
|
+
result = self._values.get("stat")
|
|
3575
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3576
|
+
|
|
3577
|
+
@builtins.property
|
|
3578
|
+
def unit(self) -> typing.Optional[builtins.str]:
|
|
3579
|
+
'''The unit to use for the returned data points.
|
|
3580
|
+
|
|
3581
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingmetricstat.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingmetricstat-unit
|
|
3582
|
+
'''
|
|
3583
|
+
result = self._values.get("unit")
|
|
3584
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3585
|
+
|
|
3586
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3587
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3588
|
+
|
|
3589
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3590
|
+
return not (rhs == self)
|
|
3591
|
+
|
|
3592
|
+
def __repr__(self) -> str:
|
|
3593
|
+
return "PredictiveScalingMetricStatProperty(%s)" % ", ".join(
|
|
3594
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3595
|
+
)
|
|
3596
|
+
|
|
3597
|
+
@jsii.data_type(
|
|
3598
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty",
|
|
3599
|
+
jsii_struct_bases=[],
|
|
3600
|
+
name_mapping={
|
|
3601
|
+
"metric_specifications": "metricSpecifications",
|
|
3602
|
+
"max_capacity_breach_behavior": "maxCapacityBreachBehavior",
|
|
3603
|
+
"max_capacity_buffer": "maxCapacityBuffer",
|
|
3604
|
+
"mode": "mode",
|
|
3605
|
+
"scheduling_buffer_time": "schedulingBufferTime",
|
|
3606
|
+
},
|
|
3607
|
+
)
|
|
3608
|
+
class PredictiveScalingPolicyConfigurationProperty:
|
|
3609
|
+
def __init__(
|
|
3610
|
+
self,
|
|
3611
|
+
*,
|
|
3612
|
+
metric_specifications: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
3613
|
+
max_capacity_breach_behavior: typing.Optional[builtins.str] = None,
|
|
3614
|
+
max_capacity_buffer: typing.Optional[jsii.Number] = None,
|
|
3615
|
+
mode: typing.Optional[builtins.str] = None,
|
|
3616
|
+
scheduling_buffer_time: typing.Optional[jsii.Number] = None,
|
|
3617
|
+
) -> None:
|
|
3618
|
+
'''
|
|
3619
|
+
:param metric_specifications:
|
|
3620
|
+
:param max_capacity_breach_behavior:
|
|
3621
|
+
:param max_capacity_buffer:
|
|
3622
|
+
:param mode:
|
|
3623
|
+
:param scheduling_buffer_time:
|
|
3624
|
+
|
|
3625
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html
|
|
3626
|
+
:exampleMetadata: fixture=_generated
|
|
3627
|
+
|
|
3628
|
+
Example::
|
|
3629
|
+
|
|
3630
|
+
# The code below shows an example of how to instantiate this type.
|
|
3631
|
+
# The values are placeholders you should change.
|
|
3632
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3633
|
+
|
|
3634
|
+
predictive_scaling_policy_configuration_property = appscaling.CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty(
|
|
3635
|
+
metric_specifications=[appscaling.CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty(
|
|
3636
|
+
target_value=123,
|
|
3637
|
+
|
|
3638
|
+
# the properties below are optional
|
|
3639
|
+
customized_capacity_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty(
|
|
3640
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3641
|
+
expression="expression",
|
|
3642
|
+
id="id",
|
|
3643
|
+
label="label",
|
|
3644
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3645
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3646
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3647
|
+
name="name",
|
|
3648
|
+
value="value"
|
|
3649
|
+
)],
|
|
3650
|
+
metric_name="metricName",
|
|
3651
|
+
namespace="namespace"
|
|
3652
|
+
),
|
|
3653
|
+
stat="stat",
|
|
3654
|
+
unit="unit"
|
|
3655
|
+
),
|
|
3656
|
+
return_data=False
|
|
3657
|
+
)]
|
|
3658
|
+
),
|
|
3659
|
+
customized_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty(
|
|
3660
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3661
|
+
expression="expression",
|
|
3662
|
+
id="id",
|
|
3663
|
+
label="label",
|
|
3664
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3665
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3666
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3667
|
+
name="name",
|
|
3668
|
+
value="value"
|
|
3669
|
+
)],
|
|
3670
|
+
metric_name="metricName",
|
|
3671
|
+
namespace="namespace"
|
|
3672
|
+
),
|
|
3673
|
+
stat="stat",
|
|
3674
|
+
unit="unit"
|
|
3675
|
+
),
|
|
3676
|
+
return_data=False
|
|
3677
|
+
)]
|
|
3678
|
+
),
|
|
3679
|
+
customized_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty(
|
|
3680
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
3681
|
+
expression="expression",
|
|
3682
|
+
id="id",
|
|
3683
|
+
label="label",
|
|
3684
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
3685
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
3686
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
3687
|
+
name="name",
|
|
3688
|
+
value="value"
|
|
3689
|
+
)],
|
|
3690
|
+
metric_name="metricName",
|
|
3691
|
+
namespace="namespace"
|
|
3692
|
+
),
|
|
3693
|
+
stat="stat",
|
|
3694
|
+
unit="unit"
|
|
3695
|
+
),
|
|
3696
|
+
return_data=False
|
|
3697
|
+
)]
|
|
3698
|
+
),
|
|
3699
|
+
predefined_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty(
|
|
3700
|
+
predefined_metric_type="predefinedMetricType",
|
|
3701
|
+
|
|
3702
|
+
# the properties below are optional
|
|
3703
|
+
resource_label="resourceLabel"
|
|
3704
|
+
),
|
|
3705
|
+
predefined_metric_pair_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty(
|
|
3706
|
+
predefined_metric_type="predefinedMetricType",
|
|
3707
|
+
|
|
3708
|
+
# the properties below are optional
|
|
3709
|
+
resource_label="resourceLabel"
|
|
3710
|
+
),
|
|
3711
|
+
predefined_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty(
|
|
3712
|
+
predefined_metric_type="predefinedMetricType",
|
|
3713
|
+
|
|
3714
|
+
# the properties below are optional
|
|
3715
|
+
resource_label="resourceLabel"
|
|
3716
|
+
)
|
|
3717
|
+
)],
|
|
3718
|
+
|
|
3719
|
+
# the properties below are optional
|
|
3720
|
+
max_capacity_breach_behavior="maxCapacityBreachBehavior",
|
|
3721
|
+
max_capacity_buffer=123,
|
|
3722
|
+
mode="mode",
|
|
3723
|
+
scheduling_buffer_time=123
|
|
3724
|
+
)
|
|
3725
|
+
'''
|
|
3726
|
+
if __debug__:
|
|
3727
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a024b2cdbcf20111811a18e787b7998d587e828c585bbe53e9448b30f36a847a)
|
|
3728
|
+
check_type(argname="argument metric_specifications", value=metric_specifications, expected_type=type_hints["metric_specifications"])
|
|
3729
|
+
check_type(argname="argument max_capacity_breach_behavior", value=max_capacity_breach_behavior, expected_type=type_hints["max_capacity_breach_behavior"])
|
|
3730
|
+
check_type(argname="argument max_capacity_buffer", value=max_capacity_buffer, expected_type=type_hints["max_capacity_buffer"])
|
|
3731
|
+
check_type(argname="argument mode", value=mode, expected_type=type_hints["mode"])
|
|
3732
|
+
check_type(argname="argument scheduling_buffer_time", value=scheduling_buffer_time, expected_type=type_hints["scheduling_buffer_time"])
|
|
3733
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
3734
|
+
"metric_specifications": metric_specifications,
|
|
3735
|
+
}
|
|
3736
|
+
if max_capacity_breach_behavior is not None:
|
|
3737
|
+
self._values["max_capacity_breach_behavior"] = max_capacity_breach_behavior
|
|
3738
|
+
if max_capacity_buffer is not None:
|
|
3739
|
+
self._values["max_capacity_buffer"] = max_capacity_buffer
|
|
3740
|
+
if mode is not None:
|
|
3741
|
+
self._values["mode"] = mode
|
|
3742
|
+
if scheduling_buffer_time is not None:
|
|
3743
|
+
self._values["scheduling_buffer_time"] = scheduling_buffer_time
|
|
3744
|
+
|
|
3745
|
+
@builtins.property
|
|
3746
|
+
def metric_specifications(
|
|
3747
|
+
self,
|
|
3748
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty"]]]:
|
|
3749
|
+
'''
|
|
3750
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration-metricspecifications
|
|
3751
|
+
'''
|
|
3752
|
+
result = self._values.get("metric_specifications")
|
|
3753
|
+
assert result is not None, "Required property 'metric_specifications' is missing"
|
|
3754
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty"]]], result)
|
|
3755
|
+
|
|
3756
|
+
@builtins.property
|
|
3757
|
+
def max_capacity_breach_behavior(self) -> typing.Optional[builtins.str]:
|
|
3758
|
+
'''
|
|
3759
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration-maxcapacitybreachbehavior
|
|
3760
|
+
'''
|
|
3761
|
+
result = self._values.get("max_capacity_breach_behavior")
|
|
3762
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3763
|
+
|
|
3764
|
+
@builtins.property
|
|
3765
|
+
def max_capacity_buffer(self) -> typing.Optional[jsii.Number]:
|
|
3766
|
+
'''
|
|
3767
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration-maxcapacitybuffer
|
|
3768
|
+
'''
|
|
3769
|
+
result = self._values.get("max_capacity_buffer")
|
|
3770
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
3771
|
+
|
|
3772
|
+
@builtins.property
|
|
3773
|
+
def mode(self) -> typing.Optional[builtins.str]:
|
|
3774
|
+
'''
|
|
3775
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration-mode
|
|
3776
|
+
'''
|
|
3777
|
+
result = self._values.get("mode")
|
|
3778
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3779
|
+
|
|
3780
|
+
@builtins.property
|
|
3781
|
+
def scheduling_buffer_time(self) -> typing.Optional[jsii.Number]:
|
|
3782
|
+
'''
|
|
3783
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration-schedulingbuffertime
|
|
3784
|
+
'''
|
|
3785
|
+
result = self._values.get("scheduling_buffer_time")
|
|
3786
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
3787
|
+
|
|
3788
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3789
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3790
|
+
|
|
3791
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
3792
|
+
return not (rhs == self)
|
|
3793
|
+
|
|
3794
|
+
def __repr__(self) -> str:
|
|
3795
|
+
return "PredictiveScalingPolicyConfigurationProperty(%s)" % ", ".join(
|
|
3796
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
3797
|
+
)
|
|
3798
|
+
|
|
3799
|
+
@jsii.data_type(
|
|
3800
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty",
|
|
3801
|
+
jsii_struct_bases=[],
|
|
3802
|
+
name_mapping={
|
|
3803
|
+
"predefined_metric_type": "predefinedMetricType",
|
|
3804
|
+
"resource_label": "resourceLabel",
|
|
3805
|
+
},
|
|
3806
|
+
)
|
|
3807
|
+
class PredictiveScalingPredefinedLoadMetricProperty:
|
|
3808
|
+
def __init__(
|
|
3809
|
+
self,
|
|
3810
|
+
*,
|
|
3811
|
+
predefined_metric_type: builtins.str,
|
|
3812
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
3813
|
+
) -> None:
|
|
3814
|
+
'''
|
|
3815
|
+
:param predefined_metric_type:
|
|
3816
|
+
:param resource_label:
|
|
3817
|
+
|
|
3818
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedloadmetric.html
|
|
3819
|
+
:exampleMetadata: fixture=_generated
|
|
2436
3820
|
|
|
2437
|
-
|
|
3821
|
+
Example::
|
|
2438
3822
|
|
|
2439
|
-
|
|
3823
|
+
# The code below shows an example of how to instantiate this type.
|
|
3824
|
+
# The values are placeholders you should change.
|
|
3825
|
+
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
3826
|
+
|
|
3827
|
+
predictive_scaling_predefined_load_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty(
|
|
3828
|
+
predefined_metric_type="predefinedMetricType",
|
|
3829
|
+
|
|
3830
|
+
# the properties below are optional
|
|
3831
|
+
resource_label="resourceLabel"
|
|
3832
|
+
)
|
|
2440
3833
|
'''
|
|
2441
|
-
|
|
2442
|
-
|
|
3834
|
+
if __debug__:
|
|
3835
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0bb7634203f8476604909d001544c9b836ba5d194e9a327c1241da9a9e962b52)
|
|
3836
|
+
check_type(argname="argument predefined_metric_type", value=predefined_metric_type, expected_type=type_hints["predefined_metric_type"])
|
|
3837
|
+
check_type(argname="argument resource_label", value=resource_label, expected_type=type_hints["resource_label"])
|
|
3838
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
3839
|
+
"predefined_metric_type": predefined_metric_type,
|
|
3840
|
+
}
|
|
3841
|
+
if resource_label is not None:
|
|
3842
|
+
self._values["resource_label"] = resource_label
|
|
2443
3843
|
|
|
2444
3844
|
@builtins.property
|
|
2445
|
-
def
|
|
2446
|
-
'''The namespace of the metric.
|
|
2447
|
-
|
|
2448
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace
|
|
3845
|
+
def predefined_metric_type(self) -> builtins.str:
|
|
2449
3846
|
'''
|
|
2450
|
-
|
|
2451
|
-
return typing.cast(typing.Optional[builtins.str], result)
|
|
2452
|
-
|
|
2453
|
-
@builtins.property
|
|
2454
|
-
def statistic(self) -> typing.Optional[builtins.str]:
|
|
2455
|
-
'''The statistic of the metric.
|
|
2456
|
-
|
|
2457
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic
|
|
3847
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedloadmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedloadmetric-predefinedmetrictype
|
|
2458
3848
|
'''
|
|
2459
|
-
result = self._values.get("
|
|
2460
|
-
|
|
3849
|
+
result = self._values.get("predefined_metric_type")
|
|
3850
|
+
assert result is not None, "Required property 'predefined_metric_type' is missing"
|
|
3851
|
+
return typing.cast(builtins.str, result)
|
|
2461
3852
|
|
|
2462
3853
|
@builtins.property
|
|
2463
|
-
def
|
|
2464
|
-
'''The unit of the metric.
|
|
2465
|
-
|
|
2466
|
-
For a complete list of the units that CloudWatch supports, see the `MetricDatum <https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html>`_ data type in the *Amazon CloudWatch API Reference* .
|
|
2467
|
-
|
|
2468
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit
|
|
3854
|
+
def resource_label(self) -> typing.Optional[builtins.str]:
|
|
2469
3855
|
'''
|
|
2470
|
-
|
|
3856
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedloadmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedloadmetric-resourcelabel
|
|
3857
|
+
'''
|
|
3858
|
+
result = self._values.get("resource_label")
|
|
2471
3859
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2472
3860
|
|
|
2473
3861
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
@@ -2477,23 +3865,30 @@ class CfnScalingPolicy(
|
|
|
2477
3865
|
return not (rhs == self)
|
|
2478
3866
|
|
|
2479
3867
|
def __repr__(self) -> str:
|
|
2480
|
-
return "
|
|
3868
|
+
return "PredictiveScalingPredefinedLoadMetricProperty(%s)" % ", ".join(
|
|
2481
3869
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
2482
3870
|
)
|
|
2483
3871
|
|
|
2484
3872
|
@jsii.data_type(
|
|
2485
|
-
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.
|
|
3873
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty",
|
|
2486
3874
|
jsii_struct_bases=[],
|
|
2487
|
-
name_mapping={
|
|
3875
|
+
name_mapping={
|
|
3876
|
+
"predefined_metric_type": "predefinedMetricType",
|
|
3877
|
+
"resource_label": "resourceLabel",
|
|
3878
|
+
},
|
|
2488
3879
|
)
|
|
2489
|
-
class
|
|
2490
|
-
def __init__(
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
:
|
|
2494
|
-
:
|
|
3880
|
+
class PredictiveScalingPredefinedMetricPairProperty:
|
|
3881
|
+
def __init__(
|
|
3882
|
+
self,
|
|
3883
|
+
*,
|
|
3884
|
+
predefined_metric_type: builtins.str,
|
|
3885
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
3886
|
+
) -> None:
|
|
3887
|
+
'''
|
|
3888
|
+
:param predefined_metric_type:
|
|
3889
|
+
:param resource_label:
|
|
2495
3890
|
|
|
2496
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-
|
|
3891
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedmetricpair.html
|
|
2497
3892
|
:exampleMetadata: fixture=_generated
|
|
2498
3893
|
|
|
2499
3894
|
Example::
|
|
@@ -2502,39 +3897,39 @@ class CfnScalingPolicy(
|
|
|
2502
3897
|
# The values are placeholders you should change.
|
|
2503
3898
|
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2504
3899
|
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
3900
|
+
predictive_scaling_predefined_metric_pair_property = appscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty(
|
|
3901
|
+
predefined_metric_type="predefinedMetricType",
|
|
3902
|
+
|
|
3903
|
+
# the properties below are optional
|
|
3904
|
+
resource_label="resourceLabel"
|
|
2508
3905
|
)
|
|
2509
3906
|
'''
|
|
2510
3907
|
if __debug__:
|
|
2511
|
-
type_hints = typing.get_type_hints(
|
|
2512
|
-
check_type(argname="argument
|
|
2513
|
-
check_type(argname="argument
|
|
3908
|
+
type_hints = typing.get_type_hints(_typecheckingstub__19e838d5ee35da6e163a6c82692435e1c4fccbdfba878fa19dfc5269dfc85d11)
|
|
3909
|
+
check_type(argname="argument predefined_metric_type", value=predefined_metric_type, expected_type=type_hints["predefined_metric_type"])
|
|
3910
|
+
check_type(argname="argument resource_label", value=resource_label, expected_type=type_hints["resource_label"])
|
|
2514
3911
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2515
|
-
"
|
|
2516
|
-
"value": value,
|
|
3912
|
+
"predefined_metric_type": predefined_metric_type,
|
|
2517
3913
|
}
|
|
3914
|
+
if resource_label is not None:
|
|
3915
|
+
self._values["resource_label"] = resource_label
|
|
2518
3916
|
|
|
2519
3917
|
@builtins.property
|
|
2520
|
-
def
|
|
2521
|
-
'''The name of the dimension.
|
|
2522
|
-
|
|
2523
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name
|
|
3918
|
+
def predefined_metric_type(self) -> builtins.str:
|
|
2524
3919
|
'''
|
|
2525
|
-
|
|
2526
|
-
|
|
3920
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedmetricpair.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedmetricpair-predefinedmetrictype
|
|
3921
|
+
'''
|
|
3922
|
+
result = self._values.get("predefined_metric_type")
|
|
3923
|
+
assert result is not None, "Required property 'predefined_metric_type' is missing"
|
|
2527
3924
|
return typing.cast(builtins.str, result)
|
|
2528
3925
|
|
|
2529
3926
|
@builtins.property
|
|
2530
|
-
def
|
|
2531
|
-
'''The value of the dimension.
|
|
2532
|
-
|
|
2533
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value
|
|
3927
|
+
def resource_label(self) -> typing.Optional[builtins.str]:
|
|
2534
3928
|
'''
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
3929
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedmetricpair.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedmetricpair-resourcelabel
|
|
3930
|
+
'''
|
|
3931
|
+
result = self._values.get("resource_label")
|
|
3932
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2538
3933
|
|
|
2539
3934
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2540
3935
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
@@ -2543,33 +3938,30 @@ class CfnScalingPolicy(
|
|
|
2543
3938
|
return not (rhs == self)
|
|
2544
3939
|
|
|
2545
3940
|
def __repr__(self) -> str:
|
|
2546
|
-
return "
|
|
3941
|
+
return "PredictiveScalingPredefinedMetricPairProperty(%s)" % ", ".join(
|
|
2547
3942
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
2548
3943
|
)
|
|
2549
3944
|
|
|
2550
3945
|
@jsii.data_type(
|
|
2551
|
-
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.
|
|
3946
|
+
jsii_type="aws-cdk-lib.aws_applicationautoscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty",
|
|
2552
3947
|
jsii_struct_bases=[],
|
|
2553
3948
|
name_mapping={
|
|
2554
3949
|
"predefined_metric_type": "predefinedMetricType",
|
|
2555
3950
|
"resource_label": "resourceLabel",
|
|
2556
3951
|
},
|
|
2557
3952
|
)
|
|
2558
|
-
class
|
|
3953
|
+
class PredictiveScalingPredefinedScalingMetricProperty:
|
|
2559
3954
|
def __init__(
|
|
2560
3955
|
self,
|
|
2561
3956
|
*,
|
|
2562
3957
|
predefined_metric_type: builtins.str,
|
|
2563
3958
|
resource_label: typing.Optional[builtins.str] = None,
|
|
2564
3959
|
) -> None:
|
|
2565
|
-
'''
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
:param predefined_metric_type: The metric type. The ``ALBRequestCountPerTarget`` metric type applies only to Spot fleet requests and ECS services.
|
|
2570
|
-
:param resource_label: Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ``ALBRequestCountPerTarget`` and there is a target group attached to the Spot Fleet or ECS service. You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is: ``app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff`` . Where: - app// is the final portion of the load balancer ARN - targetgroup// is the final portion of the target group ARN. To find the ARN for an Application Load Balancer, use the `DescribeLoadBalancers <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html>`_ API operation. To find the ARN for the target group, use the `DescribeTargetGroups <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html>`_ API operation.
|
|
3960
|
+
'''
|
|
3961
|
+
:param predefined_metric_type:
|
|
3962
|
+
:param resource_label:
|
|
2571
3963
|
|
|
2572
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-
|
|
3964
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedscalingmetric.html
|
|
2573
3965
|
:exampleMetadata: fixture=_generated
|
|
2574
3966
|
|
|
2575
3967
|
Example::
|
|
@@ -2578,7 +3970,7 @@ class CfnScalingPolicy(
|
|
|
2578
3970
|
# The values are placeholders you should change.
|
|
2579
3971
|
from aws_cdk import aws_applicationautoscaling as appscaling
|
|
2580
3972
|
|
|
2581
|
-
|
|
3973
|
+
predictive_scaling_predefined_scaling_metric_property = appscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty(
|
|
2582
3974
|
predefined_metric_type="predefinedMetricType",
|
|
2583
3975
|
|
|
2584
3976
|
# the properties below are optional
|
|
@@ -2586,7 +3978,7 @@ class CfnScalingPolicy(
|
|
|
2586
3978
|
)
|
|
2587
3979
|
'''
|
|
2588
3980
|
if __debug__:
|
|
2589
|
-
type_hints = typing.get_type_hints(
|
|
3981
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a97590b84b4d83fa36cc26f5970df44f2c84513403b6eb5b15cc94570c24d547)
|
|
2590
3982
|
check_type(argname="argument predefined_metric_type", value=predefined_metric_type, expected_type=type_hints["predefined_metric_type"])
|
|
2591
3983
|
check_type(argname="argument resource_label", value=resource_label, expected_type=type_hints["resource_label"])
|
|
2592
3984
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
@@ -2597,11 +3989,8 @@ class CfnScalingPolicy(
|
|
|
2597
3989
|
|
|
2598
3990
|
@builtins.property
|
|
2599
3991
|
def predefined_metric_type(self) -> builtins.str:
|
|
2600
|
-
'''
|
|
2601
|
-
|
|
2602
|
-
The ``ALBRequestCountPerTarget`` metric type applies only to Spot fleet requests and ECS services.
|
|
2603
|
-
|
|
2604
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype
|
|
3992
|
+
'''
|
|
3993
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedscalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedscalingmetric-predefinedmetrictype
|
|
2605
3994
|
'''
|
|
2606
3995
|
result = self._values.get("predefined_metric_type")
|
|
2607
3996
|
assert result is not None, "Required property 'predefined_metric_type' is missing"
|
|
@@ -2609,22 +3998,8 @@ class CfnScalingPolicy(
|
|
|
2609
3998
|
|
|
2610
3999
|
@builtins.property
|
|
2611
4000
|
def resource_label(self) -> typing.Optional[builtins.str]:
|
|
2612
|
-
'''
|
|
2613
|
-
|
|
2614
|
-
You can't specify a resource label unless the metric type is ``ALBRequestCountPerTarget`` and there is a target group attached to the Spot Fleet or ECS service.
|
|
2615
|
-
|
|
2616
|
-
You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format of the resource label is:
|
|
2617
|
-
|
|
2618
|
-
``app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff`` .
|
|
2619
|
-
|
|
2620
|
-
Where:
|
|
2621
|
-
|
|
2622
|
-
- app// is the final portion of the load balancer ARN
|
|
2623
|
-
- targetgroup// is the final portion of the target group ARN.
|
|
2624
|
-
|
|
2625
|
-
To find the ARN for an Application Load Balancer, use the `DescribeLoadBalancers <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html>`_ API operation. To find the ARN for the target group, use the `DescribeTargetGroups <https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html>`_ API operation.
|
|
2626
|
-
|
|
2627
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel
|
|
4001
|
+
'''
|
|
4002
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predictivescalingpredefinedscalingmetric.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpredefinedscalingmetric-resourcelabel
|
|
2628
4003
|
'''
|
|
2629
4004
|
result = self._values.get("resource_label")
|
|
2630
4005
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -2636,7 +4011,7 @@ class CfnScalingPolicy(
|
|
|
2636
4011
|
return not (rhs == self)
|
|
2637
4012
|
|
|
2638
4013
|
def __repr__(self) -> str:
|
|
2639
|
-
return "
|
|
4014
|
+
return "PredictiveScalingPredefinedScalingMetricProperty(%s)" % ", ".join(
|
|
2640
4015
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
2641
4016
|
)
|
|
2642
4017
|
|
|
@@ -3525,6 +4900,7 @@ class CfnScalingPolicy(
|
|
|
3525
4900
|
name_mapping={
|
|
3526
4901
|
"policy_name": "policyName",
|
|
3527
4902
|
"policy_type": "policyType",
|
|
4903
|
+
"predictive_scaling_policy_configuration": "predictiveScalingPolicyConfiguration",
|
|
3528
4904
|
"resource_id": "resourceId",
|
|
3529
4905
|
"scalable_dimension": "scalableDimension",
|
|
3530
4906
|
"scaling_target_id": "scalingTargetId",
|
|
@@ -3539,6 +4915,7 @@ class CfnScalingPolicyProps:
|
|
|
3539
4915
|
*,
|
|
3540
4916
|
policy_name: builtins.str,
|
|
3541
4917
|
policy_type: builtins.str,
|
|
4918
|
+
predictive_scaling_policy_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3542
4919
|
resource_id: typing.Optional[builtins.str] = None,
|
|
3543
4920
|
scalable_dimension: typing.Optional[builtins.str] = None,
|
|
3544
4921
|
scaling_target_id: typing.Optional[builtins.str] = None,
|
|
@@ -3550,6 +4927,7 @@ class CfnScalingPolicyProps:
|
|
|
3550
4927
|
|
|
3551
4928
|
:param policy_name: The name of the scaling policy. Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
|
|
3552
4929
|
:param policy_type: The scaling policy type. The following policy types are supported: ``TargetTrackingScaling`` —Not supported for Amazon EMR ``StepScaling`` —Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.
|
|
4930
|
+
:param predictive_scaling_policy_configuration:
|
|
3553
4931
|
:param resource_id: The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier. - ECS service - The resource type is ``service`` and the unique identifier is the cluster name and service name. Example: ``service/my-cluster/my-service`` . - Spot Fleet - The resource type is ``spot-fleet-request`` and the unique identifier is the Spot Fleet request ID. Example: ``spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`` . - EMR cluster - The resource type is ``instancegroup`` and the unique identifier is the cluster ID and instance group ID. Example: ``instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`` . - AppStream 2.0 fleet - The resource type is ``fleet`` and the unique identifier is the fleet name. Example: ``fleet/sample-fleet`` . - DynamoDB table - The resource type is ``table`` and the unique identifier is the table name. Example: ``table/my-table`` . - DynamoDB global secondary index - The resource type is ``index`` and the unique identifier is the index name. Example: ``table/my-table/index/my-table-index`` . - Aurora DB cluster - The resource type is ``cluster`` and the unique identifier is the cluster name. Example: ``cluster:my-db-cluster`` . - SageMaker endpoint variant - The resource type is ``variant`` and the unique identifier is the resource ID. Example: ``endpoint/my-end-point/variant/KMeansClustering`` . - Custom resources are not supported with a resource type. This parameter must specify the ``OutputValue`` from the CloudFormation template stack used to access the resources. The unique identifier is defined by the service provider. More information is available in our `GitHub repository <https://docs.aws.amazon.com/https://github.com/aws/aws-auto-scaling-custom-resource>`_ . - Amazon Comprehend document classification endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: ``arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE`` . - Amazon Comprehend entity recognizer endpoint - The resource type and unique identifier are specified using the endpoint ARN. Example: ``arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE`` . - Lambda provisioned concurrency - The resource type is ``function`` and the unique identifier is the function name with a function version or alias name suffix that is not ``$LATEST`` . Example: ``function:my-function:prod`` or ``function:my-function:1`` . - Amazon Keyspaces table - The resource type is ``table`` and the unique identifier is the table name. Example: ``keyspace/mykeyspace/table/mytable`` . - Amazon MSK cluster - The resource type and unique identifier are specified using the cluster ARN. Example: ``arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5`` . - Amazon ElastiCache replication group - The resource type is ``replication-group`` and the unique identifier is the replication group name. Example: ``replication-group/mycluster`` . - Neptune cluster - The resource type is ``cluster`` and the unique identifier is the cluster name. Example: ``cluster:mycluster`` . - SageMaker serverless endpoint - The resource type is ``variant`` and the unique identifier is the resource ID. Example: ``endpoint/my-end-point/variant/KMeansClustering`` . - SageMaker inference component - The resource type is ``inference-component`` and the unique identifier is the resource ID. Example: ``inference-component/my-inference-component`` . - Pool of WorkSpaces - The resource type is ``workspacespool`` and the unique identifier is the pool ID. Example: ``workspacespool/wspool-123456`` .
|
|
3554
4932
|
:param scalable_dimension: The scalable dimension. This string consists of the service namespace, resource type, and scaling property. - ``ecs:service:DesiredCount`` - The task count of an ECS service. - ``elasticmapreduce:instancegroup:InstanceCount`` - The instance count of an EMR Instance Group. - ``ec2:spot-fleet-request:TargetCapacity`` - The target capacity of a Spot Fleet. - ``appstream:fleet:DesiredCapacity`` - The capacity of an AppStream 2.0 fleet. - ``dynamodb:table:ReadCapacityUnits`` - The provisioned read capacity for a DynamoDB table. - ``dynamodb:table:WriteCapacityUnits`` - The provisioned write capacity for a DynamoDB table. - ``dynamodb:index:ReadCapacityUnits`` - The provisioned read capacity for a DynamoDB global secondary index. - ``dynamodb:index:WriteCapacityUnits`` - The provisioned write capacity for a DynamoDB global secondary index. - ``rds:cluster:ReadReplicaCount`` - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition. - ``sagemaker:variant:DesiredInstanceCount`` - The number of EC2 instances for a SageMaker model endpoint variant. - ``custom-resource:ResourceType:Property`` - The scalable dimension for a custom resource provided by your own application or service. - ``comprehend:document-classifier-endpoint:DesiredInferenceUnits`` - The number of inference units for an Amazon Comprehend document classification endpoint. - ``comprehend:entity-recognizer-endpoint:DesiredInferenceUnits`` - The number of inference units for an Amazon Comprehend entity recognizer endpoint. - ``lambda:function:ProvisionedConcurrency`` - The provisioned concurrency for a Lambda function. - ``cassandra:table:ReadCapacityUnits`` - The provisioned read capacity for an Amazon Keyspaces table. - ``cassandra:table:WriteCapacityUnits`` - The provisioned write capacity for an Amazon Keyspaces table. - ``kafka:broker-storage:VolumeSize`` - The provisioned volume size (in GiB) for brokers in an Amazon MSK cluster. - ``elasticache:replication-group:NodeGroups`` - The number of node groups for an Amazon ElastiCache replication group. - ``elasticache:replication-group:Replicas`` - The number of replicas per node group for an Amazon ElastiCache replication group. - ``neptune:cluster:ReadReplicaCount`` - The count of read replicas in an Amazon Neptune DB cluster. - ``sagemaker:variant:DesiredProvisionedConcurrency`` - The provisioned concurrency for a SageMaker serverless endpoint. - ``sagemaker:inference-component:DesiredCopyCount`` - The number of copies across an endpoint for a SageMaker inference component. - ``workspaces:workspacespool:DesiredUserSessions`` - The number of user sessions for the WorkSpaces in the pool.
|
|
3555
4933
|
:param scaling_target_id: The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the ``AWS::ApplicationAutoScaling::ScalableTarget`` resource. .. epigraph:: You must specify either the ``ScalingTargetId`` property, or the ``ResourceId`` , ``ScalableDimension`` , and ``ServiceNamespace`` properties, but not both.
|
|
@@ -3571,6 +4949,97 @@ class CfnScalingPolicyProps:
|
|
|
3571
4949
|
policy_type="policyType",
|
|
3572
4950
|
|
|
3573
4951
|
# the properties below are optional
|
|
4952
|
+
predictive_scaling_policy_configuration=appscaling.CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty(
|
|
4953
|
+
metric_specifications=[appscaling.CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty(
|
|
4954
|
+
target_value=123,
|
|
4955
|
+
|
|
4956
|
+
# the properties below are optional
|
|
4957
|
+
customized_capacity_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty(
|
|
4958
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
4959
|
+
expression="expression",
|
|
4960
|
+
id="id",
|
|
4961
|
+
label="label",
|
|
4962
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
4963
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
4964
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
4965
|
+
name="name",
|
|
4966
|
+
value="value"
|
|
4967
|
+
)],
|
|
4968
|
+
metric_name="metricName",
|
|
4969
|
+
namespace="namespace"
|
|
4970
|
+
),
|
|
4971
|
+
stat="stat",
|
|
4972
|
+
unit="unit"
|
|
4973
|
+
),
|
|
4974
|
+
return_data=False
|
|
4975
|
+
)]
|
|
4976
|
+
),
|
|
4977
|
+
customized_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty(
|
|
4978
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
4979
|
+
expression="expression",
|
|
4980
|
+
id="id",
|
|
4981
|
+
label="label",
|
|
4982
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
4983
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
4984
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
4985
|
+
name="name",
|
|
4986
|
+
value="value"
|
|
4987
|
+
)],
|
|
4988
|
+
metric_name="metricName",
|
|
4989
|
+
namespace="namespace"
|
|
4990
|
+
),
|
|
4991
|
+
stat="stat",
|
|
4992
|
+
unit="unit"
|
|
4993
|
+
),
|
|
4994
|
+
return_data=False
|
|
4995
|
+
)]
|
|
4996
|
+
),
|
|
4997
|
+
customized_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty(
|
|
4998
|
+
metric_data_queries=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty(
|
|
4999
|
+
expression="expression",
|
|
5000
|
+
id="id",
|
|
5001
|
+
label="label",
|
|
5002
|
+
metric_stat=appscaling.CfnScalingPolicy.PredictiveScalingMetricStatProperty(
|
|
5003
|
+
metric=appscaling.CfnScalingPolicy.PredictiveScalingMetricProperty(
|
|
5004
|
+
dimensions=[appscaling.CfnScalingPolicy.PredictiveScalingMetricDimensionProperty(
|
|
5005
|
+
name="name",
|
|
5006
|
+
value="value"
|
|
5007
|
+
)],
|
|
5008
|
+
metric_name="metricName",
|
|
5009
|
+
namespace="namespace"
|
|
5010
|
+
),
|
|
5011
|
+
stat="stat",
|
|
5012
|
+
unit="unit"
|
|
5013
|
+
),
|
|
5014
|
+
return_data=False
|
|
5015
|
+
)]
|
|
5016
|
+
),
|
|
5017
|
+
predefined_load_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty(
|
|
5018
|
+
predefined_metric_type="predefinedMetricType",
|
|
5019
|
+
|
|
5020
|
+
# the properties below are optional
|
|
5021
|
+
resource_label="resourceLabel"
|
|
5022
|
+
),
|
|
5023
|
+
predefined_metric_pair_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty(
|
|
5024
|
+
predefined_metric_type="predefinedMetricType",
|
|
5025
|
+
|
|
5026
|
+
# the properties below are optional
|
|
5027
|
+
resource_label="resourceLabel"
|
|
5028
|
+
),
|
|
5029
|
+
predefined_scaling_metric_specification=appscaling.CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty(
|
|
5030
|
+
predefined_metric_type="predefinedMetricType",
|
|
5031
|
+
|
|
5032
|
+
# the properties below are optional
|
|
5033
|
+
resource_label="resourceLabel"
|
|
5034
|
+
)
|
|
5035
|
+
)],
|
|
5036
|
+
|
|
5037
|
+
# the properties below are optional
|
|
5038
|
+
max_capacity_breach_behavior="maxCapacityBreachBehavior",
|
|
5039
|
+
max_capacity_buffer=123,
|
|
5040
|
+
mode="mode",
|
|
5041
|
+
scheduling_buffer_time=123
|
|
5042
|
+
),
|
|
3574
5043
|
resource_id="resourceId",
|
|
3575
5044
|
scalable_dimension="scalableDimension",
|
|
3576
5045
|
scaling_target_id="scalingTargetId",
|
|
@@ -3636,6 +5105,7 @@ class CfnScalingPolicyProps:
|
|
|
3636
5105
|
type_hints = typing.get_type_hints(_typecheckingstub__eabc9b9cdfb95f21a9439a9250c214148ffe31ecc08a87e6125ff826c886f42c)
|
|
3637
5106
|
check_type(argname="argument policy_name", value=policy_name, expected_type=type_hints["policy_name"])
|
|
3638
5107
|
check_type(argname="argument policy_type", value=policy_type, expected_type=type_hints["policy_type"])
|
|
5108
|
+
check_type(argname="argument predictive_scaling_policy_configuration", value=predictive_scaling_policy_configuration, expected_type=type_hints["predictive_scaling_policy_configuration"])
|
|
3639
5109
|
check_type(argname="argument resource_id", value=resource_id, expected_type=type_hints["resource_id"])
|
|
3640
5110
|
check_type(argname="argument scalable_dimension", value=scalable_dimension, expected_type=type_hints["scalable_dimension"])
|
|
3641
5111
|
check_type(argname="argument scaling_target_id", value=scaling_target_id, expected_type=type_hints["scaling_target_id"])
|
|
@@ -3646,6 +5116,8 @@ class CfnScalingPolicyProps:
|
|
|
3646
5116
|
"policy_name": policy_name,
|
|
3647
5117
|
"policy_type": policy_type,
|
|
3648
5118
|
}
|
|
5119
|
+
if predictive_scaling_policy_configuration is not None:
|
|
5120
|
+
self._values["predictive_scaling_policy_configuration"] = predictive_scaling_policy_configuration
|
|
3649
5121
|
if resource_id is not None:
|
|
3650
5122
|
self._values["resource_id"] = resource_id
|
|
3651
5123
|
if scalable_dimension is not None:
|
|
@@ -3687,6 +5159,16 @@ class CfnScalingPolicyProps:
|
|
|
3687
5159
|
assert result is not None, "Required property 'policy_type' is missing"
|
|
3688
5160
|
return typing.cast(builtins.str, result)
|
|
3689
5161
|
|
|
5162
|
+
@builtins.property
|
|
5163
|
+
def predictive_scaling_policy_configuration(
|
|
5164
|
+
self,
|
|
5165
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty]]:
|
|
5166
|
+
'''
|
|
5167
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-predictivescalingpolicyconfiguration
|
|
5168
|
+
'''
|
|
5169
|
+
result = self._values.get("predictive_scaling_policy_configuration")
|
|
5170
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty]], result)
|
|
5171
|
+
|
|
3690
5172
|
@builtins.property
|
|
3691
5173
|
def resource_id(self) -> typing.Optional[builtins.str]:
|
|
3692
5174
|
'''The identifier of the resource associated with the scaling policy.
|
|
@@ -6323,6 +7805,7 @@ def _typecheckingstub__1fdbd49d0d5c8d10cb6dba70c50d20e471988b2d94237a064669be24b
|
|
|
6323
7805
|
*,
|
|
6324
7806
|
policy_name: builtins.str,
|
|
6325
7807
|
policy_type: builtins.str,
|
|
7808
|
+
predictive_scaling_policy_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
6326
7809
|
resource_id: typing.Optional[builtins.str] = None,
|
|
6327
7810
|
scalable_dimension: typing.Optional[builtins.str] = None,
|
|
6328
7811
|
scaling_target_id: typing.Optional[builtins.str] = None,
|
|
@@ -6357,6 +7840,12 @@ def _typecheckingstub__64ceb2a355ff27a664253fe046aa1782da96620b29bc51aeb4cc3d41e
|
|
|
6357
7840
|
"""Type checking stubs"""
|
|
6358
7841
|
pass
|
|
6359
7842
|
|
|
7843
|
+
def _typecheckingstub__a8ff4907f03a84bc381a0bf64cc7a5454e5ac237c8f91eef6a31a3bb7ccceabb(
|
|
7844
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty]],
|
|
7845
|
+
) -> None:
|
|
7846
|
+
"""Type checking stubs"""
|
|
7847
|
+
pass
|
|
7848
|
+
|
|
6360
7849
|
def _typecheckingstub__471855b6df8fda8e34a03d46cd115dff8f7756d99f246dde133740f2be29f4c4(
|
|
6361
7850
|
value: typing.Optional[builtins.str],
|
|
6362
7851
|
) -> None:
|
|
@@ -6421,6 +7910,112 @@ def _typecheckingstub__006a90e58fd47516fb147d13d14740fcdcd4c98e1ffcee20b2746e63c
|
|
|
6421
7910
|
"""Type checking stubs"""
|
|
6422
7911
|
pass
|
|
6423
7912
|
|
|
7913
|
+
def _typecheckingstub__baf809a31130dc9f7046310d5551e4d1bc142c89cd1fb21ab0fece90cd2ef669(
|
|
7914
|
+
*,
|
|
7915
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
7916
|
+
) -> None:
|
|
7917
|
+
"""Type checking stubs"""
|
|
7918
|
+
pass
|
|
7919
|
+
|
|
7920
|
+
def _typecheckingstub__ac39ce2bb72379aa4920ed39bac91cdf3aa4ff447d41bf13801719c58eab7362(
|
|
7921
|
+
*,
|
|
7922
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
7923
|
+
) -> None:
|
|
7924
|
+
"""Type checking stubs"""
|
|
7925
|
+
pass
|
|
7926
|
+
|
|
7927
|
+
def _typecheckingstub__35c3daca56887d07a7f16cb4e42cd7ee2b3e51829f3cd7bea4e65022fc7eddb6(
|
|
7928
|
+
*,
|
|
7929
|
+
metric_data_queries: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
7930
|
+
) -> None:
|
|
7931
|
+
"""Type checking stubs"""
|
|
7932
|
+
pass
|
|
7933
|
+
|
|
7934
|
+
def _typecheckingstub__7cb94698782194f83da9ca6414a5ca1d6c86a5b368bafaae48a59aa90207ed6e(
|
|
7935
|
+
*,
|
|
7936
|
+
expression: typing.Optional[builtins.str] = None,
|
|
7937
|
+
id: typing.Optional[builtins.str] = None,
|
|
7938
|
+
label: typing.Optional[builtins.str] = None,
|
|
7939
|
+
metric_stat: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricStatProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7940
|
+
return_data: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7941
|
+
) -> None:
|
|
7942
|
+
"""Type checking stubs"""
|
|
7943
|
+
pass
|
|
7944
|
+
|
|
7945
|
+
def _typecheckingstub__7ccc47b2e2a5c048e3788cb9ab802a7d336f9313040d285e9600e27e4aac7530(
|
|
7946
|
+
*,
|
|
7947
|
+
name: typing.Optional[builtins.str] = None,
|
|
7948
|
+
value: typing.Optional[builtins.str] = None,
|
|
7949
|
+
) -> None:
|
|
7950
|
+
"""Type checking stubs"""
|
|
7951
|
+
pass
|
|
7952
|
+
|
|
7953
|
+
def _typecheckingstub__f0b4c5e65c6e655cdbc3a71099a7f7da3c2dbccf56465777a98264de1eb74f85(
|
|
7954
|
+
*,
|
|
7955
|
+
dimensions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricDimensionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
7956
|
+
metric_name: typing.Optional[builtins.str] = None,
|
|
7957
|
+
namespace: typing.Optional[builtins.str] = None,
|
|
7958
|
+
) -> None:
|
|
7959
|
+
"""Type checking stubs"""
|
|
7960
|
+
pass
|
|
7961
|
+
|
|
7962
|
+
def _typecheckingstub__f335e7dbac02e5d34252ec23dcd35d90e1872a21cb862e79274e27b4db9fe43d(
|
|
7963
|
+
*,
|
|
7964
|
+
target_value: jsii.Number,
|
|
7965
|
+
customized_capacity_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingCustomizedCapacityMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7966
|
+
customized_load_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingCustomizedLoadMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7967
|
+
customized_scaling_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingCustomizedScalingMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7968
|
+
predefined_load_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPredefinedLoadMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7969
|
+
predefined_metric_pair_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPredefinedMetricPairProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7970
|
+
predefined_scaling_metric_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPredefinedScalingMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7971
|
+
) -> None:
|
|
7972
|
+
"""Type checking stubs"""
|
|
7973
|
+
pass
|
|
7974
|
+
|
|
7975
|
+
def _typecheckingstub__d53af1f339feb5962e1705bee9b01c7d79acf6dc4927d3891f0bd6415f07b584(
|
|
7976
|
+
*,
|
|
7977
|
+
metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7978
|
+
stat: typing.Optional[builtins.str] = None,
|
|
7979
|
+
unit: typing.Optional[builtins.str] = None,
|
|
7980
|
+
) -> None:
|
|
7981
|
+
"""Type checking stubs"""
|
|
7982
|
+
pass
|
|
7983
|
+
|
|
7984
|
+
def _typecheckingstub__a024b2cdbcf20111811a18e787b7998d587e828c585bbe53e9448b30f36a847a(
|
|
7985
|
+
*,
|
|
7986
|
+
metric_specifications: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingMetricSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
7987
|
+
max_capacity_breach_behavior: typing.Optional[builtins.str] = None,
|
|
7988
|
+
max_capacity_buffer: typing.Optional[jsii.Number] = None,
|
|
7989
|
+
mode: typing.Optional[builtins.str] = None,
|
|
7990
|
+
scheduling_buffer_time: typing.Optional[jsii.Number] = None,
|
|
7991
|
+
) -> None:
|
|
7992
|
+
"""Type checking stubs"""
|
|
7993
|
+
pass
|
|
7994
|
+
|
|
7995
|
+
def _typecheckingstub__0bb7634203f8476604909d001544c9b836ba5d194e9a327c1241da9a9e962b52(
|
|
7996
|
+
*,
|
|
7997
|
+
predefined_metric_type: builtins.str,
|
|
7998
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
7999
|
+
) -> None:
|
|
8000
|
+
"""Type checking stubs"""
|
|
8001
|
+
pass
|
|
8002
|
+
|
|
8003
|
+
def _typecheckingstub__19e838d5ee35da6e163a6c82692435e1c4fccbdfba878fa19dfc5269dfc85d11(
|
|
8004
|
+
*,
|
|
8005
|
+
predefined_metric_type: builtins.str,
|
|
8006
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
8007
|
+
) -> None:
|
|
8008
|
+
"""Type checking stubs"""
|
|
8009
|
+
pass
|
|
8010
|
+
|
|
8011
|
+
def _typecheckingstub__a97590b84b4d83fa36cc26f5970df44f2c84513403b6eb5b15cc94570c24d547(
|
|
8012
|
+
*,
|
|
8013
|
+
predefined_metric_type: builtins.str,
|
|
8014
|
+
resource_label: typing.Optional[builtins.str] = None,
|
|
8015
|
+
) -> None:
|
|
8016
|
+
"""Type checking stubs"""
|
|
8017
|
+
pass
|
|
8018
|
+
|
|
6424
8019
|
def _typecheckingstub__3a06f512f9ba96f90127c3ef28f9aaa4ff2dd9349ab6fe34199dccd68563dfbe(
|
|
6425
8020
|
*,
|
|
6426
8021
|
scaling_adjustment: jsii.Number,
|
|
@@ -6494,6 +8089,7 @@ def _typecheckingstub__eabc9b9cdfb95f21a9439a9250c214148ffe31ecc08a87e6125ff826c
|
|
|
6494
8089
|
*,
|
|
6495
8090
|
policy_name: builtins.str,
|
|
6496
8091
|
policy_type: builtins.str,
|
|
8092
|
+
predictive_scaling_policy_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnScalingPolicy.PredictiveScalingPolicyConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
6497
8093
|
resource_id: typing.Optional[builtins.str] = None,
|
|
6498
8094
|
scalable_dimension: typing.Optional[builtins.str] = None,
|
|
6499
8095
|
scaling_target_id: typing.Optional[builtins.str] = None,
|