aws-cdk-lib 2.156.0__py3-none-any.whl → 2.158.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 +42 -23
- aws_cdk/_jsii/__init__.py +17 -2
- aws_cdk/_jsii/{aws-cdk-lib@2.156.0.jsii.tgz → aws-cdk-lib@2.158.0.jsii.tgz} +0 -0
- aws_cdk/alexa_ask/__init__.py +16 -1
- aws_cdk/assertions/__init__.py +16 -1
- aws_cdk/aws_accessanalyzer/__init__.py +16 -1
- aws_cdk/aws_acmpca/__init__.py +26 -76
- aws_cdk/aws_amazonmq/__init__.py +16 -1
- aws_cdk/aws_amplify/__init__.py +122 -1
- aws_cdk/aws_amplifyuibuilder/__init__.py +16 -1
- aws_cdk/aws_apigateway/__init__.py +16 -1
- aws_cdk/aws_apigatewayv2/__init__.py +97 -14
- aws_cdk/aws_apigatewayv2_authorizers/__init__.py +16 -1
- aws_cdk/aws_apigatewayv2_integrations/__init__.py +16 -1
- aws_cdk/aws_appconfig/__init__.py +16 -1
- aws_cdk/aws_appflow/__init__.py +16 -1
- aws_cdk/aws_appintegrations/__init__.py +30 -15
- aws_cdk/aws_applicationautoscaling/__init__.py +16 -1
- aws_cdk/aws_applicationinsights/__init__.py +16 -1
- aws_cdk/aws_applicationsignals/__init__.py +766 -2
- aws_cdk/aws_appmesh/__init__.py +16 -1
- aws_cdk/aws_apprunner/__init__.py +16 -1
- aws_cdk/aws_appstream/__init__.py +16 -1
- aws_cdk/aws_appsync/__init__.py +66 -19
- aws_cdk/aws_apptest/__init__.py +16 -1
- aws_cdk/aws_aps/__init__.py +16 -1
- aws_cdk/aws_arczonalshift/__init__.py +16 -1
- aws_cdk/aws_athena/__init__.py +16 -1
- aws_cdk/aws_auditmanager/__init__.py +16 -1
- aws_cdk/aws_autoscaling/__init__.py +22 -7
- aws_cdk/aws_autoscaling_common/__init__.py +16 -1
- aws_cdk/aws_autoscaling_hooktargets/__init__.py +16 -1
- aws_cdk/aws_autoscalingplans/__init__.py +16 -1
- aws_cdk/aws_b2bi/__init__.py +16 -1
- aws_cdk/aws_backup/__init__.py +55 -1
- aws_cdk/aws_backupgateway/__init__.py +16 -1
- aws_cdk/aws_batch/__init__.py +57 -1
- aws_cdk/aws_bcmdataexports/__init__.py +16 -1
- aws_cdk/aws_bedrock/__init__.py +1529 -95
- aws_cdk/aws_billingconductor/__init__.py +16 -1
- aws_cdk/aws_budgets/__init__.py +16 -1
- aws_cdk/aws_cassandra/__init__.py +16 -1
- aws_cdk/aws_ce/__init__.py +16 -1
- aws_cdk/aws_certificatemanager/__init__.py +16 -1
- aws_cdk/aws_chatbot/__init__.py +22 -7
- aws_cdk/aws_cleanrooms/__init__.py +16 -1
- aws_cdk/aws_cleanroomsml/__init__.py +16 -1
- aws_cdk/aws_cloud9/__init__.py +16 -1
- aws_cdk/aws_cloudformation/__init__.py +38 -23
- aws_cdk/aws_cloudfront/__init__.py +16 -1
- aws_cdk/aws_cloudfront/experimental/__init__.py +46 -4
- aws_cdk/aws_cloudfront_origins/__init__.py +16 -1
- aws_cdk/aws_cloudtrail/__init__.py +16 -1
- aws_cdk/aws_cloudwatch/__init__.py +16 -1
- aws_cdk/aws_cloudwatch_actions/__init__.py +16 -1
- aws_cdk/aws_codeartifact/__init__.py +16 -1
- aws_cdk/aws_codebuild/__init__.py +16 -1
- aws_cdk/aws_codecommit/__init__.py +16 -1
- aws_cdk/aws_codeconnections/__init__.py +16 -1
- aws_cdk/aws_codedeploy/__init__.py +16 -1
- aws_cdk/aws_codeguruprofiler/__init__.py +16 -1
- aws_cdk/aws_codegurureviewer/__init__.py +16 -1
- aws_cdk/aws_codepipeline/__init__.py +16 -1
- aws_cdk/aws_codepipeline_actions/__init__.py +16 -1
- aws_cdk/aws_codestar/__init__.py +16 -1
- aws_cdk/aws_codestarconnections/__init__.py +16 -1
- aws_cdk/aws_codestarnotifications/__init__.py +16 -1
- aws_cdk/aws_cognito/__init__.py +16 -1
- aws_cdk/aws_comprehend/__init__.py +16 -1
- aws_cdk/aws_config/__init__.py +16 -1
- aws_cdk/aws_connect/__init__.py +16 -1
- aws_cdk/aws_connectcampaigns/__init__.py +16 -1
- aws_cdk/aws_controltower/__init__.py +16 -1
- aws_cdk/aws_cur/__init__.py +16 -1
- aws_cdk/aws_customerprofiles/__init__.py +16 -1
- aws_cdk/aws_databrew/__init__.py +16 -1
- aws_cdk/aws_datapipeline/__init__.py +16 -1
- aws_cdk/aws_datasync/__init__.py +56 -30
- aws_cdk/aws_datazone/__init__.py +16 -1
- aws_cdk/aws_dax/__init__.py +16 -1
- aws_cdk/aws_deadline/__init__.py +16 -1
- aws_cdk/aws_detective/__init__.py +16 -1
- aws_cdk/aws_devicefarm/__init__.py +16 -1
- aws_cdk/aws_devopsguru/__init__.py +16 -1
- aws_cdk/aws_directoryservice/__init__.py +16 -1
- aws_cdk/aws_dlm/__init__.py +16 -1
- aws_cdk/aws_dms/__init__.py +16 -1
- aws_cdk/aws_docdb/__init__.py +16 -1
- aws_cdk/aws_docdbelastic/__init__.py +16 -1
- aws_cdk/aws_dynamodb/__init__.py +16 -1
- aws_cdk/aws_ec2/__init__.py +389 -50
- aws_cdk/aws_ecr/__init__.py +16 -1
- aws_cdk/aws_ecr_assets/__init__.py +16 -1
- aws_cdk/aws_ecs/__init__.py +269 -88
- aws_cdk/aws_ecs_patterns/__init__.py +16 -1
- aws_cdk/aws_efs/__init__.py +16 -1
- aws_cdk/aws_eks/__init__.py +16 -1
- aws_cdk/aws_elasticache/__init__.py +16 -1
- aws_cdk/aws_elasticbeanstalk/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancing/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +20 -5
- aws_cdk/aws_elasticloadbalancingv2_actions/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancingv2_targets/__init__.py +16 -1
- aws_cdk/aws_elasticsearch/__init__.py +16 -1
- aws_cdk/aws_emr/__init__.py +16 -1
- aws_cdk/aws_emrcontainers/__init__.py +16 -1
- aws_cdk/aws_emrserverless/__init__.py +16 -1
- aws_cdk/aws_entityresolution/__init__.py +133 -5
- aws_cdk/aws_events/__init__.py +16 -1
- aws_cdk/aws_events_targets/__init__.py +16 -1
- aws_cdk/aws_eventschemas/__init__.py +16 -1
- aws_cdk/aws_evidently/__init__.py +16 -1
- aws_cdk/aws_finspace/__init__.py +16 -1
- aws_cdk/aws_fis/__init__.py +16 -1
- aws_cdk/aws_fms/__init__.py +16 -1
- aws_cdk/aws_forecast/__init__.py +16 -1
- aws_cdk/aws_frauddetector/__init__.py +16 -1
- aws_cdk/aws_fsx/__init__.py +16 -1
- aws_cdk/aws_gamelift/__init__.py +16 -1
- aws_cdk/aws_globalaccelerator/__init__.py +16 -1
- aws_cdk/aws_globalaccelerator_endpoints/__init__.py +16 -1
- aws_cdk/aws_glue/__init__.py +16 -9
- aws_cdk/aws_grafana/__init__.py +16 -1
- aws_cdk/aws_greengrass/__init__.py +16 -1
- aws_cdk/aws_greengrassv2/__init__.py +16 -1
- aws_cdk/aws_groundstation/__init__.py +43 -17
- aws_cdk/aws_guardduty/__init__.py +42 -15
- aws_cdk/aws_healthimaging/__init__.py +16 -1
- aws_cdk/aws_healthlake/__init__.py +16 -1
- aws_cdk/aws_iam/__init__.py +16 -1
- aws_cdk/aws_identitystore/__init__.py +16 -1
- aws_cdk/aws_imagebuilder/__init__.py +16 -1
- aws_cdk/aws_inspector/__init__.py +16 -1
- aws_cdk/aws_inspectorv2/__init__.py +16 -1
- aws_cdk/aws_internetmonitor/__init__.py +16 -1
- aws_cdk/aws_iot/__init__.py +16 -1
- aws_cdk/aws_iot1click/__init__.py +16 -1
- aws_cdk/aws_iotanalytics/__init__.py +16 -1
- aws_cdk/aws_iotcoredeviceadvisor/__init__.py +16 -1
- aws_cdk/aws_iotevents/__init__.py +16 -1
- aws_cdk/aws_iotfleethub/__init__.py +16 -1
- aws_cdk/aws_iotfleetwise/__init__.py +124 -1
- aws_cdk/aws_iotsitewise/__init__.py +16 -1
- aws_cdk/aws_iotthingsgraph/__init__.py +16 -1
- aws_cdk/aws_iottwinmaker/__init__.py +16 -1
- aws_cdk/aws_iotwireless/__init__.py +16 -1
- aws_cdk/aws_ivs/__init__.py +16 -1
- aws_cdk/aws_ivschat/__init__.py +16 -1
- aws_cdk/aws_kafkaconnect/__init__.py +16 -1
- aws_cdk/aws_kendra/__init__.py +16 -1
- aws_cdk/aws_kendraranking/__init__.py +16 -1
- aws_cdk/aws_kinesis/__init__.py +16 -1
- aws_cdk/aws_kinesisanalytics/__init__.py +16 -1
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +16 -1
- aws_cdk/aws_kinesisfirehose/__init__.py +16 -1
- aws_cdk/aws_kinesisvideo/__init__.py +16 -1
- aws_cdk/aws_kms/__init__.py +16 -1
- aws_cdk/aws_lakeformation/__init__.py +16 -1
- aws_cdk/aws_lambda/__init__.py +163 -18
- aws_cdk/aws_lambda_destinations/__init__.py +16 -1
- aws_cdk/aws_lambda_event_sources/__init__.py +16 -1
- aws_cdk/aws_lambda_nodejs/__init__.py +46 -4
- aws_cdk/aws_launchwizard/__init__.py +16 -1
- aws_cdk/aws_lex/__init__.py +16 -1
- aws_cdk/aws_licensemanager/__init__.py +16 -1
- aws_cdk/aws_lightsail/__init__.py +16 -1
- aws_cdk/aws_location/__init__.py +16 -1
- aws_cdk/aws_logs/__init__.py +16 -1
- aws_cdk/aws_logs_destinations/__init__.py +16 -1
- aws_cdk/aws_lookoutequipment/__init__.py +16 -1
- aws_cdk/aws_lookoutmetrics/__init__.py +16 -1
- aws_cdk/aws_lookoutvision/__init__.py +16 -1
- aws_cdk/aws_m2/__init__.py +16 -1
- aws_cdk/aws_macie/__init__.py +20 -5
- aws_cdk/aws_managedblockchain/__init__.py +16 -1
- aws_cdk/aws_mediaconnect/__init__.py +16 -1
- aws_cdk/aws_mediaconvert/__init__.py +16 -1
- aws_cdk/aws_medialive/__init__.py +364 -1
- aws_cdk/aws_mediapackage/__init__.py +16 -1
- aws_cdk/aws_mediapackagev2/__init__.py +54 -39
- aws_cdk/aws_mediastore/__init__.py +16 -1
- aws_cdk/aws_mediatailor/__init__.py +16 -1
- aws_cdk/aws_memorydb/__init__.py +16 -1
- aws_cdk/aws_msk/__init__.py +16 -1
- aws_cdk/aws_mwaa/__init__.py +16 -1
- aws_cdk/aws_neptune/__init__.py +30 -9
- aws_cdk/aws_neptunegraph/__init__.py +16 -1
- aws_cdk/aws_networkfirewall/__init__.py +16 -1
- aws_cdk/aws_networkmanager/__init__.py +16 -1
- aws_cdk/aws_nimblestudio/__init__.py +16 -1
- aws_cdk/aws_oam/__init__.py +16 -1
- aws_cdk/aws_omics/__init__.py +16 -1
- aws_cdk/aws_opensearchserverless/__init__.py +16 -1
- aws_cdk/aws_opensearchservice/__init__.py +210 -1
- aws_cdk/aws_opsworks/__init__.py +16 -1
- aws_cdk/aws_opsworkscm/__init__.py +16 -1
- aws_cdk/aws_organizations/__init__.py +16 -1
- aws_cdk/aws_osis/__init__.py +16 -1
- aws_cdk/aws_panorama/__init__.py +16 -1
- aws_cdk/aws_paymentcryptography/__init__.py +16 -1
- aws_cdk/aws_pcaconnectorad/__init__.py +16 -1
- aws_cdk/aws_pcaconnectorscep/__init__.py +899 -0
- aws_cdk/aws_personalize/__init__.py +18 -3
- aws_cdk/aws_pinpoint/__init__.py +16 -1
- aws_cdk/aws_pinpointemail/__init__.py +16 -1
- aws_cdk/aws_pipes/__init__.py +38 -23
- aws_cdk/aws_proton/__init__.py +16 -1
- aws_cdk/aws_qbusiness/__init__.py +691 -7
- aws_cdk/aws_qldb/__init__.py +16 -1
- aws_cdk/aws_quicksight/__init__.py +3301 -1
- aws_cdk/aws_ram/__init__.py +16 -1
- aws_cdk/aws_rds/__init__.py +58 -5
- aws_cdk/aws_redshift/__init__.py +16 -1
- aws_cdk/aws_redshiftserverless/__init__.py +16 -1
- aws_cdk/aws_refactorspaces/__init__.py +16 -1
- aws_cdk/aws_rekognition/__init__.py +16 -1
- aws_cdk/aws_resiliencehub/__init__.py +16 -1
- aws_cdk/aws_resourceexplorer2/__init__.py +16 -1
- aws_cdk/aws_resourcegroups/__init__.py +16 -1
- aws_cdk/aws_robomaker/__init__.py +16 -1
- aws_cdk/aws_rolesanywhere/__init__.py +16 -1
- aws_cdk/aws_route53/__init__.py +16 -1
- aws_cdk/aws_route53_patterns/__init__.py +16 -1
- aws_cdk/aws_route53_targets/__init__.py +16 -1
- aws_cdk/aws_route53profiles/__init__.py +16 -1
- aws_cdk/aws_route53recoverycontrol/__init__.py +16 -1
- aws_cdk/aws_route53recoveryreadiness/__init__.py +16 -1
- aws_cdk/aws_route53resolver/__init__.py +16 -1
- aws_cdk/aws_rum/__init__.py +16 -1
- aws_cdk/aws_s3/__init__.py +16 -1
- aws_cdk/aws_s3_assets/__init__.py +16 -1
- aws_cdk/aws_s3_deployment/__init__.py +16 -1
- aws_cdk/aws_s3_notifications/__init__.py +16 -1
- aws_cdk/aws_s3express/__init__.py +16 -1
- aws_cdk/aws_s3objectlambda/__init__.py +16 -1
- aws_cdk/aws_s3outposts/__init__.py +16 -1
- aws_cdk/aws_sagemaker/__init__.py +1183 -1
- aws_cdk/aws_sam/__init__.py +16 -1
- aws_cdk/aws_scheduler/__init__.py +16 -1
- aws_cdk/aws_sdb/__init__.py +16 -1
- aws_cdk/aws_secretsmanager/__init__.py +18 -4
- aws_cdk/aws_securityhub/__init__.py +124 -104
- aws_cdk/aws_securitylake/__init__.py +16 -1
- aws_cdk/aws_servicecatalog/__init__.py +16 -1
- aws_cdk/aws_servicecatalogappregistry/__init__.py +16 -1
- aws_cdk/aws_servicediscovery/__init__.py +16 -1
- aws_cdk/aws_ses/__init__.py +47 -1
- aws_cdk/aws_ses_actions/__init__.py +16 -1
- aws_cdk/aws_shield/__init__.py +16 -1
- aws_cdk/aws_signer/__init__.py +16 -1
- aws_cdk/aws_simspaceweaver/__init__.py +16 -1
- aws_cdk/aws_sns/__init__.py +35 -14
- aws_cdk/aws_sns_subscriptions/__init__.py +16 -1
- aws_cdk/aws_sqs/__init__.py +16 -1
- aws_cdk/aws_ssm/__init__.py +26 -7
- aws_cdk/aws_ssmcontacts/__init__.py +16 -1
- aws_cdk/aws_ssmincidents/__init__.py +16 -1
- aws_cdk/aws_ssmquicksetup/__init__.py +982 -0
- aws_cdk/aws_sso/__init__.py +16 -1
- aws_cdk/aws_stepfunctions/__init__.py +16 -1
- aws_cdk/aws_stepfunctions_tasks/__init__.py +20 -5
- aws_cdk/aws_supportapp/__init__.py +16 -1
- aws_cdk/aws_synthetics/__init__.py +16 -1
- aws_cdk/aws_systemsmanagersap/__init__.py +16 -1
- aws_cdk/aws_timestream/__init__.py +16 -1
- aws_cdk/aws_transfer/__init__.py +16 -1
- aws_cdk/aws_verifiedpermissions/__init__.py +16 -1
- aws_cdk/aws_voiceid/__init__.py +16 -1
- aws_cdk/aws_vpclattice/__init__.py +16 -1
- aws_cdk/aws_waf/__init__.py +16 -1
- aws_cdk/aws_wafregional/__init__.py +16 -1
- aws_cdk/aws_wafv2/__init__.py +16 -1
- aws_cdk/aws_wisdom/__init__.py +16 -1
- aws_cdk/aws_workspaces/__init__.py +16 -1
- aws_cdk/aws_workspacesthinclient/__init__.py +16 -1
- aws_cdk/aws_workspacesweb/__init__.py +16 -1
- aws_cdk/aws_xray/__init__.py +16 -1
- aws_cdk/cloud_assembly_schema/__init__.py +16 -1
- aws_cdk/cloudformation_include/__init__.py +16 -1
- aws_cdk/custom_resources/__init__.py +16 -1
- aws_cdk/cx_api/__init__.py +16 -1
- aws_cdk/lambda_layer_awscli/__init__.py +16 -1
- aws_cdk/lambda_layer_kubectl/__init__.py +16 -1
- aws_cdk/lambda_layer_node_proxy_agent/__init__.py +16 -1
- aws_cdk/pipelines/__init__.py +16 -1
- aws_cdk/region_info/__init__.py +16 -1
- aws_cdk/triggers/__init__.py +46 -4
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/METADATA +5 -5
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/NOTICE +27 -8
- aws_cdk_lib-2.158.0.dist-info/RECORD +294 -0
- aws_cdk_lib-2.156.0.dist-info/RECORD +0 -292
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/top_level.txt +0 -0
|
@@ -48,7 +48,22 @@ import jsii
|
|
|
48
48
|
import publication
|
|
49
49
|
import typing_extensions
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
import typeguard
|
|
52
|
+
from importlib.metadata import version as _metadata_package_version
|
|
53
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
54
|
+
|
|
55
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
56
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
57
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
58
|
+
else:
|
|
59
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
60
|
+
pass
|
|
61
|
+
else:
|
|
62
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
63
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
64
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
65
|
+
else:
|
|
66
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
52
67
|
|
|
53
68
|
from .._jsii import *
|
|
54
69
|
|
|
@@ -160,6 +175,90 @@ class CfnServiceLevelObjective(
|
|
|
160
175
|
),
|
|
161
176
|
warning_threshold=123
|
|
162
177
|
),
|
|
178
|
+
request_based_sli=applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
179
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
180
|
+
key_attributes={
|
|
181
|
+
"key_attributes_key": "keyAttributes"
|
|
182
|
+
},
|
|
183
|
+
metric_type="metricType",
|
|
184
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
185
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
186
|
+
id="id",
|
|
187
|
+
|
|
188
|
+
# the properties below are optional
|
|
189
|
+
account_id="accountId",
|
|
190
|
+
expression="expression",
|
|
191
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
192
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
193
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
194
|
+
name="name",
|
|
195
|
+
value="value"
|
|
196
|
+
)],
|
|
197
|
+
metric_name="metricName",
|
|
198
|
+
namespace="namespace"
|
|
199
|
+
),
|
|
200
|
+
period=123,
|
|
201
|
+
stat="stat",
|
|
202
|
+
|
|
203
|
+
# the properties below are optional
|
|
204
|
+
unit="unit"
|
|
205
|
+
),
|
|
206
|
+
return_data=False
|
|
207
|
+
)],
|
|
208
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
209
|
+
id="id",
|
|
210
|
+
|
|
211
|
+
# the properties below are optional
|
|
212
|
+
account_id="accountId",
|
|
213
|
+
expression="expression",
|
|
214
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
215
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
216
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
217
|
+
name="name",
|
|
218
|
+
value="value"
|
|
219
|
+
)],
|
|
220
|
+
metric_name="metricName",
|
|
221
|
+
namespace="namespace"
|
|
222
|
+
),
|
|
223
|
+
period=123,
|
|
224
|
+
stat="stat",
|
|
225
|
+
|
|
226
|
+
# the properties below are optional
|
|
227
|
+
unit="unit"
|
|
228
|
+
),
|
|
229
|
+
return_data=False
|
|
230
|
+
)]
|
|
231
|
+
),
|
|
232
|
+
operation_name="operationName",
|
|
233
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
234
|
+
id="id",
|
|
235
|
+
|
|
236
|
+
# the properties below are optional
|
|
237
|
+
account_id="accountId",
|
|
238
|
+
expression="expression",
|
|
239
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
240
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
241
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
242
|
+
name="name",
|
|
243
|
+
value="value"
|
|
244
|
+
)],
|
|
245
|
+
metric_name="metricName",
|
|
246
|
+
namespace="namespace"
|
|
247
|
+
),
|
|
248
|
+
period=123,
|
|
249
|
+
stat="stat",
|
|
250
|
+
|
|
251
|
+
# the properties below are optional
|
|
252
|
+
unit="unit"
|
|
253
|
+
),
|
|
254
|
+
return_data=False
|
|
255
|
+
)]
|
|
256
|
+
),
|
|
257
|
+
|
|
258
|
+
# the properties below are optional
|
|
259
|
+
comparison_operator="comparisonOperator",
|
|
260
|
+
metric_threshold=123
|
|
261
|
+
),
|
|
163
262
|
tags=[CfnTag(
|
|
164
263
|
key="key",
|
|
165
264
|
value="value"
|
|
@@ -176,6 +275,7 @@ class CfnServiceLevelObjective(
|
|
|
176
275
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.SliProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
177
276
|
description: typing.Optional[builtins.str] = None,
|
|
178
277
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.GoalProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
278
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.RequestBasedSliProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
179
279
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
180
280
|
) -> None:
|
|
181
281
|
'''
|
|
@@ -185,6 +285,7 @@ class CfnServiceLevelObjective(
|
|
|
185
285
|
:param sli: A structure containing information about the performance metric that this SLO monitors.
|
|
186
286
|
:param description: An optional description for this SLO. Default: - "No description"
|
|
187
287
|
:param goal: This structure contains the attributes that determine the goal of an SLO. This includes the time period for evaluation and the attainment threshold.
|
|
288
|
+
:param request_based_sli: This structure contains information about the performance metric that a request-based SLO monitors.
|
|
188
289
|
:param tags: A list of key-value pairs to associate with the SLO. You can associate as many as 50 tags with an SLO. To be able to associate tags with the SLO when you create the SLO, you must have the cloudwatch:TagResource permission. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.
|
|
189
290
|
'''
|
|
190
291
|
if __debug__:
|
|
@@ -192,7 +293,12 @@ class CfnServiceLevelObjective(
|
|
|
192
293
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
193
294
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
194
295
|
props = CfnServiceLevelObjectiveProps(
|
|
195
|
-
name=name,
|
|
296
|
+
name=name,
|
|
297
|
+
sli=sli,
|
|
298
|
+
description=description,
|
|
299
|
+
goal=goal,
|
|
300
|
+
request_based_sli=request_based_sli,
|
|
301
|
+
tags=tags,
|
|
196
302
|
)
|
|
197
303
|
|
|
198
304
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
@@ -245,6 +351,15 @@ class CfnServiceLevelObjective(
|
|
|
245
351
|
'''
|
|
246
352
|
return typing.cast(jsii.Number, jsii.get(self, "attrCreatedTime"))
|
|
247
353
|
|
|
354
|
+
@builtins.property
|
|
355
|
+
@jsii.member(jsii_name="attrEvaluationType")
|
|
356
|
+
def attr_evaluation_type(self) -> builtins.str:
|
|
357
|
+
'''Displays whether this is a period-based SLO or a request-based SLO.
|
|
358
|
+
|
|
359
|
+
:cloudformationAttribute: EvaluationType
|
|
360
|
+
'''
|
|
361
|
+
return typing.cast(builtins.str, jsii.get(self, "attrEvaluationType"))
|
|
362
|
+
|
|
248
363
|
@builtins.property
|
|
249
364
|
@jsii.member(jsii_name="attrLastUpdatedTime")
|
|
250
365
|
def attr_last_updated_time(self) -> jsii.Number:
|
|
@@ -327,6 +442,24 @@ class CfnServiceLevelObjective(
|
|
|
327
442
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
328
443
|
jsii.set(self, "goal", value) # pyright: ignore[reportArgumentType]
|
|
329
444
|
|
|
445
|
+
@builtins.property
|
|
446
|
+
@jsii.member(jsii_name="requestBasedSli")
|
|
447
|
+
def request_based_sli(
|
|
448
|
+
self,
|
|
449
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]]:
|
|
450
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.'''
|
|
451
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]], jsii.get(self, "requestBasedSli"))
|
|
452
|
+
|
|
453
|
+
@request_based_sli.setter
|
|
454
|
+
def request_based_sli(
|
|
455
|
+
self,
|
|
456
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]],
|
|
457
|
+
) -> None:
|
|
458
|
+
if __debug__:
|
|
459
|
+
type_hints = typing.get_type_hints(_typecheckingstub__85c3a53f1420ec52267d0c5ef83b407de2a88d1eff567b79facf44748e778f2f)
|
|
460
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
461
|
+
jsii.set(self, "requestBasedSli", value) # pyright: ignore[reportArgumentType]
|
|
462
|
+
|
|
330
463
|
@builtins.property
|
|
331
464
|
@jsii.member(jsii_name="tags")
|
|
332
465
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
@@ -1090,6 +1223,500 @@ class CfnServiceLevelObjective(
|
|
|
1090
1223
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
1091
1224
|
)
|
|
1092
1225
|
|
|
1226
|
+
@jsii.data_type(
|
|
1227
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty",
|
|
1228
|
+
jsii_struct_bases=[],
|
|
1229
|
+
name_mapping={
|
|
1230
|
+
"bad_count_metric": "badCountMetric",
|
|
1231
|
+
"good_count_metric": "goodCountMetric",
|
|
1232
|
+
},
|
|
1233
|
+
)
|
|
1234
|
+
class MonitoredRequestCountMetricProperty:
|
|
1235
|
+
def __init__(
|
|
1236
|
+
self,
|
|
1237
|
+
*,
|
|
1238
|
+
bad_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.MetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1239
|
+
good_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.MetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1240
|
+
) -> None:
|
|
1241
|
+
'''This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO.
|
|
1242
|
+
|
|
1243
|
+
This value observed for the metric defined in ``TotalRequestCountMetric`` is divided by the number found for ``MonitoredRequestCountMetric`` to determine the percentage of successful requests that this SLO tracks.
|
|
1244
|
+
|
|
1245
|
+
:param bad_count_metric: If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1246
|
+
:param good_count_metric: If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1247
|
+
|
|
1248
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html
|
|
1249
|
+
:exampleMetadata: fixture=_generated
|
|
1250
|
+
|
|
1251
|
+
Example::
|
|
1252
|
+
|
|
1253
|
+
# The code below shows an example of how to instantiate this type.
|
|
1254
|
+
# The values are placeholders you should change.
|
|
1255
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1256
|
+
|
|
1257
|
+
monitored_request_count_metric_property = applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1258
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1259
|
+
id="id",
|
|
1260
|
+
|
|
1261
|
+
# the properties below are optional
|
|
1262
|
+
account_id="accountId",
|
|
1263
|
+
expression="expression",
|
|
1264
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1265
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1266
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1267
|
+
name="name",
|
|
1268
|
+
value="value"
|
|
1269
|
+
)],
|
|
1270
|
+
metric_name="metricName",
|
|
1271
|
+
namespace="namespace"
|
|
1272
|
+
),
|
|
1273
|
+
period=123,
|
|
1274
|
+
stat="stat",
|
|
1275
|
+
|
|
1276
|
+
# the properties below are optional
|
|
1277
|
+
unit="unit"
|
|
1278
|
+
),
|
|
1279
|
+
return_data=False
|
|
1280
|
+
)],
|
|
1281
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1282
|
+
id="id",
|
|
1283
|
+
|
|
1284
|
+
# the properties below are optional
|
|
1285
|
+
account_id="accountId",
|
|
1286
|
+
expression="expression",
|
|
1287
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1288
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1289
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1290
|
+
name="name",
|
|
1291
|
+
value="value"
|
|
1292
|
+
)],
|
|
1293
|
+
metric_name="metricName",
|
|
1294
|
+
namespace="namespace"
|
|
1295
|
+
),
|
|
1296
|
+
period=123,
|
|
1297
|
+
stat="stat",
|
|
1298
|
+
|
|
1299
|
+
# the properties below are optional
|
|
1300
|
+
unit="unit"
|
|
1301
|
+
),
|
|
1302
|
+
return_data=False
|
|
1303
|
+
)]
|
|
1304
|
+
)
|
|
1305
|
+
'''
|
|
1306
|
+
if __debug__:
|
|
1307
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0e098e20f2cfc04332a5fbb15ca2b6cd689368d77d87938dc8d7467b0f3963de)
|
|
1308
|
+
check_type(argname="argument bad_count_metric", value=bad_count_metric, expected_type=type_hints["bad_count_metric"])
|
|
1309
|
+
check_type(argname="argument good_count_metric", value=good_count_metric, expected_type=type_hints["good_count_metric"])
|
|
1310
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1311
|
+
if bad_count_metric is not None:
|
|
1312
|
+
self._values["bad_count_metric"] = bad_count_metric
|
|
1313
|
+
if good_count_metric is not None:
|
|
1314
|
+
self._values["good_count_metric"] = good_count_metric
|
|
1315
|
+
|
|
1316
|
+
@builtins.property
|
|
1317
|
+
def bad_count_metric(
|
|
1318
|
+
self,
|
|
1319
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1320
|
+
'''If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1321
|
+
|
|
1322
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html#cfn-applicationsignals-servicelevelobjective-monitoredrequestcountmetric-badcountmetric
|
|
1323
|
+
'''
|
|
1324
|
+
result = self._values.get("bad_count_metric")
|
|
1325
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1326
|
+
|
|
1327
|
+
@builtins.property
|
|
1328
|
+
def good_count_metric(
|
|
1329
|
+
self,
|
|
1330
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1331
|
+
'''If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1332
|
+
|
|
1333
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html#cfn-applicationsignals-servicelevelobjective-monitoredrequestcountmetric-goodcountmetric
|
|
1334
|
+
'''
|
|
1335
|
+
result = self._values.get("good_count_metric")
|
|
1336
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1337
|
+
|
|
1338
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1339
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1340
|
+
|
|
1341
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1342
|
+
return not (rhs == self)
|
|
1343
|
+
|
|
1344
|
+
def __repr__(self) -> str:
|
|
1345
|
+
return "MonitoredRequestCountMetricProperty(%s)" % ", ".join(
|
|
1346
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1347
|
+
)
|
|
1348
|
+
|
|
1349
|
+
@jsii.data_type(
|
|
1350
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty",
|
|
1351
|
+
jsii_struct_bases=[],
|
|
1352
|
+
name_mapping={
|
|
1353
|
+
"key_attributes": "keyAttributes",
|
|
1354
|
+
"metric_type": "metricType",
|
|
1355
|
+
"monitored_request_count_metric": "monitoredRequestCountMetric",
|
|
1356
|
+
"operation_name": "operationName",
|
|
1357
|
+
"total_request_count_metric": "totalRequestCountMetric",
|
|
1358
|
+
},
|
|
1359
|
+
)
|
|
1360
|
+
class RequestBasedSliMetricProperty:
|
|
1361
|
+
def __init__(
|
|
1362
|
+
self,
|
|
1363
|
+
*,
|
|
1364
|
+
key_attributes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
|
|
1365
|
+
metric_type: typing.Optional[builtins.str] = None,
|
|
1366
|
+
monitored_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.MonitoredRequestCountMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1367
|
+
operation_name: typing.Optional[builtins.str] = None,
|
|
1368
|
+
total_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.MetricDataQueryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1369
|
+
) -> None:
|
|
1370
|
+
'''This structure contains the information about the metric that is used for a request-based SLO.
|
|
1371
|
+
|
|
1372
|
+
:param key_attributes: This is a string-to-string map that contains information about the type of object that this SLO is related to.
|
|
1373
|
+
:param metric_type: If the SLO monitors either the LATENCY or AVAILABILITY metric that Application Signals collects, this field displays which of those metrics is used.
|
|
1374
|
+
:param monitored_request_count_metric: This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO. This value observed for the metric defined in ``TotalRequestCountMetric`` is divided by the number found for ``MonitoredRequestCountMetric`` to determine the percentage of successful requests that this SLO tracks.
|
|
1375
|
+
:param operation_name: If the SLO monitors a specific operation of the service, this field displays that operation name.
|
|
1376
|
+
:param total_request_count_metric: If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1377
|
+
|
|
1378
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html
|
|
1379
|
+
:exampleMetadata: fixture=_generated
|
|
1380
|
+
|
|
1381
|
+
Example::
|
|
1382
|
+
|
|
1383
|
+
# The code below shows an example of how to instantiate this type.
|
|
1384
|
+
# The values are placeholders you should change.
|
|
1385
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1386
|
+
|
|
1387
|
+
request_based_sli_metric_property = applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
1388
|
+
key_attributes={
|
|
1389
|
+
"key_attributes_key": "keyAttributes"
|
|
1390
|
+
},
|
|
1391
|
+
metric_type="metricType",
|
|
1392
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1393
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1394
|
+
id="id",
|
|
1395
|
+
|
|
1396
|
+
# the properties below are optional
|
|
1397
|
+
account_id="accountId",
|
|
1398
|
+
expression="expression",
|
|
1399
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1400
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1401
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1402
|
+
name="name",
|
|
1403
|
+
value="value"
|
|
1404
|
+
)],
|
|
1405
|
+
metric_name="metricName",
|
|
1406
|
+
namespace="namespace"
|
|
1407
|
+
),
|
|
1408
|
+
period=123,
|
|
1409
|
+
stat="stat",
|
|
1410
|
+
|
|
1411
|
+
# the properties below are optional
|
|
1412
|
+
unit="unit"
|
|
1413
|
+
),
|
|
1414
|
+
return_data=False
|
|
1415
|
+
)],
|
|
1416
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1417
|
+
id="id",
|
|
1418
|
+
|
|
1419
|
+
# the properties below are optional
|
|
1420
|
+
account_id="accountId",
|
|
1421
|
+
expression="expression",
|
|
1422
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1423
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1424
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1425
|
+
name="name",
|
|
1426
|
+
value="value"
|
|
1427
|
+
)],
|
|
1428
|
+
metric_name="metricName",
|
|
1429
|
+
namespace="namespace"
|
|
1430
|
+
),
|
|
1431
|
+
period=123,
|
|
1432
|
+
stat="stat",
|
|
1433
|
+
|
|
1434
|
+
# the properties below are optional
|
|
1435
|
+
unit="unit"
|
|
1436
|
+
),
|
|
1437
|
+
return_data=False
|
|
1438
|
+
)]
|
|
1439
|
+
),
|
|
1440
|
+
operation_name="operationName",
|
|
1441
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1442
|
+
id="id",
|
|
1443
|
+
|
|
1444
|
+
# the properties below are optional
|
|
1445
|
+
account_id="accountId",
|
|
1446
|
+
expression="expression",
|
|
1447
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1448
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1449
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1450
|
+
name="name",
|
|
1451
|
+
value="value"
|
|
1452
|
+
)],
|
|
1453
|
+
metric_name="metricName",
|
|
1454
|
+
namespace="namespace"
|
|
1455
|
+
),
|
|
1456
|
+
period=123,
|
|
1457
|
+
stat="stat",
|
|
1458
|
+
|
|
1459
|
+
# the properties below are optional
|
|
1460
|
+
unit="unit"
|
|
1461
|
+
),
|
|
1462
|
+
return_data=False
|
|
1463
|
+
)]
|
|
1464
|
+
)
|
|
1465
|
+
'''
|
|
1466
|
+
if __debug__:
|
|
1467
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2e0bf3c4e354ab94132efc9fd8fa57b0d903b7020ec1b6c4d1c1388698e31a7d)
|
|
1468
|
+
check_type(argname="argument key_attributes", value=key_attributes, expected_type=type_hints["key_attributes"])
|
|
1469
|
+
check_type(argname="argument metric_type", value=metric_type, expected_type=type_hints["metric_type"])
|
|
1470
|
+
check_type(argname="argument monitored_request_count_metric", value=monitored_request_count_metric, expected_type=type_hints["monitored_request_count_metric"])
|
|
1471
|
+
check_type(argname="argument operation_name", value=operation_name, expected_type=type_hints["operation_name"])
|
|
1472
|
+
check_type(argname="argument total_request_count_metric", value=total_request_count_metric, expected_type=type_hints["total_request_count_metric"])
|
|
1473
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1474
|
+
if key_attributes is not None:
|
|
1475
|
+
self._values["key_attributes"] = key_attributes
|
|
1476
|
+
if metric_type is not None:
|
|
1477
|
+
self._values["metric_type"] = metric_type
|
|
1478
|
+
if monitored_request_count_metric is not None:
|
|
1479
|
+
self._values["monitored_request_count_metric"] = monitored_request_count_metric
|
|
1480
|
+
if operation_name is not None:
|
|
1481
|
+
self._values["operation_name"] = operation_name
|
|
1482
|
+
if total_request_count_metric is not None:
|
|
1483
|
+
self._values["total_request_count_metric"] = total_request_count_metric
|
|
1484
|
+
|
|
1485
|
+
@builtins.property
|
|
1486
|
+
def key_attributes(
|
|
1487
|
+
self,
|
|
1488
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
|
|
1489
|
+
'''This is a string-to-string map that contains information about the type of object that this SLO is related to.
|
|
1490
|
+
|
|
1491
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-keyattributes
|
|
1492
|
+
'''
|
|
1493
|
+
result = self._values.get("key_attributes")
|
|
1494
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]], result)
|
|
1495
|
+
|
|
1496
|
+
@builtins.property
|
|
1497
|
+
def metric_type(self) -> typing.Optional[builtins.str]:
|
|
1498
|
+
'''If the SLO monitors either the LATENCY or AVAILABILITY metric that Application Signals collects, this field displays which of those metrics is used.
|
|
1499
|
+
|
|
1500
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-metrictype
|
|
1501
|
+
'''
|
|
1502
|
+
result = self._values.get("metric_type")
|
|
1503
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1504
|
+
|
|
1505
|
+
@builtins.property
|
|
1506
|
+
def monitored_request_count_metric(
|
|
1507
|
+
self,
|
|
1508
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MonitoredRequestCountMetricProperty"]]:
|
|
1509
|
+
'''This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO.
|
|
1510
|
+
|
|
1511
|
+
This value observed for the metric defined in ``TotalRequestCountMetric`` is divided by the number found for ``MonitoredRequestCountMetric`` to determine the percentage of successful requests that this SLO tracks.
|
|
1512
|
+
|
|
1513
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-monitoredrequestcountmetric
|
|
1514
|
+
'''
|
|
1515
|
+
result = self._values.get("monitored_request_count_metric")
|
|
1516
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MonitoredRequestCountMetricProperty"]], result)
|
|
1517
|
+
|
|
1518
|
+
@builtins.property
|
|
1519
|
+
def operation_name(self) -> typing.Optional[builtins.str]:
|
|
1520
|
+
'''If the SLO monitors a specific operation of the service, this field displays that operation name.
|
|
1521
|
+
|
|
1522
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-operationname
|
|
1523
|
+
'''
|
|
1524
|
+
result = self._values.get("operation_name")
|
|
1525
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1526
|
+
|
|
1527
|
+
@builtins.property
|
|
1528
|
+
def total_request_count_metric(
|
|
1529
|
+
self,
|
|
1530
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1531
|
+
'''If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
|
|
1532
|
+
|
|
1533
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-totalrequestcountmetric
|
|
1534
|
+
'''
|
|
1535
|
+
result = self._values.get("total_request_count_metric")
|
|
1536
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1537
|
+
|
|
1538
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1539
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1540
|
+
|
|
1541
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1542
|
+
return not (rhs == self)
|
|
1543
|
+
|
|
1544
|
+
def __repr__(self) -> str:
|
|
1545
|
+
return "RequestBasedSliMetricProperty(%s)" % ", ".join(
|
|
1546
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1547
|
+
)
|
|
1548
|
+
|
|
1549
|
+
@jsii.data_type(
|
|
1550
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty",
|
|
1551
|
+
jsii_struct_bases=[],
|
|
1552
|
+
name_mapping={
|
|
1553
|
+
"request_based_sli_metric": "requestBasedSliMetric",
|
|
1554
|
+
"comparison_operator": "comparisonOperator",
|
|
1555
|
+
"metric_threshold": "metricThreshold",
|
|
1556
|
+
},
|
|
1557
|
+
)
|
|
1558
|
+
class RequestBasedSliProperty:
|
|
1559
|
+
def __init__(
|
|
1560
|
+
self,
|
|
1561
|
+
*,
|
|
1562
|
+
request_based_sli_metric: typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.RequestBasedSliMetricProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
1563
|
+
comparison_operator: typing.Optional[builtins.str] = None,
|
|
1564
|
+
metric_threshold: typing.Optional[jsii.Number] = None,
|
|
1565
|
+
) -> None:
|
|
1566
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.
|
|
1567
|
+
|
|
1568
|
+
:param request_based_sli_metric: This structure contains the information about the metric that is used for a request-based SLO.
|
|
1569
|
+
:param comparison_operator: The arithmetic operation used when comparing the specified metric to the threshold.
|
|
1570
|
+
:param metric_threshold: The value that the SLI metric is compared to.
|
|
1571
|
+
|
|
1572
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html
|
|
1573
|
+
:exampleMetadata: fixture=_generated
|
|
1574
|
+
|
|
1575
|
+
Example::
|
|
1576
|
+
|
|
1577
|
+
# The code below shows an example of how to instantiate this type.
|
|
1578
|
+
# The values are placeholders you should change.
|
|
1579
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1580
|
+
|
|
1581
|
+
request_based_sli_property = applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
1582
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
1583
|
+
key_attributes={
|
|
1584
|
+
"key_attributes_key": "keyAttributes"
|
|
1585
|
+
},
|
|
1586
|
+
metric_type="metricType",
|
|
1587
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1588
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1589
|
+
id="id",
|
|
1590
|
+
|
|
1591
|
+
# the properties below are optional
|
|
1592
|
+
account_id="accountId",
|
|
1593
|
+
expression="expression",
|
|
1594
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1595
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1596
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1597
|
+
name="name",
|
|
1598
|
+
value="value"
|
|
1599
|
+
)],
|
|
1600
|
+
metric_name="metricName",
|
|
1601
|
+
namespace="namespace"
|
|
1602
|
+
),
|
|
1603
|
+
period=123,
|
|
1604
|
+
stat="stat",
|
|
1605
|
+
|
|
1606
|
+
# the properties below are optional
|
|
1607
|
+
unit="unit"
|
|
1608
|
+
),
|
|
1609
|
+
return_data=False
|
|
1610
|
+
)],
|
|
1611
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1612
|
+
id="id",
|
|
1613
|
+
|
|
1614
|
+
# the properties below are optional
|
|
1615
|
+
account_id="accountId",
|
|
1616
|
+
expression="expression",
|
|
1617
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1618
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1619
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1620
|
+
name="name",
|
|
1621
|
+
value="value"
|
|
1622
|
+
)],
|
|
1623
|
+
metric_name="metricName",
|
|
1624
|
+
namespace="namespace"
|
|
1625
|
+
),
|
|
1626
|
+
period=123,
|
|
1627
|
+
stat="stat",
|
|
1628
|
+
|
|
1629
|
+
# the properties below are optional
|
|
1630
|
+
unit="unit"
|
|
1631
|
+
),
|
|
1632
|
+
return_data=False
|
|
1633
|
+
)]
|
|
1634
|
+
),
|
|
1635
|
+
operation_name="operationName",
|
|
1636
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1637
|
+
id="id",
|
|
1638
|
+
|
|
1639
|
+
# the properties below are optional
|
|
1640
|
+
account_id="accountId",
|
|
1641
|
+
expression="expression",
|
|
1642
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1643
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1644
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1645
|
+
name="name",
|
|
1646
|
+
value="value"
|
|
1647
|
+
)],
|
|
1648
|
+
metric_name="metricName",
|
|
1649
|
+
namespace="namespace"
|
|
1650
|
+
),
|
|
1651
|
+
period=123,
|
|
1652
|
+
stat="stat",
|
|
1653
|
+
|
|
1654
|
+
# the properties below are optional
|
|
1655
|
+
unit="unit"
|
|
1656
|
+
),
|
|
1657
|
+
return_data=False
|
|
1658
|
+
)]
|
|
1659
|
+
),
|
|
1660
|
+
|
|
1661
|
+
# the properties below are optional
|
|
1662
|
+
comparison_operator="comparisonOperator",
|
|
1663
|
+
metric_threshold=123
|
|
1664
|
+
)
|
|
1665
|
+
'''
|
|
1666
|
+
if __debug__:
|
|
1667
|
+
type_hints = typing.get_type_hints(_typecheckingstub__387849408a1ac74889f2dec7244d223e0b97c35e19e4915f6a024667214f0cbb)
|
|
1668
|
+
check_type(argname="argument request_based_sli_metric", value=request_based_sli_metric, expected_type=type_hints["request_based_sli_metric"])
|
|
1669
|
+
check_type(argname="argument comparison_operator", value=comparison_operator, expected_type=type_hints["comparison_operator"])
|
|
1670
|
+
check_type(argname="argument metric_threshold", value=metric_threshold, expected_type=type_hints["metric_threshold"])
|
|
1671
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1672
|
+
"request_based_sli_metric": request_based_sli_metric,
|
|
1673
|
+
}
|
|
1674
|
+
if comparison_operator is not None:
|
|
1675
|
+
self._values["comparison_operator"] = comparison_operator
|
|
1676
|
+
if metric_threshold is not None:
|
|
1677
|
+
self._values["metric_threshold"] = metric_threshold
|
|
1678
|
+
|
|
1679
|
+
@builtins.property
|
|
1680
|
+
def request_based_sli_metric(
|
|
1681
|
+
self,
|
|
1682
|
+
) -> typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliMetricProperty"]:
|
|
1683
|
+
'''This structure contains the information about the metric that is used for a request-based SLO.
|
|
1684
|
+
|
|
1685
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-requestbasedslimetric
|
|
1686
|
+
'''
|
|
1687
|
+
result = self._values.get("request_based_sli_metric")
|
|
1688
|
+
assert result is not None, "Required property 'request_based_sli_metric' is missing"
|
|
1689
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliMetricProperty"], result)
|
|
1690
|
+
|
|
1691
|
+
@builtins.property
|
|
1692
|
+
def comparison_operator(self) -> typing.Optional[builtins.str]:
|
|
1693
|
+
'''The arithmetic operation used when comparing the specified metric to the threshold.
|
|
1694
|
+
|
|
1695
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-comparisonoperator
|
|
1696
|
+
'''
|
|
1697
|
+
result = self._values.get("comparison_operator")
|
|
1698
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1699
|
+
|
|
1700
|
+
@builtins.property
|
|
1701
|
+
def metric_threshold(self) -> typing.Optional[jsii.Number]:
|
|
1702
|
+
'''The value that the SLI metric is compared to.
|
|
1703
|
+
|
|
1704
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-metricthreshold
|
|
1705
|
+
'''
|
|
1706
|
+
result = self._values.get("metric_threshold")
|
|
1707
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
1708
|
+
|
|
1709
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1710
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1711
|
+
|
|
1712
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1713
|
+
return not (rhs == self)
|
|
1714
|
+
|
|
1715
|
+
def __repr__(self) -> str:
|
|
1716
|
+
return "RequestBasedSliProperty(%s)" % ", ".join(
|
|
1717
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1718
|
+
)
|
|
1719
|
+
|
|
1093
1720
|
@jsii.data_type(
|
|
1094
1721
|
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RollingIntervalProperty",
|
|
1095
1722
|
jsii_struct_bases=[],
|
|
@@ -1474,6 +2101,7 @@ class CfnServiceLevelObjective(
|
|
|
1474
2101
|
"sli": "sli",
|
|
1475
2102
|
"description": "description",
|
|
1476
2103
|
"goal": "goal",
|
|
2104
|
+
"request_based_sli": "requestBasedSli",
|
|
1477
2105
|
"tags": "tags",
|
|
1478
2106
|
},
|
|
1479
2107
|
)
|
|
@@ -1485,6 +2113,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1485
2113
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1486
2114
|
description: typing.Optional[builtins.str] = None,
|
|
1487
2115
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2116
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1488
2117
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1489
2118
|
) -> None:
|
|
1490
2119
|
'''Properties for defining a ``CfnServiceLevelObjective``.
|
|
@@ -1493,6 +2122,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1493
2122
|
:param sli: A structure containing information about the performance metric that this SLO monitors.
|
|
1494
2123
|
:param description: An optional description for this SLO. Default: - "No description"
|
|
1495
2124
|
:param goal: This structure contains the attributes that determine the goal of an SLO. This includes the time period for evaluation and the attainment threshold.
|
|
2125
|
+
:param request_based_sli: This structure contains information about the performance metric that a request-based SLO monitors.
|
|
1496
2126
|
:param tags: A list of key-value pairs to associate with the SLO. You can associate as many as 50 tags with an SLO. To be able to associate tags with the SLO when you create the SLO, you must have the cloudwatch:TagResource permission. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.
|
|
1497
2127
|
|
|
1498
2128
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html
|
|
@@ -1560,6 +2190,90 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1560
2190
|
),
|
|
1561
2191
|
warning_threshold=123
|
|
1562
2192
|
),
|
|
2193
|
+
request_based_sli=applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
2194
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
2195
|
+
key_attributes={
|
|
2196
|
+
"key_attributes_key": "keyAttributes"
|
|
2197
|
+
},
|
|
2198
|
+
metric_type="metricType",
|
|
2199
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
2200
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2201
|
+
id="id",
|
|
2202
|
+
|
|
2203
|
+
# the properties below are optional
|
|
2204
|
+
account_id="accountId",
|
|
2205
|
+
expression="expression",
|
|
2206
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2207
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2208
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2209
|
+
name="name",
|
|
2210
|
+
value="value"
|
|
2211
|
+
)],
|
|
2212
|
+
metric_name="metricName",
|
|
2213
|
+
namespace="namespace"
|
|
2214
|
+
),
|
|
2215
|
+
period=123,
|
|
2216
|
+
stat="stat",
|
|
2217
|
+
|
|
2218
|
+
# the properties below are optional
|
|
2219
|
+
unit="unit"
|
|
2220
|
+
),
|
|
2221
|
+
return_data=False
|
|
2222
|
+
)],
|
|
2223
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2224
|
+
id="id",
|
|
2225
|
+
|
|
2226
|
+
# the properties below are optional
|
|
2227
|
+
account_id="accountId",
|
|
2228
|
+
expression="expression",
|
|
2229
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2230
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2231
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2232
|
+
name="name",
|
|
2233
|
+
value="value"
|
|
2234
|
+
)],
|
|
2235
|
+
metric_name="metricName",
|
|
2236
|
+
namespace="namespace"
|
|
2237
|
+
),
|
|
2238
|
+
period=123,
|
|
2239
|
+
stat="stat",
|
|
2240
|
+
|
|
2241
|
+
# the properties below are optional
|
|
2242
|
+
unit="unit"
|
|
2243
|
+
),
|
|
2244
|
+
return_data=False
|
|
2245
|
+
)]
|
|
2246
|
+
),
|
|
2247
|
+
operation_name="operationName",
|
|
2248
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2249
|
+
id="id",
|
|
2250
|
+
|
|
2251
|
+
# the properties below are optional
|
|
2252
|
+
account_id="accountId",
|
|
2253
|
+
expression="expression",
|
|
2254
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2255
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2256
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2257
|
+
name="name",
|
|
2258
|
+
value="value"
|
|
2259
|
+
)],
|
|
2260
|
+
metric_name="metricName",
|
|
2261
|
+
namespace="namespace"
|
|
2262
|
+
),
|
|
2263
|
+
period=123,
|
|
2264
|
+
stat="stat",
|
|
2265
|
+
|
|
2266
|
+
# the properties below are optional
|
|
2267
|
+
unit="unit"
|
|
2268
|
+
),
|
|
2269
|
+
return_data=False
|
|
2270
|
+
)]
|
|
2271
|
+
),
|
|
2272
|
+
|
|
2273
|
+
# the properties below are optional
|
|
2274
|
+
comparison_operator="comparisonOperator",
|
|
2275
|
+
metric_threshold=123
|
|
2276
|
+
),
|
|
1563
2277
|
tags=[CfnTag(
|
|
1564
2278
|
key="key",
|
|
1565
2279
|
value="value"
|
|
@@ -1572,6 +2286,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1572
2286
|
check_type(argname="argument sli", value=sli, expected_type=type_hints["sli"])
|
|
1573
2287
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
1574
2288
|
check_type(argname="argument goal", value=goal, expected_type=type_hints["goal"])
|
|
2289
|
+
check_type(argname="argument request_based_sli", value=request_based_sli, expected_type=type_hints["request_based_sli"])
|
|
1575
2290
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
1576
2291
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1577
2292
|
"name": name,
|
|
@@ -1581,6 +2296,8 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1581
2296
|
self._values["description"] = description
|
|
1582
2297
|
if goal is not None:
|
|
1583
2298
|
self._values["goal"] = goal
|
|
2299
|
+
if request_based_sli is not None:
|
|
2300
|
+
self._values["request_based_sli"] = request_based_sli
|
|
1584
2301
|
if tags is not None:
|
|
1585
2302
|
self._values["tags"] = tags
|
|
1586
2303
|
|
|
@@ -1630,6 +2347,17 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1630
2347
|
result = self._values.get("goal")
|
|
1631
2348
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.GoalProperty]], result)
|
|
1632
2349
|
|
|
2350
|
+
@builtins.property
|
|
2351
|
+
def request_based_sli(
|
|
2352
|
+
self,
|
|
2353
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]]:
|
|
2354
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.
|
|
2355
|
+
|
|
2356
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli
|
|
2357
|
+
'''
|
|
2358
|
+
result = self._values.get("request_based_sli")
|
|
2359
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]], result)
|
|
2360
|
+
|
|
1633
2361
|
@builtins.property
|
|
1634
2362
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
1635
2363
|
'''A list of key-value pairs to associate with the SLO.
|
|
@@ -1670,6 +2398,7 @@ def _typecheckingstub__8476d024be5b448cfb8f9ae2f80fa7f2083296f712cdb7cd12e69365d
|
|
|
1670
2398
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1671
2399
|
description: typing.Optional[builtins.str] = None,
|
|
1672
2400
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2401
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1673
2402
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1674
2403
|
) -> None:
|
|
1675
2404
|
"""Type checking stubs"""
|
|
@@ -1711,6 +2440,12 @@ def _typecheckingstub__f72f1f3f286714a7cb6611be91fc84bc135d11974635585192dc6a6bb
|
|
|
1711
2440
|
"""Type checking stubs"""
|
|
1712
2441
|
pass
|
|
1713
2442
|
|
|
2443
|
+
def _typecheckingstub__85c3a53f1420ec52267d0c5ef83b407de2a88d1eff567b79facf44748e778f2f(
|
|
2444
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]],
|
|
2445
|
+
) -> None:
|
|
2446
|
+
"""Type checking stubs"""
|
|
2447
|
+
pass
|
|
2448
|
+
|
|
1714
2449
|
def _typecheckingstub__45578973503123093d3b0c8f845e2df0c9ad023b7df510f3a7b7ee7abcccd506(
|
|
1715
2450
|
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
1716
2451
|
) -> None:
|
|
@@ -1781,6 +2516,34 @@ def _typecheckingstub__9112cc9d5e83260e285e14202026cd0c682ccbbd611252cb22444f31a
|
|
|
1781
2516
|
"""Type checking stubs"""
|
|
1782
2517
|
pass
|
|
1783
2518
|
|
|
2519
|
+
def _typecheckingstub__0e098e20f2cfc04332a5fbb15ca2b6cd689368d77d87938dc8d7467b0f3963de(
|
|
2520
|
+
*,
|
|
2521
|
+
bad_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.MetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2522
|
+
good_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.MetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2523
|
+
) -> None:
|
|
2524
|
+
"""Type checking stubs"""
|
|
2525
|
+
pass
|
|
2526
|
+
|
|
2527
|
+
def _typecheckingstub__2e0bf3c4e354ab94132efc9fd8fa57b0d903b7020ec1b6c4d1c1388698e31a7d(
|
|
2528
|
+
*,
|
|
2529
|
+
key_attributes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
|
|
2530
|
+
metric_type: typing.Optional[builtins.str] = None,
|
|
2531
|
+
monitored_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.MonitoredRequestCountMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2532
|
+
operation_name: typing.Optional[builtins.str] = None,
|
|
2533
|
+
total_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.MetricDataQueryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2534
|
+
) -> None:
|
|
2535
|
+
"""Type checking stubs"""
|
|
2536
|
+
pass
|
|
2537
|
+
|
|
2538
|
+
def _typecheckingstub__387849408a1ac74889f2dec7244d223e0b97c35e19e4915f6a024667214f0cbb(
|
|
2539
|
+
*,
|
|
2540
|
+
request_based_sli_metric: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliMetricProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
2541
|
+
comparison_operator: typing.Optional[builtins.str] = None,
|
|
2542
|
+
metric_threshold: typing.Optional[jsii.Number] = None,
|
|
2543
|
+
) -> None:
|
|
2544
|
+
"""Type checking stubs"""
|
|
2545
|
+
pass
|
|
2546
|
+
|
|
1784
2547
|
def _typecheckingstub__3ea5efcc7f9d7eb11cc8de5d96525adb6a7e2bfc30446b0fcdb3c7cd640413c1(
|
|
1785
2548
|
*,
|
|
1786
2549
|
duration: jsii.Number,
|
|
@@ -1816,6 +2579,7 @@ def _typecheckingstub__8a302456885343cc9ce5e0497feed773de1ef0f44e2934f97458bfdc5
|
|
|
1816
2579
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1817
2580
|
description: typing.Optional[builtins.str] = None,
|
|
1818
2581
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2582
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1819
2583
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1820
2584
|
) -> None:
|
|
1821
2585
|
"""Type checking stubs"""
|