aws-cdk-lib 2.213.0__py3-none-any.whl → 2.214.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 +23 -3
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.213.0.jsii.tgz → aws-cdk-lib@2.214.0.jsii.tgz} +0 -0
- aws_cdk/aws_appconfig/__init__.py +18 -6
- aws_cdk/aws_appintegrations/__init__.py +4 -4
- aws_cdk/aws_apprunner/__init__.py +5 -8
- aws_cdk/aws_aps/__init__.py +243 -10
- aws_cdk/aws_b2bi/__init__.py +1015 -128
- aws_cdk/aws_batch/__init__.py +33 -11
- aws_cdk/aws_bedrock/__init__.py +22 -216
- aws_cdk/aws_budgets/__init__.py +18 -0
- aws_cdk/aws_certificatemanager/__init__.py +96 -15
- aws_cdk/aws_cloudformation/__init__.py +3 -3
- aws_cdk/aws_cloudwatch/__init__.py +80 -49
- aws_cdk/aws_cognito/__init__.py +76 -5
- aws_cdk/aws_connect/__init__.py +188 -2
- aws_cdk/aws_datazone/__init__.py +2267 -0
- aws_cdk/aws_deadline/__init__.py +6 -5
- aws_cdk/aws_dynamodb/__init__.py +27 -16
- aws_cdk/aws_ec2/__init__.py +51 -10
- aws_cdk/aws_ecs/__init__.py +288 -25
- aws_cdk/aws_ecs_patterns/__init__.py +2 -0
- aws_cdk/aws_eks/__init__.py +124 -0
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +6 -2
- aws_cdk/aws_entityresolution/__init__.py +107 -0
- aws_cdk/aws_events/__init__.py +153 -55
- aws_cdk/aws_events_targets/__init__.py +87 -36
- aws_cdk/aws_fsx/__init__.py +62 -0
- aws_cdk/aws_gameliftstreams/__init__.py +1 -1
- aws_cdk/aws_glue/__init__.py +205 -23
- aws_cdk/aws_guardduty/__init__.py +205 -100
- aws_cdk/aws_iam/__init__.py +24 -21
- aws_cdk/aws_inspectorv2/__init__.py +125 -80
- aws_cdk/aws_iot/__init__.py +37 -19
- aws_cdk/aws_iotsitewise/__init__.py +111 -75
- aws_cdk/aws_ivs/__init__.py +17 -17
- aws_cdk/aws_kinesisanalytics/__init__.py +122 -3
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +122 -3
- aws_cdk/aws_lambda/__init__.py +23 -2
- aws_cdk/aws_logs/__init__.py +20 -15
- aws_cdk/aws_mediapackagev2/__init__.py +2 -2
- aws_cdk/aws_networkfirewall/__init__.py +6 -6
- aws_cdk/aws_omics/__init__.py +477 -2
- aws_cdk/aws_qbusiness/__init__.py +4 -2
- aws_cdk/aws_rds/__init__.py +132 -4
- aws_cdk/aws_route53/__init__.py +18 -11
- aws_cdk/aws_s3/__init__.py +4 -4
- aws_cdk/aws_s3_deployment/__init__.py +45 -0
- aws_cdk/aws_sagemaker/__init__.py +653 -0
- aws_cdk/aws_servicediscovery/__init__.py +22 -37
- aws_cdk/aws_sns/__init__.py +12 -2
- aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
- aws_cdk/aws_sqs/__init__.py +5 -5
- aws_cdk/aws_ssm/__init__.py +8 -3
- aws_cdk/aws_ssmquicksetup/__init__.py +2 -2
- aws_cdk/aws_synthetics/__init__.py +222 -12
- aws_cdk/aws_transfer/__init__.py +15 -2
- aws_cdk/aws_vpclattice/__init__.py +41 -0
- aws_cdk/aws_workspacesweb/__init__.py +71 -41
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/METADATA +2 -2
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/RECORD +65 -65
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.213.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ecs/__init__.py
CHANGED
|
@@ -2011,7 +2011,10 @@ volume_from_snapshot = ecs.ServiceManagedVolume(self, "EBSVolume",
|
|
|
2011
2011
|
managed_eBSVolume=ecs.ServiceManagedEBSVolumeConfiguration(
|
|
2012
2012
|
snap_shot_id="snap-066877671789bd71b",
|
|
2013
2013
|
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
2014
|
-
file_system_type=ecs.FileSystemType.XFS
|
|
2014
|
+
file_system_type=ecs.FileSystemType.XFS,
|
|
2015
|
+
# Specifies the Amazon EBS Provisioned Rate for Volume Initialization.
|
|
2016
|
+
# Valid range is between 100 and 300 MiB/s.
|
|
2017
|
+
volume_initialization_rate=Size.mebibytes(200)
|
|
2015
2018
|
)
|
|
2016
2019
|
)
|
|
2017
2020
|
|
|
@@ -7527,9 +7530,9 @@ class CfnCluster(
|
|
|
7527
7530
|
|
|
7528
7531
|
When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
|
|
7529
7532
|
|
|
7530
|
-
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
7533
|
+
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used. Base value characteristics: - Only one capacity provider in a strategy can have a base defined - Default value is ``0`` if not specified - Valid range: 0 to 100,000 - Base requirements are satisfied first before weight distribution
|
|
7531
7534
|
:param capacity_provider: The short name of the capacity provider.
|
|
7532
|
-
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
7535
|
+
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail. Weight value characteristics: - Weight is considered after the base value is satisfied - Default value is ``0`` if not specified - Valid range: 0 to 1,000 - At least one capacity provider must have a weight greater than zero - Capacity providers with weight of ``0`` cannot place tasks Task distribution logic: - Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider - Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios Examples: Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met. Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
7533
7536
|
|
|
7534
7537
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html
|
|
7535
7538
|
:exampleMetadata: fixture=_generated
|
|
@@ -7561,10 +7564,17 @@ class CfnCluster(
|
|
|
7561
7564
|
|
|
7562
7565
|
@builtins.property
|
|
7563
7566
|
def base(self) -> typing.Optional[jsii.Number]:
|
|
7564
|
-
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider.
|
|
7567
|
+
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service.
|
|
7565
7568
|
|
|
7566
7569
|
Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
7567
7570
|
|
|
7571
|
+
Base value characteristics:
|
|
7572
|
+
|
|
7573
|
+
- Only one capacity provider in a strategy can have a base defined
|
|
7574
|
+
- Default value is ``0`` if not specified
|
|
7575
|
+
- Valid range: 0 to 100,000
|
|
7576
|
+
- Base requirements are satisfied first before weight distribution
|
|
7577
|
+
|
|
7568
7578
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html#cfn-ecs-cluster-capacityproviderstrategyitem-base
|
|
7569
7579
|
'''
|
|
7570
7580
|
result = self._values.get("base")
|
|
@@ -7587,7 +7597,24 @@ class CfnCluster(
|
|
|
7587
7597
|
|
|
7588
7598
|
If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
7589
7599
|
|
|
7590
|
-
|
|
7600
|
+
Weight value characteristics:
|
|
7601
|
+
|
|
7602
|
+
- Weight is considered after the base value is satisfied
|
|
7603
|
+
- Default value is ``0`` if not specified
|
|
7604
|
+
- Valid range: 0 to 1,000
|
|
7605
|
+
- At least one capacity provider must have a weight greater than zero
|
|
7606
|
+
- Capacity providers with weight of ``0`` cannot place tasks
|
|
7607
|
+
|
|
7608
|
+
Task distribution logic:
|
|
7609
|
+
|
|
7610
|
+
- Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider
|
|
7611
|
+
- Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios
|
|
7612
|
+
|
|
7613
|
+
Examples:
|
|
7614
|
+
|
|
7615
|
+
Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met.
|
|
7616
|
+
|
|
7617
|
+
Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
7591
7618
|
|
|
7592
7619
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-capacityproviderstrategyitem.html#cfn-ecs-cluster-capacityproviderstrategyitem-weight
|
|
7593
7620
|
'''
|
|
@@ -8328,8 +8355,8 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
8328
8355
|
When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
|
|
8329
8356
|
|
|
8330
8357
|
:param capacity_provider: The short name of the capacity provider.
|
|
8331
|
-
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
8332
|
-
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
8358
|
+
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used. Base value characteristics: - Only one capacity provider in a strategy can have a base defined - Default value is ``0`` if not specified - Valid range: 0 to 100,000 - Base requirements are satisfied first before weight distribution
|
|
8359
|
+
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail. Weight value characteristics: - Weight is considered after the base value is satisfied - Default value is ``0`` if not specified - Valid range: 0 to 1,000 - At least one capacity provider must have a weight greater than zero - Capacity providers with weight of ``0`` cannot place tasks Task distribution logic: - Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider - Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios Examples: Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met. Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
8333
8360
|
|
|
8334
8361
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-clustercapacityproviderassociations-capacityproviderstrategy.html
|
|
8335
8362
|
:exampleMetadata: fixture=_generated
|
|
@@ -8373,10 +8400,17 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
8373
8400
|
|
|
8374
8401
|
@builtins.property
|
|
8375
8402
|
def base(self) -> typing.Optional[jsii.Number]:
|
|
8376
|
-
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider.
|
|
8403
|
+
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service.
|
|
8377
8404
|
|
|
8378
8405
|
Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
8379
8406
|
|
|
8407
|
+
Base value characteristics:
|
|
8408
|
+
|
|
8409
|
+
- Only one capacity provider in a strategy can have a base defined
|
|
8410
|
+
- Default value is ``0`` if not specified
|
|
8411
|
+
- Valid range: 0 to 100,000
|
|
8412
|
+
- Base requirements are satisfied first before weight distribution
|
|
8413
|
+
|
|
8380
8414
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-clustercapacityproviderassociations-capacityproviderstrategy.html#cfn-ecs-clustercapacityproviderassociations-capacityproviderstrategy-base
|
|
8381
8415
|
'''
|
|
8382
8416
|
result = self._values.get("base")
|
|
@@ -8390,7 +8424,24 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
8390
8424
|
|
|
8391
8425
|
If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
8392
8426
|
|
|
8393
|
-
|
|
8427
|
+
Weight value characteristics:
|
|
8428
|
+
|
|
8429
|
+
- Weight is considered after the base value is satisfied
|
|
8430
|
+
- Default value is ``0`` if not specified
|
|
8431
|
+
- Valid range: 0 to 1,000
|
|
8432
|
+
- At least one capacity provider must have a weight greater than zero
|
|
8433
|
+
- Capacity providers with weight of ``0`` cannot place tasks
|
|
8434
|
+
|
|
8435
|
+
Task distribution logic:
|
|
8436
|
+
|
|
8437
|
+
- Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider
|
|
8438
|
+
- Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios
|
|
8439
|
+
|
|
8440
|
+
Examples:
|
|
8441
|
+
|
|
8442
|
+
Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met.
|
|
8443
|
+
|
|
8444
|
+
Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
8394
8445
|
|
|
8395
8446
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-clustercapacityproviderassociations-capacityproviderstrategy.html#cfn-ecs-clustercapacityproviderassociations-capacityproviderstrategy-weight
|
|
8396
8447
|
'''
|
|
@@ -9038,6 +9089,12 @@ class CfnService(
|
|
|
9038
9089
|
desired_count=123,
|
|
9039
9090
|
enable_ecs_managed_tags=False,
|
|
9040
9091
|
enable_execute_command=False,
|
|
9092
|
+
force_new_deployment=ecs.CfnService.ForceNewDeploymentProperty(
|
|
9093
|
+
enable_force_new_deployment=False,
|
|
9094
|
+
|
|
9095
|
+
# the properties below are optional
|
|
9096
|
+
force_new_deployment_nonce="forceNewDeploymentNonce"
|
|
9097
|
+
),
|
|
9041
9098
|
health_check_grace_period_seconds=123,
|
|
9042
9099
|
launch_type="launchType",
|
|
9043
9100
|
load_balancers=[ecs.CfnService.LoadBalancerProperty(
|
|
@@ -9191,6 +9248,7 @@ class CfnService(
|
|
|
9191
9248
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
9192
9249
|
enable_ecs_managed_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
9193
9250
|
enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
9251
|
+
force_new_deployment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnService.ForceNewDeploymentProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
9194
9252
|
health_check_grace_period_seconds: typing.Optional[jsii.Number] = None,
|
|
9195
9253
|
launch_type: typing.Optional[builtins.str] = None,
|
|
9196
9254
|
load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnService.LoadBalancerProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
@@ -9212,7 +9270,7 @@ class CfnService(
|
|
|
9212
9270
|
'''
|
|
9213
9271
|
:param scope: Scope in which this resource is defined.
|
|
9214
9272
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
9215
|
-
:param availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. For more information, see `Balancing an Amazon ECS service across Availability Zones <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html>`_ in the **Amazon Elastic Container Service Developer Guide** . Default: - "
|
|
9273
|
+
:param availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. For more information, see `Balancing an Amazon ECS service across Availability Zones <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html>`_ in the **Amazon Elastic Container Service Developer Guide** . Default: - "DISABLED"
|
|
9216
9274
|
:param capacity_provider_strategy: The capacity provider strategy to use for the service. If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy can contain a maximum of 20 capacity providers. .. epigraph:: To remove this property from your service resource, specify an empty ``CapacityProviderStrategyItem`` array.
|
|
9217
9275
|
:param cluster: The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed.
|
|
9218
9276
|
:param deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.
|
|
@@ -9220,6 +9278,7 @@ class CfnService(
|
|
|
9220
9278
|
:param desired_count: The number of instantiations of the specified task definition to place and keep running in your service. For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required. For existing services, if a desired count is not specified, it is omitted from the operation.
|
|
9221
9279
|
:param enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see `Tagging your Amazon ECS resources <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html>`_ in the *Amazon Elastic Container Service Developer Guide* . When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.
|
|
9222
9280
|
:param enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true`` , the execute command functionality is turned on for all containers in tasks as part of the service.
|
|
9281
|
+
:param force_new_deployment: Determines whether to force a new deployment of the service. By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination ( ``my_image:latest`` ) or to roll Fargate tasks onto a newer platform version.
|
|
9223
9282
|
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.
|
|
9224
9283
|
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
9225
9284
|
:param load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see `Service Load Balancing <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: To remove this property from your service resource, specify an empty ``LoadBalancer`` array.
|
|
@@ -9251,6 +9310,7 @@ class CfnService(
|
|
|
9251
9310
|
desired_count=desired_count,
|
|
9252
9311
|
enable_ecs_managed_tags=enable_ecs_managed_tags,
|
|
9253
9312
|
enable_execute_command=enable_execute_command,
|
|
9313
|
+
force_new_deployment=force_new_deployment,
|
|
9254
9314
|
health_check_grace_period_seconds=health_check_grace_period_seconds,
|
|
9255
9315
|
launch_type=launch_type,
|
|
9256
9316
|
load_balancers=load_balancers,
|
|
@@ -9465,6 +9525,24 @@ class CfnService(
|
|
|
9465
9525
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
9466
9526
|
jsii.set(self, "enableExecuteCommand", value) # pyright: ignore[reportArgumentType]
|
|
9467
9527
|
|
|
9528
|
+
@builtins.property
|
|
9529
|
+
@jsii.member(jsii_name="forceNewDeployment")
|
|
9530
|
+
def force_new_deployment(
|
|
9531
|
+
self,
|
|
9532
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnService.ForceNewDeploymentProperty"]]:
|
|
9533
|
+
'''Determines whether to force a new deployment of the service.'''
|
|
9534
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnService.ForceNewDeploymentProperty"]], jsii.get(self, "forceNewDeployment"))
|
|
9535
|
+
|
|
9536
|
+
@force_new_deployment.setter
|
|
9537
|
+
def force_new_deployment(
|
|
9538
|
+
self,
|
|
9539
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnService.ForceNewDeploymentProperty"]],
|
|
9540
|
+
) -> None:
|
|
9541
|
+
if __debug__:
|
|
9542
|
+
type_hints = typing.get_type_hints(_typecheckingstub__30697d792a144902af8d5ce8bec3db2e9ebb612ed4d71a72a5ee98dcace27fce)
|
|
9543
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
9544
|
+
jsii.set(self, "forceNewDeployment", value) # pyright: ignore[reportArgumentType]
|
|
9545
|
+
|
|
9468
9546
|
@builtins.property
|
|
9469
9547
|
@jsii.member(jsii_name="healthCheckGracePeriodSeconds")
|
|
9470
9548
|
def health_check_grace_period_seconds(self) -> typing.Optional[jsii.Number]:
|
|
@@ -9978,9 +10056,9 @@ class CfnService(
|
|
|
9978
10056
|
|
|
9979
10057
|
To use an AWS Fargate capacity provider, specify either the ``FARGATE`` or ``FARGATE_SPOT`` capacity providers. The AWS Fargate capacity providers are available to all accounts and only need to be associated with a cluster to be used in a capacity provider strategy.
|
|
9980
10058
|
|
|
9981
|
-
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
10059
|
+
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used. Base value characteristics: - Only one capacity provider in a strategy can have a base defined - Default value is ``0`` if not specified - Valid range: 0 to 100,000 - Base requirements are satisfied first before weight distribution
|
|
9982
10060
|
:param capacity_provider: The short name of the capacity provider.
|
|
9983
|
-
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
10061
|
+
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail. Weight value characteristics: - Weight is considered after the base value is satisfied - Default value is ``0`` if not specified - Valid range: 0 to 1,000 - At least one capacity provider must have a weight greater than zero - Capacity providers with weight of ``0`` cannot place tasks Task distribution logic: - Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider - Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios Examples: Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met. Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
9984
10062
|
|
|
9985
10063
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html
|
|
9986
10064
|
:exampleMetadata: fixture=_generated
|
|
@@ -10012,10 +10090,17 @@ class CfnService(
|
|
|
10012
10090
|
|
|
10013
10091
|
@builtins.property
|
|
10014
10092
|
def base(self) -> typing.Optional[jsii.Number]:
|
|
10015
|
-
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider.
|
|
10093
|
+
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service.
|
|
10016
10094
|
|
|
10017
10095
|
Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
10018
10096
|
|
|
10097
|
+
Base value characteristics:
|
|
10098
|
+
|
|
10099
|
+
- Only one capacity provider in a strategy can have a base defined
|
|
10100
|
+
- Default value is ``0`` if not specified
|
|
10101
|
+
- Valid range: 0 to 100,000
|
|
10102
|
+
- Base requirements are satisfied first before weight distribution
|
|
10103
|
+
|
|
10019
10104
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-base
|
|
10020
10105
|
'''
|
|
10021
10106
|
result = self._values.get("base")
|
|
@@ -10038,7 +10123,24 @@ class CfnService(
|
|
|
10038
10123
|
|
|
10039
10124
|
If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
10040
10125
|
|
|
10041
|
-
|
|
10126
|
+
Weight value characteristics:
|
|
10127
|
+
|
|
10128
|
+
- Weight is considered after the base value is satisfied
|
|
10129
|
+
- Default value is ``0`` if not specified
|
|
10130
|
+
- Valid range: 0 to 1,000
|
|
10131
|
+
- At least one capacity provider must have a weight greater than zero
|
|
10132
|
+
- Capacity providers with weight of ``0`` cannot place tasks
|
|
10133
|
+
|
|
10134
|
+
Task distribution logic:
|
|
10135
|
+
|
|
10136
|
+
- Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider
|
|
10137
|
+
- Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios
|
|
10138
|
+
|
|
10139
|
+
Examples:
|
|
10140
|
+
|
|
10141
|
+
Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met.
|
|
10142
|
+
|
|
10143
|
+
Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
10042
10144
|
|
|
10043
10145
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-weight
|
|
10044
10146
|
'''
|
|
@@ -10793,6 +10895,81 @@ class CfnService(
|
|
|
10793
10895
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
10794
10896
|
)
|
|
10795
10897
|
|
|
10898
|
+
@jsii.data_type(
|
|
10899
|
+
jsii_type="aws-cdk-lib.aws_ecs.CfnService.ForceNewDeploymentProperty",
|
|
10900
|
+
jsii_struct_bases=[],
|
|
10901
|
+
name_mapping={
|
|
10902
|
+
"enable_force_new_deployment": "enableForceNewDeployment",
|
|
10903
|
+
"force_new_deployment_nonce": "forceNewDeploymentNonce",
|
|
10904
|
+
},
|
|
10905
|
+
)
|
|
10906
|
+
class ForceNewDeploymentProperty:
|
|
10907
|
+
def __init__(
|
|
10908
|
+
self,
|
|
10909
|
+
*,
|
|
10910
|
+
enable_force_new_deployment: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
10911
|
+
force_new_deployment_nonce: typing.Optional[builtins.str] = None,
|
|
10912
|
+
) -> None:
|
|
10913
|
+
'''
|
|
10914
|
+
:param enable_force_new_deployment:
|
|
10915
|
+
:param force_new_deployment_nonce:
|
|
10916
|
+
|
|
10917
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-forcenewdeployment.html
|
|
10918
|
+
:exampleMetadata: fixture=_generated
|
|
10919
|
+
|
|
10920
|
+
Example::
|
|
10921
|
+
|
|
10922
|
+
# The code below shows an example of how to instantiate this type.
|
|
10923
|
+
# The values are placeholders you should change.
|
|
10924
|
+
from aws_cdk import aws_ecs as ecs
|
|
10925
|
+
|
|
10926
|
+
force_new_deployment_property = ecs.CfnService.ForceNewDeploymentProperty(
|
|
10927
|
+
enable_force_new_deployment=False,
|
|
10928
|
+
|
|
10929
|
+
# the properties below are optional
|
|
10930
|
+
force_new_deployment_nonce="forceNewDeploymentNonce"
|
|
10931
|
+
)
|
|
10932
|
+
'''
|
|
10933
|
+
if __debug__:
|
|
10934
|
+
type_hints = typing.get_type_hints(_typecheckingstub__61f79b8cfbfd89da452531f374d2c8ed25d98693945205dbbe670de811c5ed06)
|
|
10935
|
+
check_type(argname="argument enable_force_new_deployment", value=enable_force_new_deployment, expected_type=type_hints["enable_force_new_deployment"])
|
|
10936
|
+
check_type(argname="argument force_new_deployment_nonce", value=force_new_deployment_nonce, expected_type=type_hints["force_new_deployment_nonce"])
|
|
10937
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
10938
|
+
"enable_force_new_deployment": enable_force_new_deployment,
|
|
10939
|
+
}
|
|
10940
|
+
if force_new_deployment_nonce is not None:
|
|
10941
|
+
self._values["force_new_deployment_nonce"] = force_new_deployment_nonce
|
|
10942
|
+
|
|
10943
|
+
@builtins.property
|
|
10944
|
+
def enable_force_new_deployment(
|
|
10945
|
+
self,
|
|
10946
|
+
) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
|
|
10947
|
+
'''
|
|
10948
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-forcenewdeployment.html#cfn-ecs-service-forcenewdeployment-enableforcenewdeployment
|
|
10949
|
+
'''
|
|
10950
|
+
result = self._values.get("enable_force_new_deployment")
|
|
10951
|
+
assert result is not None, "Required property 'enable_force_new_deployment' is missing"
|
|
10952
|
+
return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
|
|
10953
|
+
|
|
10954
|
+
@builtins.property
|
|
10955
|
+
def force_new_deployment_nonce(self) -> typing.Optional[builtins.str]:
|
|
10956
|
+
'''
|
|
10957
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-forcenewdeployment.html#cfn-ecs-service-forcenewdeployment-forcenewdeploymentnonce
|
|
10958
|
+
'''
|
|
10959
|
+
result = self._values.get("force_new_deployment_nonce")
|
|
10960
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
10961
|
+
|
|
10962
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
10963
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
10964
|
+
|
|
10965
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
10966
|
+
return not (rhs == self)
|
|
10967
|
+
|
|
10968
|
+
def __repr__(self) -> str:
|
|
10969
|
+
return "ForceNewDeploymentProperty(%s)" % ", ".join(
|
|
10970
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
10971
|
+
)
|
|
10972
|
+
|
|
10796
10973
|
@jsii.data_type(
|
|
10797
10974
|
jsii_type="aws-cdk-lib.aws_ecs.CfnService.LoadBalancerProperty",
|
|
10798
10975
|
jsii_struct_bases=[],
|
|
@@ -10980,7 +11157,7 @@ class CfnService(
|
|
|
10980
11157
|
- For tasks that are on AWS Fargate , because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.
|
|
10981
11158
|
|
|
10982
11159
|
:param log_driver: The log driver to use for the container. For tasks on AWS Fargate , the supported log drivers are ``awslogs`` , ``splunk`` , and ``awsfirelens`` . For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``syslog`` , ``splunk`` , and ``awsfirelens`` . For more information about using the ``awslogs`` log driver, see `Send Amazon ECS logs to CloudWatch <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html>`_ in the *Amazon Elastic Container Service Developer Guide* . For more information about using the ``awsfirelens`` log driver, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ . .. epigraph:: If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.
|
|
10983
|
-
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``non-blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS changed the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``
|
|
11160
|
+
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``non-blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS changed the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``10m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
10984
11161
|
:param secret_options: The secrets to pass to the log configuration. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
10985
11162
|
|
|
10986
11163
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-logconfiguration.html
|
|
@@ -11117,7 +11294,7 @@ class CfnService(
|
|
|
11117
11294
|
|
|
11118
11295
|
- **max-buffer-size** - Required: No
|
|
11119
11296
|
|
|
11120
|
-
Default value: ``
|
|
11297
|
+
Default value: ``10m``
|
|
11121
11298
|
|
|
11122
11299
|
When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.
|
|
11123
11300
|
|
|
@@ -13020,6 +13197,7 @@ class CfnService(
|
|
|
13020
13197
|
"desired_count": "desiredCount",
|
|
13021
13198
|
"enable_ecs_managed_tags": "enableEcsManagedTags",
|
|
13022
13199
|
"enable_execute_command": "enableExecuteCommand",
|
|
13200
|
+
"force_new_deployment": "forceNewDeployment",
|
|
13023
13201
|
"health_check_grace_period_seconds": "healthCheckGracePeriodSeconds",
|
|
13024
13202
|
"launch_type": "launchType",
|
|
13025
13203
|
"load_balancers": "loadBalancers",
|
|
@@ -13051,6 +13229,7 @@ class CfnServiceProps:
|
|
|
13051
13229
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
13052
13230
|
enable_ecs_managed_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
13053
13231
|
enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
13232
|
+
force_new_deployment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.ForceNewDeploymentProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13054
13233
|
health_check_grace_period_seconds: typing.Optional[jsii.Number] = None,
|
|
13055
13234
|
launch_type: typing.Optional[builtins.str] = None,
|
|
13056
13235
|
load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
@@ -13071,7 +13250,7 @@ class CfnServiceProps:
|
|
|
13071
13250
|
) -> None:
|
|
13072
13251
|
'''Properties for defining a ``CfnService``.
|
|
13073
13252
|
|
|
13074
|
-
:param availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. For more information, see `Balancing an Amazon ECS service across Availability Zones <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html>`_ in the **Amazon Elastic Container Service Developer Guide** . Default: - "
|
|
13253
|
+
:param availability_zone_rebalancing: Indicates whether to use Availability Zone rebalancing for the service. For more information, see `Balancing an Amazon ECS service across Availability Zones <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html>`_ in the **Amazon Elastic Container Service Developer Guide** . Default: - "DISABLED"
|
|
13075
13254
|
:param capacity_provider_strategy: The capacity provider strategy to use for the service. If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy can contain a maximum of 20 capacity providers. .. epigraph:: To remove this property from your service resource, specify an empty ``CapacityProviderStrategyItem`` array.
|
|
13076
13255
|
:param cluster: The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed.
|
|
13077
13256
|
:param deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.
|
|
@@ -13079,6 +13258,7 @@ class CfnServiceProps:
|
|
|
13079
13258
|
:param desired_count: The number of instantiations of the specified task definition to place and keep running in your service. For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required. For existing services, if a desired count is not specified, it is omitted from the operation.
|
|
13080
13259
|
:param enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see `Tagging your Amazon ECS resources <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html>`_ in the *Amazon Elastic Container Service Developer Guide* . When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.
|
|
13081
13260
|
:param enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true`` , the execute command functionality is turned on for all containers in tasks as part of the service.
|
|
13261
|
+
:param force_new_deployment: Determines whether to force a new deployment of the service. By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination ( ``my_image:latest`` ) or to roll Fargate tasks onto a newer platform version.
|
|
13082
13262
|
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.
|
|
13083
13263
|
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
13084
13264
|
:param load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see `Service Load Balancing <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: To remove this property from your service resource, specify an empty ``LoadBalancer`` array.
|
|
@@ -13140,6 +13320,12 @@ class CfnServiceProps:
|
|
|
13140
13320
|
desired_count=123,
|
|
13141
13321
|
enable_ecs_managed_tags=False,
|
|
13142
13322
|
enable_execute_command=False,
|
|
13323
|
+
force_new_deployment=ecs.CfnService.ForceNewDeploymentProperty(
|
|
13324
|
+
enable_force_new_deployment=False,
|
|
13325
|
+
|
|
13326
|
+
# the properties below are optional
|
|
13327
|
+
force_new_deployment_nonce="forceNewDeploymentNonce"
|
|
13328
|
+
),
|
|
13143
13329
|
health_check_grace_period_seconds=123,
|
|
13144
13330
|
launch_type="launchType",
|
|
13145
13331
|
load_balancers=[ecs.CfnService.LoadBalancerProperty(
|
|
@@ -13289,6 +13475,7 @@ class CfnServiceProps:
|
|
|
13289
13475
|
check_type(argname="argument desired_count", value=desired_count, expected_type=type_hints["desired_count"])
|
|
13290
13476
|
check_type(argname="argument enable_ecs_managed_tags", value=enable_ecs_managed_tags, expected_type=type_hints["enable_ecs_managed_tags"])
|
|
13291
13477
|
check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
|
|
13478
|
+
check_type(argname="argument force_new_deployment", value=force_new_deployment, expected_type=type_hints["force_new_deployment"])
|
|
13292
13479
|
check_type(argname="argument health_check_grace_period_seconds", value=health_check_grace_period_seconds, expected_type=type_hints["health_check_grace_period_seconds"])
|
|
13293
13480
|
check_type(argname="argument launch_type", value=launch_type, expected_type=type_hints["launch_type"])
|
|
13294
13481
|
check_type(argname="argument load_balancers", value=load_balancers, expected_type=type_hints["load_balancers"])
|
|
@@ -13323,6 +13510,8 @@ class CfnServiceProps:
|
|
|
13323
13510
|
self._values["enable_ecs_managed_tags"] = enable_ecs_managed_tags
|
|
13324
13511
|
if enable_execute_command is not None:
|
|
13325
13512
|
self._values["enable_execute_command"] = enable_execute_command
|
|
13513
|
+
if force_new_deployment is not None:
|
|
13514
|
+
self._values["force_new_deployment"] = force_new_deployment
|
|
13326
13515
|
if health_check_grace_period_seconds is not None:
|
|
13327
13516
|
self._values["health_check_grace_period_seconds"] = health_check_grace_period_seconds
|
|
13328
13517
|
if launch_type is not None:
|
|
@@ -13364,7 +13553,7 @@ class CfnServiceProps:
|
|
|
13364
13553
|
|
|
13365
13554
|
For more information, see `Balancing an Amazon ECS service across Availability Zones <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html>`_ in the **Amazon Elastic Container Service Developer Guide** .
|
|
13366
13555
|
|
|
13367
|
-
:default: - "
|
|
13556
|
+
:default: - "DISABLED"
|
|
13368
13557
|
|
|
13369
13558
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-availabilityzonerebalancing
|
|
13370
13559
|
'''
|
|
@@ -13463,6 +13652,19 @@ class CfnServiceProps:
|
|
|
13463
13652
|
result = self._values.get("enable_execute_command")
|
|
13464
13653
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
13465
13654
|
|
|
13655
|
+
@builtins.property
|
|
13656
|
+
def force_new_deployment(
|
|
13657
|
+
self,
|
|
13658
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnService.ForceNewDeploymentProperty]]:
|
|
13659
|
+
'''Determines whether to force a new deployment of the service.
|
|
13660
|
+
|
|
13661
|
+
By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination ( ``my_image:latest`` ) or to roll Fargate tasks onto a newer platform version.
|
|
13662
|
+
|
|
13663
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-forcenewdeployment
|
|
13664
|
+
'''
|
|
13665
|
+
result = self._values.get("force_new_deployment")
|
|
13666
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnService.ForceNewDeploymentProperty]], result)
|
|
13667
|
+
|
|
13466
13668
|
@builtins.property
|
|
13467
13669
|
def health_check_grace_period_seconds(self) -> typing.Optional[jsii.Number]:
|
|
13468
13670
|
'''The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started.
|
|
@@ -17187,7 +17389,7 @@ class CfnTaskDefinition(
|
|
|
17187
17389
|
'''The ``LogConfiguration`` property specifies log configuration options to send to a custom log driver for the container.
|
|
17188
17390
|
|
|
17189
17391
|
:param log_driver: The log driver to use for the container. For tasks on AWS Fargate , the supported log drivers are ``awslogs`` , ``splunk`` , and ``awsfirelens`` . For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``syslog`` , ``splunk`` , and ``awsfirelens`` . For more information about using the ``awslogs`` log driver, see `Send Amazon ECS logs to CloudWatch <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html>`_ in the *Amazon Elastic Container Service Developer Guide* . For more information about using the ``awsfirelens`` log driver, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ . .. epigraph:: If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.
|
|
17190
|
-
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``non-blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS changed the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``
|
|
17392
|
+
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``non-blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS changed the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``10m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
17191
17393
|
:param secret_options: The secrets to pass to the log configuration. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
17192
17394
|
|
|
17193
17395
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-logconfiguration.html
|
|
@@ -17327,7 +17529,7 @@ class CfnTaskDefinition(
|
|
|
17327
17529
|
|
|
17328
17530
|
- **max-buffer-size** - Required: No
|
|
17329
17531
|
|
|
17330
|
-
Default value: ``
|
|
17532
|
+
Default value: ``10m``
|
|
17331
17533
|
|
|
17332
17534
|
When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.
|
|
17333
17535
|
|
|
@@ -19956,9 +20158,9 @@ class CfnTaskSet(
|
|
|
19956
20158
|
|
|
19957
20159
|
A capacity provider strategy can contain a maximum of 20 capacity providers.
|
|
19958
20160
|
|
|
19959
|
-
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
20161
|
+
:param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used. Base value characteristics: - Only one capacity provider in a strategy can have a base defined - Default value is ``0`` if not specified - Valid range: 0 to 100,000 - Base requirements are satisfied first before weight distribution
|
|
19960
20162
|
:param capacity_provider: The short name of the capacity provider.
|
|
19961
|
-
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
20163
|
+
:param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail. Weight value characteristics: - Weight is considered after the base value is satisfied - Default value is ``0`` if not specified - Valid range: 0 to 1,000 - At least one capacity provider must have a weight greater than zero - Capacity providers with weight of ``0`` cannot place tasks Task distribution logic: - Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider - Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios Examples: Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met. Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
19962
20164
|
|
|
19963
20165
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html
|
|
19964
20166
|
:exampleMetadata: fixture=_generated
|
|
@@ -19990,10 +20192,17 @@ class CfnTaskSet(
|
|
|
19990
20192
|
|
|
19991
20193
|
@builtins.property
|
|
19992
20194
|
def base(self) -> typing.Optional[jsii.Number]:
|
|
19993
|
-
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider.
|
|
20195
|
+
'''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider for each service.
|
|
19994
20196
|
|
|
19995
20197
|
Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
|
|
19996
20198
|
|
|
20199
|
+
Base value characteristics:
|
|
20200
|
+
|
|
20201
|
+
- Only one capacity provider in a strategy can have a base defined
|
|
20202
|
+
- Default value is ``0`` if not specified
|
|
20203
|
+
- Valid range: 0 to 100,000
|
|
20204
|
+
- Base requirements are satisfied first before weight distribution
|
|
20205
|
+
|
|
19997
20206
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html#cfn-ecs-taskset-capacityproviderstrategyitem-base
|
|
19998
20207
|
'''
|
|
19999
20208
|
result = self._values.get("base")
|
|
@@ -20016,7 +20225,24 @@ class CfnTaskSet(
|
|
|
20016
20225
|
|
|
20017
20226
|
If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
|
|
20018
20227
|
|
|
20019
|
-
|
|
20228
|
+
Weight value characteristics:
|
|
20229
|
+
|
|
20230
|
+
- Weight is considered after the base value is satisfied
|
|
20231
|
+
- Default value is ``0`` if not specified
|
|
20232
|
+
- Valid range: 0 to 1,000
|
|
20233
|
+
- At least one capacity provider must have a weight greater than zero
|
|
20234
|
+
- Capacity providers with weight of ``0`` cannot place tasks
|
|
20235
|
+
|
|
20236
|
+
Task distribution logic:
|
|
20237
|
+
|
|
20238
|
+
- Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider
|
|
20239
|
+
- Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios
|
|
20240
|
+
|
|
20241
|
+
Examples:
|
|
20242
|
+
|
|
20243
|
+
Equal Distribution: Two capacity providers both with weight ``1`` will split tasks evenly after base requirements are met.
|
|
20244
|
+
|
|
20245
|
+
Weighted Distribution: If capacityProviderA has weight ``1`` and capacityProviderB has weight ``4`` , then for every 1 task on A, 4 tasks will run on B.
|
|
20020
20246
|
|
|
20021
20247
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html#cfn-ecs-taskset-capacityproviderstrategyitem-weight
|
|
20022
20248
|
'''
|
|
@@ -37629,6 +37855,7 @@ class ServiceConnectTlsConfiguration:
|
|
|
37629
37855
|
"snap_shot_id": "snapShotId",
|
|
37630
37856
|
"tag_specifications": "tagSpecifications",
|
|
37631
37857
|
"throughput": "throughput",
|
|
37858
|
+
"volume_initialization_rate": "volumeInitializationRate",
|
|
37632
37859
|
"volume_type": "volumeType",
|
|
37633
37860
|
},
|
|
37634
37861
|
)
|
|
@@ -37645,6 +37872,7 @@ class ServiceManagedEBSVolumeConfiguration:
|
|
|
37645
37872
|
snap_shot_id: typing.Optional[builtins.str] = None,
|
|
37646
37873
|
tag_specifications: typing.Optional[typing.Sequence[typing.Union[EBSTagSpecification, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
37647
37874
|
throughput: typing.Optional[jsii.Number] = None,
|
|
37875
|
+
volume_initialization_rate: typing.Optional[_Size_7b441c34] = None,
|
|
37648
37876
|
volume_type: typing.Optional[_EbsDeviceVolumeType_6792555b] = None,
|
|
37649
37877
|
) -> None:
|
|
37650
37878
|
'''Represents the configuration for an ECS Service managed EBS volume.
|
|
@@ -37658,6 +37886,7 @@ class ServiceManagedEBSVolumeConfiguration:
|
|
|
37658
37886
|
:param snap_shot_id: The snapshot that Amazon ECS uses to create the volume. You must specify either ``size`` or ``snapshotId``. Default: - No snapshot.
|
|
37659
37887
|
:param tag_specifications: Specifies the tags to apply to the volume and whether to propagate those tags to the volume. Default: - No tags are specified.
|
|
37660
37888
|
:param throughput: The throughput to provision for a volume, in MiB/s, with a maximum of 1,000 MiB/s. This parameter is only supported for the gp3 volume type. Default: - No throughput.
|
|
37889
|
+
:param volume_initialization_rate: Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), at which to download the snapshot blocks from Amazon S3 to the volume. Valid range is between 100 and 300 MiB/s. Default: undefined - The volume initialization rate is not set.
|
|
37661
37890
|
:param volume_type: The volume type. Default: - ec2.EbsDeviceVolumeType.GP2
|
|
37662
37891
|
|
|
37663
37892
|
:exampleMetadata: infused
|
|
@@ -37717,6 +37946,7 @@ class ServiceManagedEBSVolumeConfiguration:
|
|
|
37717
37946
|
check_type(argname="argument snap_shot_id", value=snap_shot_id, expected_type=type_hints["snap_shot_id"])
|
|
37718
37947
|
check_type(argname="argument tag_specifications", value=tag_specifications, expected_type=type_hints["tag_specifications"])
|
|
37719
37948
|
check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
|
|
37949
|
+
check_type(argname="argument volume_initialization_rate", value=volume_initialization_rate, expected_type=type_hints["volume_initialization_rate"])
|
|
37720
37950
|
check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
|
|
37721
37951
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
37722
37952
|
if encrypted is not None:
|
|
@@ -37737,6 +37967,8 @@ class ServiceManagedEBSVolumeConfiguration:
|
|
|
37737
37967
|
self._values["tag_specifications"] = tag_specifications
|
|
37738
37968
|
if throughput is not None:
|
|
37739
37969
|
self._values["throughput"] = throughput
|
|
37970
|
+
if volume_initialization_rate is not None:
|
|
37971
|
+
self._values["volume_initialization_rate"] = volume_initialization_rate
|
|
37740
37972
|
if volume_type is not None:
|
|
37741
37973
|
self._values["volume_type"] = volume_type
|
|
37742
37974
|
|
|
@@ -37860,6 +38092,17 @@ class ServiceManagedEBSVolumeConfiguration:
|
|
|
37860
38092
|
result = self._values.get("throughput")
|
|
37861
38093
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
37862
38094
|
|
|
38095
|
+
@builtins.property
|
|
38096
|
+
def volume_initialization_rate(self) -> typing.Optional[_Size_7b441c34]:
|
|
38097
|
+
'''Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), at which to download the snapshot blocks from Amazon S3 to the volume.
|
|
38098
|
+
|
|
38099
|
+
Valid range is between 100 and 300 MiB/s.
|
|
38100
|
+
|
|
38101
|
+
:default: undefined - The volume initialization rate is not set.
|
|
38102
|
+
'''
|
|
38103
|
+
result = self._values.get("volume_initialization_rate")
|
|
38104
|
+
return typing.cast(typing.Optional[_Size_7b441c34], result)
|
|
38105
|
+
|
|
37863
38106
|
@builtins.property
|
|
37864
38107
|
def volume_type(self) -> typing.Optional[_EbsDeviceVolumeType_6792555b]:
|
|
37865
38108
|
'''The volume type.
|
|
@@ -40936,7 +41179,10 @@ class Volume:
|
|
|
40936
41179
|
managed_eBSVolume=ecs.ServiceManagedEBSVolumeConfiguration(
|
|
40937
41180
|
snap_shot_id="snap-066877671789bd71b",
|
|
40938
41181
|
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
40939
|
-
file_system_type=ecs.FileSystemType.XFS
|
|
41182
|
+
file_system_type=ecs.FileSystemType.XFS,
|
|
41183
|
+
# Specifies the Amazon EBS Provisioned Rate for Volume Initialization.
|
|
41184
|
+
# Valid range is between 100 and 300 MiB/s.
|
|
41185
|
+
volume_initialization_rate=Size.mebibytes(200)
|
|
40940
41186
|
)
|
|
40941
41187
|
)
|
|
40942
41188
|
|
|
@@ -46116,6 +46362,7 @@ def _typecheckingstub__ec1192a1d20e03deef75c7fa1457b92ecf9506c5c5df97b5a4473fc3a
|
|
|
46116
46362
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
46117
46363
|
enable_ecs_managed_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
46118
46364
|
enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
46365
|
+
force_new_deployment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.ForceNewDeploymentProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
46119
46366
|
health_check_grace_period_seconds: typing.Optional[jsii.Number] = None,
|
|
46120
46367
|
launch_type: typing.Optional[builtins.str] = None,
|
|
46121
46368
|
load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
@@ -46197,6 +46444,12 @@ def _typecheckingstub__8e2bc49b758cd7bd2d560e7ef349cc9fd90122266047080d15fab50f9
|
|
|
46197
46444
|
"""Type checking stubs"""
|
|
46198
46445
|
pass
|
|
46199
46446
|
|
|
46447
|
+
def _typecheckingstub__30697d792a144902af8d5ce8bec3db2e9ebb612ed4d71a72a5ee98dcace27fce(
|
|
46448
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnService.ForceNewDeploymentProperty]],
|
|
46449
|
+
) -> None:
|
|
46450
|
+
"""Type checking stubs"""
|
|
46451
|
+
pass
|
|
46452
|
+
|
|
46200
46453
|
def _typecheckingstub__f711c1f6061fd4cde1ef9b3193fac0a0271ff054aad08ad6b79914e6f0f6db0f(
|
|
46201
46454
|
value: typing.Optional[jsii.Number],
|
|
46202
46455
|
) -> None:
|
|
@@ -46382,6 +46635,14 @@ def _typecheckingstub__ac73ec1d9d94d0e545ad276e88baeb61d67c664fed33ac2082b94f93d
|
|
|
46382
46635
|
"""Type checking stubs"""
|
|
46383
46636
|
pass
|
|
46384
46637
|
|
|
46638
|
+
def _typecheckingstub__61f79b8cfbfd89da452531f374d2c8ed25d98693945205dbbe670de811c5ed06(
|
|
46639
|
+
*,
|
|
46640
|
+
enable_force_new_deployment: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
46641
|
+
force_new_deployment_nonce: typing.Optional[builtins.str] = None,
|
|
46642
|
+
) -> None:
|
|
46643
|
+
"""Type checking stubs"""
|
|
46644
|
+
pass
|
|
46645
|
+
|
|
46385
46646
|
def _typecheckingstub__251c3999c1586967f7c9091782e6a113831e05b5f853b910cad8c8e75f654def(
|
|
46386
46647
|
*,
|
|
46387
46648
|
advanced_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.AdvancedConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
@@ -46564,6 +46825,7 @@ def _typecheckingstub__7f93658ccdbf3f250d0d1ce12224e9eddaef71a8f664c6a279122f60d
|
|
|
46564
46825
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
46565
46826
|
enable_ecs_managed_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
46566
46827
|
enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
46828
|
+
force_new_deployment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.ForceNewDeploymentProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
46567
46829
|
health_check_grace_period_seconds: typing.Optional[jsii.Number] = None,
|
|
46568
46830
|
launch_type: typing.Optional[builtins.str] = None,
|
|
46569
46831
|
load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnService.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
@@ -48888,6 +49150,7 @@ def _typecheckingstub__82a45c504d50ae45d687364dad808578c5d6f56116cf95de590987e67
|
|
|
48888
49150
|
snap_shot_id: typing.Optional[builtins.str] = None,
|
|
48889
49151
|
tag_specifications: typing.Optional[typing.Sequence[typing.Union[EBSTagSpecification, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
48890
49152
|
throughput: typing.Optional[jsii.Number] = None,
|
|
49153
|
+
volume_initialization_rate: typing.Optional[_Size_7b441c34] = None,
|
|
48891
49154
|
volume_type: typing.Optional[_EbsDeviceVolumeType_6792555b] = None,
|
|
48892
49155
|
) -> None:
|
|
48893
49156
|
"""Type checking stubs"""
|