aws-cdk-lib 2.155.0__py3-none-any.whl → 2.157.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 +28 -24
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.155.0.jsii.tgz → aws-cdk-lib@2.157.0.jsii.tgz} +0 -0
- aws_cdk/aws_acmpca/__init__.py +10 -75
- aws_cdk/aws_amplify/__init__.py +106 -0
- aws_cdk/aws_apigatewayv2/__init__.py +81 -13
- aws_cdk/aws_appintegrations/__init__.py +14 -14
- aws_cdk/aws_applicationsignals/__init__.py +750 -1
- aws_cdk/aws_appsync/__init__.py +50 -18
- aws_cdk/aws_autoscaling/__init__.py +6 -6
- aws_cdk/aws_backup/__init__.py +39 -0
- aws_cdk/aws_batch/__init__.py +41 -0
- aws_cdk/aws_bedrock/__init__.py +1528 -91
- aws_cdk/aws_chatbot/__init__.py +6 -6
- aws_cdk/aws_cloudformation/__init__.py +22 -22
- aws_cdk/aws_cloudfront/__init__.py +650 -57
- aws_cdk/aws_cloudfront/experimental/__init__.py +30 -3
- aws_cdk/aws_cloudfront_origins/__init__.py +2034 -91
- aws_cdk/aws_codebuild/__init__.py +1 -1
- aws_cdk/aws_datasync/__init__.py +40 -29
- aws_cdk/aws_docdb/__init__.py +78 -6
- aws_cdk/aws_ec2/__init__.py +397 -75
- aws_cdk/aws_ecs/__init__.py +271 -101
- aws_cdk/aws_ecs_patterns/__init__.py +129 -11
- aws_cdk/aws_eks/__init__.py +40 -4
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +26 -50
- aws_cdk/aws_entityresolution/__init__.py +117 -4
- aws_cdk/aws_events/__init__.py +40 -14
- aws_cdk/aws_events_targets/__init__.py +357 -0
- aws_cdk/aws_glue/__init__.py +0 -8
- aws_cdk/aws_groundstation/__init__.py +27 -16
- aws_cdk/aws_guardduty/__init__.py +26 -14
- aws_cdk/aws_iam/__init__.py +7 -8
- aws_cdk/aws_iotfleetwise/__init__.py +108 -0
- aws_cdk/aws_kms/__init__.py +53 -10
- aws_cdk/aws_lambda/__init__.py +147 -17
- aws_cdk/aws_lambda_nodejs/__init__.py +30 -3
- aws_cdk/aws_macie/__init__.py +4 -4
- aws_cdk/aws_medialive/__init__.py +348 -0
- aws_cdk/aws_mediapackagev2/__init__.py +38 -38
- aws_cdk/aws_neptune/__init__.py +14 -8
- aws_cdk/aws_opensearchservice/__init__.py +194 -0
- aws_cdk/aws_pcaconnectorscep/__init__.py +884 -0
- aws_cdk/aws_personalize/__init__.py +2 -2
- aws_cdk/aws_pipes/__init__.py +22 -22
- aws_cdk/aws_qbusiness/__init__.py +675 -6
- aws_cdk/aws_quicksight/__init__.py +3285 -0
- aws_cdk/aws_rds/__init__.py +24 -0
- aws_cdk/aws_s3/__init__.py +13 -14
- aws_cdk/aws_sagemaker/__init__.py +1167 -0
- aws_cdk/aws_secretsmanager/__init__.py +2 -3
- aws_cdk/aws_securityhub/__init__.py +108 -103
- aws_cdk/aws_ses/__init__.py +31 -0
- aws_cdk/aws_sns/__init__.py +19 -13
- aws_cdk/aws_ssm/__init__.py +10 -6
- aws_cdk/aws_ssmquicksetup/__init__.py +967 -0
- aws_cdk/aws_stepfunctions_tasks/__init__.py +106 -45
- aws_cdk/aws_synthetics/__init__.py +13 -0
- aws_cdk/cx_api/__init__.py +16 -0
- aws_cdk/triggers/__init__.py +30 -3
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/RECORD +66 -64
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/top_level.txt +0 -0
|
@@ -160,6 +160,90 @@ class CfnServiceLevelObjective(
|
|
|
160
160
|
),
|
|
161
161
|
warning_threshold=123
|
|
162
162
|
),
|
|
163
|
+
request_based_sli=applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
164
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
165
|
+
key_attributes={
|
|
166
|
+
"key_attributes_key": "keyAttributes"
|
|
167
|
+
},
|
|
168
|
+
metric_type="metricType",
|
|
169
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
170
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
171
|
+
id="id",
|
|
172
|
+
|
|
173
|
+
# the properties below are optional
|
|
174
|
+
account_id="accountId",
|
|
175
|
+
expression="expression",
|
|
176
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
177
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
178
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
179
|
+
name="name",
|
|
180
|
+
value="value"
|
|
181
|
+
)],
|
|
182
|
+
metric_name="metricName",
|
|
183
|
+
namespace="namespace"
|
|
184
|
+
),
|
|
185
|
+
period=123,
|
|
186
|
+
stat="stat",
|
|
187
|
+
|
|
188
|
+
# the properties below are optional
|
|
189
|
+
unit="unit"
|
|
190
|
+
),
|
|
191
|
+
return_data=False
|
|
192
|
+
)],
|
|
193
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
194
|
+
id="id",
|
|
195
|
+
|
|
196
|
+
# the properties below are optional
|
|
197
|
+
account_id="accountId",
|
|
198
|
+
expression="expression",
|
|
199
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
200
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
201
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
202
|
+
name="name",
|
|
203
|
+
value="value"
|
|
204
|
+
)],
|
|
205
|
+
metric_name="metricName",
|
|
206
|
+
namespace="namespace"
|
|
207
|
+
),
|
|
208
|
+
period=123,
|
|
209
|
+
stat="stat",
|
|
210
|
+
|
|
211
|
+
# the properties below are optional
|
|
212
|
+
unit="unit"
|
|
213
|
+
),
|
|
214
|
+
return_data=False
|
|
215
|
+
)]
|
|
216
|
+
),
|
|
217
|
+
operation_name="operationName",
|
|
218
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
219
|
+
id="id",
|
|
220
|
+
|
|
221
|
+
# the properties below are optional
|
|
222
|
+
account_id="accountId",
|
|
223
|
+
expression="expression",
|
|
224
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
225
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
226
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
227
|
+
name="name",
|
|
228
|
+
value="value"
|
|
229
|
+
)],
|
|
230
|
+
metric_name="metricName",
|
|
231
|
+
namespace="namespace"
|
|
232
|
+
),
|
|
233
|
+
period=123,
|
|
234
|
+
stat="stat",
|
|
235
|
+
|
|
236
|
+
# the properties below are optional
|
|
237
|
+
unit="unit"
|
|
238
|
+
),
|
|
239
|
+
return_data=False
|
|
240
|
+
)]
|
|
241
|
+
),
|
|
242
|
+
|
|
243
|
+
# the properties below are optional
|
|
244
|
+
comparison_operator="comparisonOperator",
|
|
245
|
+
metric_threshold=123
|
|
246
|
+
),
|
|
163
247
|
tags=[CfnTag(
|
|
164
248
|
key="key",
|
|
165
249
|
value="value"
|
|
@@ -176,6 +260,7 @@ class CfnServiceLevelObjective(
|
|
|
176
260
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.SliProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
177
261
|
description: typing.Optional[builtins.str] = None,
|
|
178
262
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.GoalProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
263
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.RequestBasedSliProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
179
264
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
180
265
|
) -> None:
|
|
181
266
|
'''
|
|
@@ -185,6 +270,7 @@ class CfnServiceLevelObjective(
|
|
|
185
270
|
:param sli: A structure containing information about the performance metric that this SLO monitors.
|
|
186
271
|
:param description: An optional description for this SLO. Default: - "No description"
|
|
187
272
|
: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.
|
|
273
|
+
:param request_based_sli: This structure contains information about the performance metric that a request-based SLO monitors.
|
|
188
274
|
: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
275
|
'''
|
|
190
276
|
if __debug__:
|
|
@@ -192,7 +278,12 @@ class CfnServiceLevelObjective(
|
|
|
192
278
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
193
279
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
194
280
|
props = CfnServiceLevelObjectiveProps(
|
|
195
|
-
name=name,
|
|
281
|
+
name=name,
|
|
282
|
+
sli=sli,
|
|
283
|
+
description=description,
|
|
284
|
+
goal=goal,
|
|
285
|
+
request_based_sli=request_based_sli,
|
|
286
|
+
tags=tags,
|
|
196
287
|
)
|
|
197
288
|
|
|
198
289
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
@@ -245,6 +336,15 @@ class CfnServiceLevelObjective(
|
|
|
245
336
|
'''
|
|
246
337
|
return typing.cast(jsii.Number, jsii.get(self, "attrCreatedTime"))
|
|
247
338
|
|
|
339
|
+
@builtins.property
|
|
340
|
+
@jsii.member(jsii_name="attrEvaluationType")
|
|
341
|
+
def attr_evaluation_type(self) -> builtins.str:
|
|
342
|
+
'''Displays whether this is a period-based SLO or a request-based SLO.
|
|
343
|
+
|
|
344
|
+
:cloudformationAttribute: EvaluationType
|
|
345
|
+
'''
|
|
346
|
+
return typing.cast(builtins.str, jsii.get(self, "attrEvaluationType"))
|
|
347
|
+
|
|
248
348
|
@builtins.property
|
|
249
349
|
@jsii.member(jsii_name="attrLastUpdatedTime")
|
|
250
350
|
def attr_last_updated_time(self) -> jsii.Number:
|
|
@@ -327,6 +427,24 @@ class CfnServiceLevelObjective(
|
|
|
327
427
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
328
428
|
jsii.set(self, "goal", value) # pyright: ignore[reportArgumentType]
|
|
329
429
|
|
|
430
|
+
@builtins.property
|
|
431
|
+
@jsii.member(jsii_name="requestBasedSli")
|
|
432
|
+
def request_based_sli(
|
|
433
|
+
self,
|
|
434
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]]:
|
|
435
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.'''
|
|
436
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]], jsii.get(self, "requestBasedSli"))
|
|
437
|
+
|
|
438
|
+
@request_based_sli.setter
|
|
439
|
+
def request_based_sli(
|
|
440
|
+
self,
|
|
441
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliProperty"]],
|
|
442
|
+
) -> None:
|
|
443
|
+
if __debug__:
|
|
444
|
+
type_hints = typing.get_type_hints(_typecheckingstub__85c3a53f1420ec52267d0c5ef83b407de2a88d1eff567b79facf44748e778f2f)
|
|
445
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
446
|
+
jsii.set(self, "requestBasedSli", value) # pyright: ignore[reportArgumentType]
|
|
447
|
+
|
|
330
448
|
@builtins.property
|
|
331
449
|
@jsii.member(jsii_name="tags")
|
|
332
450
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
@@ -1090,6 +1208,500 @@ class CfnServiceLevelObjective(
|
|
|
1090
1208
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
1091
1209
|
)
|
|
1092
1210
|
|
|
1211
|
+
@jsii.data_type(
|
|
1212
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty",
|
|
1213
|
+
jsii_struct_bases=[],
|
|
1214
|
+
name_mapping={
|
|
1215
|
+
"bad_count_metric": "badCountMetric",
|
|
1216
|
+
"good_count_metric": "goodCountMetric",
|
|
1217
|
+
},
|
|
1218
|
+
)
|
|
1219
|
+
class MonitoredRequestCountMetricProperty:
|
|
1220
|
+
def __init__(
|
|
1221
|
+
self,
|
|
1222
|
+
*,
|
|
1223
|
+
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,
|
|
1224
|
+
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,
|
|
1225
|
+
) -> None:
|
|
1226
|
+
'''This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO.
|
|
1227
|
+
|
|
1228
|
+
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.
|
|
1229
|
+
|
|
1230
|
+
: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.
|
|
1231
|
+
: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.
|
|
1232
|
+
|
|
1233
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html
|
|
1234
|
+
:exampleMetadata: fixture=_generated
|
|
1235
|
+
|
|
1236
|
+
Example::
|
|
1237
|
+
|
|
1238
|
+
# The code below shows an example of how to instantiate this type.
|
|
1239
|
+
# The values are placeholders you should change.
|
|
1240
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1241
|
+
|
|
1242
|
+
monitored_request_count_metric_property = applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1243
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1244
|
+
id="id",
|
|
1245
|
+
|
|
1246
|
+
# the properties below are optional
|
|
1247
|
+
account_id="accountId",
|
|
1248
|
+
expression="expression",
|
|
1249
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1250
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1251
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1252
|
+
name="name",
|
|
1253
|
+
value="value"
|
|
1254
|
+
)],
|
|
1255
|
+
metric_name="metricName",
|
|
1256
|
+
namespace="namespace"
|
|
1257
|
+
),
|
|
1258
|
+
period=123,
|
|
1259
|
+
stat="stat",
|
|
1260
|
+
|
|
1261
|
+
# the properties below are optional
|
|
1262
|
+
unit="unit"
|
|
1263
|
+
),
|
|
1264
|
+
return_data=False
|
|
1265
|
+
)],
|
|
1266
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1267
|
+
id="id",
|
|
1268
|
+
|
|
1269
|
+
# the properties below are optional
|
|
1270
|
+
account_id="accountId",
|
|
1271
|
+
expression="expression",
|
|
1272
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1273
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1274
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1275
|
+
name="name",
|
|
1276
|
+
value="value"
|
|
1277
|
+
)],
|
|
1278
|
+
metric_name="metricName",
|
|
1279
|
+
namespace="namespace"
|
|
1280
|
+
),
|
|
1281
|
+
period=123,
|
|
1282
|
+
stat="stat",
|
|
1283
|
+
|
|
1284
|
+
# the properties below are optional
|
|
1285
|
+
unit="unit"
|
|
1286
|
+
),
|
|
1287
|
+
return_data=False
|
|
1288
|
+
)]
|
|
1289
|
+
)
|
|
1290
|
+
'''
|
|
1291
|
+
if __debug__:
|
|
1292
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0e098e20f2cfc04332a5fbb15ca2b6cd689368d77d87938dc8d7467b0f3963de)
|
|
1293
|
+
check_type(argname="argument bad_count_metric", value=bad_count_metric, expected_type=type_hints["bad_count_metric"])
|
|
1294
|
+
check_type(argname="argument good_count_metric", value=good_count_metric, expected_type=type_hints["good_count_metric"])
|
|
1295
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1296
|
+
if bad_count_metric is not None:
|
|
1297
|
+
self._values["bad_count_metric"] = bad_count_metric
|
|
1298
|
+
if good_count_metric is not None:
|
|
1299
|
+
self._values["good_count_metric"] = good_count_metric
|
|
1300
|
+
|
|
1301
|
+
@builtins.property
|
|
1302
|
+
def bad_count_metric(
|
|
1303
|
+
self,
|
|
1304
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1305
|
+
'''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.
|
|
1306
|
+
|
|
1307
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html#cfn-applicationsignals-servicelevelobjective-monitoredrequestcountmetric-badcountmetric
|
|
1308
|
+
'''
|
|
1309
|
+
result = self._values.get("bad_count_metric")
|
|
1310
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1311
|
+
|
|
1312
|
+
@builtins.property
|
|
1313
|
+
def good_count_metric(
|
|
1314
|
+
self,
|
|
1315
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1316
|
+
'''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.
|
|
1317
|
+
|
|
1318
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-monitoredrequestcountmetric.html#cfn-applicationsignals-servicelevelobjective-monitoredrequestcountmetric-goodcountmetric
|
|
1319
|
+
'''
|
|
1320
|
+
result = self._values.get("good_count_metric")
|
|
1321
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1322
|
+
|
|
1323
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1324
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1325
|
+
|
|
1326
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1327
|
+
return not (rhs == self)
|
|
1328
|
+
|
|
1329
|
+
def __repr__(self) -> str:
|
|
1330
|
+
return "MonitoredRequestCountMetricProperty(%s)" % ", ".join(
|
|
1331
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1332
|
+
)
|
|
1333
|
+
|
|
1334
|
+
@jsii.data_type(
|
|
1335
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty",
|
|
1336
|
+
jsii_struct_bases=[],
|
|
1337
|
+
name_mapping={
|
|
1338
|
+
"key_attributes": "keyAttributes",
|
|
1339
|
+
"metric_type": "metricType",
|
|
1340
|
+
"monitored_request_count_metric": "monitoredRequestCountMetric",
|
|
1341
|
+
"operation_name": "operationName",
|
|
1342
|
+
"total_request_count_metric": "totalRequestCountMetric",
|
|
1343
|
+
},
|
|
1344
|
+
)
|
|
1345
|
+
class RequestBasedSliMetricProperty:
|
|
1346
|
+
def __init__(
|
|
1347
|
+
self,
|
|
1348
|
+
*,
|
|
1349
|
+
key_attributes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
|
|
1350
|
+
metric_type: typing.Optional[builtins.str] = None,
|
|
1351
|
+
monitored_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.MonitoredRequestCountMetricProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1352
|
+
operation_name: typing.Optional[builtins.str] = None,
|
|
1353
|
+
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,
|
|
1354
|
+
) -> None:
|
|
1355
|
+
'''This structure contains the information about the metric that is used for a request-based SLO.
|
|
1356
|
+
|
|
1357
|
+
:param key_attributes: This is a string-to-string map that contains information about the type of object that this SLO is related to.
|
|
1358
|
+
: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.
|
|
1359
|
+
: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.
|
|
1360
|
+
:param operation_name: If the SLO monitors a specific operation of the service, this field displays that operation name.
|
|
1361
|
+
: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.
|
|
1362
|
+
|
|
1363
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html
|
|
1364
|
+
:exampleMetadata: fixture=_generated
|
|
1365
|
+
|
|
1366
|
+
Example::
|
|
1367
|
+
|
|
1368
|
+
# The code below shows an example of how to instantiate this type.
|
|
1369
|
+
# The values are placeholders you should change.
|
|
1370
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1371
|
+
|
|
1372
|
+
request_based_sli_metric_property = applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
1373
|
+
key_attributes={
|
|
1374
|
+
"key_attributes_key": "keyAttributes"
|
|
1375
|
+
},
|
|
1376
|
+
metric_type="metricType",
|
|
1377
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1378
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1379
|
+
id="id",
|
|
1380
|
+
|
|
1381
|
+
# the properties below are optional
|
|
1382
|
+
account_id="accountId",
|
|
1383
|
+
expression="expression",
|
|
1384
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1385
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1386
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1387
|
+
name="name",
|
|
1388
|
+
value="value"
|
|
1389
|
+
)],
|
|
1390
|
+
metric_name="metricName",
|
|
1391
|
+
namespace="namespace"
|
|
1392
|
+
),
|
|
1393
|
+
period=123,
|
|
1394
|
+
stat="stat",
|
|
1395
|
+
|
|
1396
|
+
# the properties below are optional
|
|
1397
|
+
unit="unit"
|
|
1398
|
+
),
|
|
1399
|
+
return_data=False
|
|
1400
|
+
)],
|
|
1401
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1402
|
+
id="id",
|
|
1403
|
+
|
|
1404
|
+
# the properties below are optional
|
|
1405
|
+
account_id="accountId",
|
|
1406
|
+
expression="expression",
|
|
1407
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1408
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1409
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1410
|
+
name="name",
|
|
1411
|
+
value="value"
|
|
1412
|
+
)],
|
|
1413
|
+
metric_name="metricName",
|
|
1414
|
+
namespace="namespace"
|
|
1415
|
+
),
|
|
1416
|
+
period=123,
|
|
1417
|
+
stat="stat",
|
|
1418
|
+
|
|
1419
|
+
# the properties below are optional
|
|
1420
|
+
unit="unit"
|
|
1421
|
+
),
|
|
1422
|
+
return_data=False
|
|
1423
|
+
)]
|
|
1424
|
+
),
|
|
1425
|
+
operation_name="operationName",
|
|
1426
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1427
|
+
id="id",
|
|
1428
|
+
|
|
1429
|
+
# the properties below are optional
|
|
1430
|
+
account_id="accountId",
|
|
1431
|
+
expression="expression",
|
|
1432
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1433
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1434
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1435
|
+
name="name",
|
|
1436
|
+
value="value"
|
|
1437
|
+
)],
|
|
1438
|
+
metric_name="metricName",
|
|
1439
|
+
namespace="namespace"
|
|
1440
|
+
),
|
|
1441
|
+
period=123,
|
|
1442
|
+
stat="stat",
|
|
1443
|
+
|
|
1444
|
+
# the properties below are optional
|
|
1445
|
+
unit="unit"
|
|
1446
|
+
),
|
|
1447
|
+
return_data=False
|
|
1448
|
+
)]
|
|
1449
|
+
)
|
|
1450
|
+
'''
|
|
1451
|
+
if __debug__:
|
|
1452
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2e0bf3c4e354ab94132efc9fd8fa57b0d903b7020ec1b6c4d1c1388698e31a7d)
|
|
1453
|
+
check_type(argname="argument key_attributes", value=key_attributes, expected_type=type_hints["key_attributes"])
|
|
1454
|
+
check_type(argname="argument metric_type", value=metric_type, expected_type=type_hints["metric_type"])
|
|
1455
|
+
check_type(argname="argument monitored_request_count_metric", value=monitored_request_count_metric, expected_type=type_hints["monitored_request_count_metric"])
|
|
1456
|
+
check_type(argname="argument operation_name", value=operation_name, expected_type=type_hints["operation_name"])
|
|
1457
|
+
check_type(argname="argument total_request_count_metric", value=total_request_count_metric, expected_type=type_hints["total_request_count_metric"])
|
|
1458
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1459
|
+
if key_attributes is not None:
|
|
1460
|
+
self._values["key_attributes"] = key_attributes
|
|
1461
|
+
if metric_type is not None:
|
|
1462
|
+
self._values["metric_type"] = metric_type
|
|
1463
|
+
if monitored_request_count_metric is not None:
|
|
1464
|
+
self._values["monitored_request_count_metric"] = monitored_request_count_metric
|
|
1465
|
+
if operation_name is not None:
|
|
1466
|
+
self._values["operation_name"] = operation_name
|
|
1467
|
+
if total_request_count_metric is not None:
|
|
1468
|
+
self._values["total_request_count_metric"] = total_request_count_metric
|
|
1469
|
+
|
|
1470
|
+
@builtins.property
|
|
1471
|
+
def key_attributes(
|
|
1472
|
+
self,
|
|
1473
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
|
|
1474
|
+
'''This is a string-to-string map that contains information about the type of object that this SLO is related to.
|
|
1475
|
+
|
|
1476
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-keyattributes
|
|
1477
|
+
'''
|
|
1478
|
+
result = self._values.get("key_attributes")
|
|
1479
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]], result)
|
|
1480
|
+
|
|
1481
|
+
@builtins.property
|
|
1482
|
+
def metric_type(self) -> typing.Optional[builtins.str]:
|
|
1483
|
+
'''If the SLO monitors either the LATENCY or AVAILABILITY metric that Application Signals collects, this field displays which of those metrics is used.
|
|
1484
|
+
|
|
1485
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-metrictype
|
|
1486
|
+
'''
|
|
1487
|
+
result = self._values.get("metric_type")
|
|
1488
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1489
|
+
|
|
1490
|
+
@builtins.property
|
|
1491
|
+
def monitored_request_count_metric(
|
|
1492
|
+
self,
|
|
1493
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MonitoredRequestCountMetricProperty"]]:
|
|
1494
|
+
'''This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO.
|
|
1495
|
+
|
|
1496
|
+
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.
|
|
1497
|
+
|
|
1498
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-monitoredrequestcountmetric
|
|
1499
|
+
'''
|
|
1500
|
+
result = self._values.get("monitored_request_count_metric")
|
|
1501
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MonitoredRequestCountMetricProperty"]], result)
|
|
1502
|
+
|
|
1503
|
+
@builtins.property
|
|
1504
|
+
def operation_name(self) -> typing.Optional[builtins.str]:
|
|
1505
|
+
'''If the SLO monitors a specific operation of the service, this field displays that operation name.
|
|
1506
|
+
|
|
1507
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-operationname
|
|
1508
|
+
'''
|
|
1509
|
+
result = self._values.get("operation_name")
|
|
1510
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1511
|
+
|
|
1512
|
+
@builtins.property
|
|
1513
|
+
def total_request_count_metric(
|
|
1514
|
+
self,
|
|
1515
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]]:
|
|
1516
|
+
'''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.
|
|
1517
|
+
|
|
1518
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedslimetric.html#cfn-applicationsignals-servicelevelobjective-requestbasedslimetric-totalrequestcountmetric
|
|
1519
|
+
'''
|
|
1520
|
+
result = self._values.get("total_request_count_metric")
|
|
1521
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.MetricDataQueryProperty"]]]], result)
|
|
1522
|
+
|
|
1523
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1524
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1525
|
+
|
|
1526
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1527
|
+
return not (rhs == self)
|
|
1528
|
+
|
|
1529
|
+
def __repr__(self) -> str:
|
|
1530
|
+
return "RequestBasedSliMetricProperty(%s)" % ", ".join(
|
|
1531
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1532
|
+
)
|
|
1533
|
+
|
|
1534
|
+
@jsii.data_type(
|
|
1535
|
+
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty",
|
|
1536
|
+
jsii_struct_bases=[],
|
|
1537
|
+
name_mapping={
|
|
1538
|
+
"request_based_sli_metric": "requestBasedSliMetric",
|
|
1539
|
+
"comparison_operator": "comparisonOperator",
|
|
1540
|
+
"metric_threshold": "metricThreshold",
|
|
1541
|
+
},
|
|
1542
|
+
)
|
|
1543
|
+
class RequestBasedSliProperty:
|
|
1544
|
+
def __init__(
|
|
1545
|
+
self,
|
|
1546
|
+
*,
|
|
1547
|
+
request_based_sli_metric: typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceLevelObjective.RequestBasedSliMetricProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
1548
|
+
comparison_operator: typing.Optional[builtins.str] = None,
|
|
1549
|
+
metric_threshold: typing.Optional[jsii.Number] = None,
|
|
1550
|
+
) -> None:
|
|
1551
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.
|
|
1552
|
+
|
|
1553
|
+
:param request_based_sli_metric: This structure contains the information about the metric that is used for a request-based SLO.
|
|
1554
|
+
:param comparison_operator: The arithmetic operation used when comparing the specified metric to the threshold.
|
|
1555
|
+
:param metric_threshold: The value that the SLI metric is compared to.
|
|
1556
|
+
|
|
1557
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html
|
|
1558
|
+
:exampleMetadata: fixture=_generated
|
|
1559
|
+
|
|
1560
|
+
Example::
|
|
1561
|
+
|
|
1562
|
+
# The code below shows an example of how to instantiate this type.
|
|
1563
|
+
# The values are placeholders you should change.
|
|
1564
|
+
from aws_cdk import aws_applicationsignals as applicationsignals
|
|
1565
|
+
|
|
1566
|
+
request_based_sli_property = applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
1567
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
1568
|
+
key_attributes={
|
|
1569
|
+
"key_attributes_key": "keyAttributes"
|
|
1570
|
+
},
|
|
1571
|
+
metric_type="metricType",
|
|
1572
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
1573
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1574
|
+
id="id",
|
|
1575
|
+
|
|
1576
|
+
# the properties below are optional
|
|
1577
|
+
account_id="accountId",
|
|
1578
|
+
expression="expression",
|
|
1579
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1580
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1581
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1582
|
+
name="name",
|
|
1583
|
+
value="value"
|
|
1584
|
+
)],
|
|
1585
|
+
metric_name="metricName",
|
|
1586
|
+
namespace="namespace"
|
|
1587
|
+
),
|
|
1588
|
+
period=123,
|
|
1589
|
+
stat="stat",
|
|
1590
|
+
|
|
1591
|
+
# the properties below are optional
|
|
1592
|
+
unit="unit"
|
|
1593
|
+
),
|
|
1594
|
+
return_data=False
|
|
1595
|
+
)],
|
|
1596
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1597
|
+
id="id",
|
|
1598
|
+
|
|
1599
|
+
# the properties below are optional
|
|
1600
|
+
account_id="accountId",
|
|
1601
|
+
expression="expression",
|
|
1602
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1603
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1604
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1605
|
+
name="name",
|
|
1606
|
+
value="value"
|
|
1607
|
+
)],
|
|
1608
|
+
metric_name="metricName",
|
|
1609
|
+
namespace="namespace"
|
|
1610
|
+
),
|
|
1611
|
+
period=123,
|
|
1612
|
+
stat="stat",
|
|
1613
|
+
|
|
1614
|
+
# the properties below are optional
|
|
1615
|
+
unit="unit"
|
|
1616
|
+
),
|
|
1617
|
+
return_data=False
|
|
1618
|
+
)]
|
|
1619
|
+
),
|
|
1620
|
+
operation_name="operationName",
|
|
1621
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
1622
|
+
id="id",
|
|
1623
|
+
|
|
1624
|
+
# the properties below are optional
|
|
1625
|
+
account_id="accountId",
|
|
1626
|
+
expression="expression",
|
|
1627
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
1628
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
1629
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
1630
|
+
name="name",
|
|
1631
|
+
value="value"
|
|
1632
|
+
)],
|
|
1633
|
+
metric_name="metricName",
|
|
1634
|
+
namespace="namespace"
|
|
1635
|
+
),
|
|
1636
|
+
period=123,
|
|
1637
|
+
stat="stat",
|
|
1638
|
+
|
|
1639
|
+
# the properties below are optional
|
|
1640
|
+
unit="unit"
|
|
1641
|
+
),
|
|
1642
|
+
return_data=False
|
|
1643
|
+
)]
|
|
1644
|
+
),
|
|
1645
|
+
|
|
1646
|
+
# the properties below are optional
|
|
1647
|
+
comparison_operator="comparisonOperator",
|
|
1648
|
+
metric_threshold=123
|
|
1649
|
+
)
|
|
1650
|
+
'''
|
|
1651
|
+
if __debug__:
|
|
1652
|
+
type_hints = typing.get_type_hints(_typecheckingstub__387849408a1ac74889f2dec7244d223e0b97c35e19e4915f6a024667214f0cbb)
|
|
1653
|
+
check_type(argname="argument request_based_sli_metric", value=request_based_sli_metric, expected_type=type_hints["request_based_sli_metric"])
|
|
1654
|
+
check_type(argname="argument comparison_operator", value=comparison_operator, expected_type=type_hints["comparison_operator"])
|
|
1655
|
+
check_type(argname="argument metric_threshold", value=metric_threshold, expected_type=type_hints["metric_threshold"])
|
|
1656
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1657
|
+
"request_based_sli_metric": request_based_sli_metric,
|
|
1658
|
+
}
|
|
1659
|
+
if comparison_operator is not None:
|
|
1660
|
+
self._values["comparison_operator"] = comparison_operator
|
|
1661
|
+
if metric_threshold is not None:
|
|
1662
|
+
self._values["metric_threshold"] = metric_threshold
|
|
1663
|
+
|
|
1664
|
+
@builtins.property
|
|
1665
|
+
def request_based_sli_metric(
|
|
1666
|
+
self,
|
|
1667
|
+
) -> typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliMetricProperty"]:
|
|
1668
|
+
'''This structure contains the information about the metric that is used for a request-based SLO.
|
|
1669
|
+
|
|
1670
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-requestbasedslimetric
|
|
1671
|
+
'''
|
|
1672
|
+
result = self._values.get("request_based_sli_metric")
|
|
1673
|
+
assert result is not None, "Required property 'request_based_sli_metric' is missing"
|
|
1674
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnServiceLevelObjective.RequestBasedSliMetricProperty"], result)
|
|
1675
|
+
|
|
1676
|
+
@builtins.property
|
|
1677
|
+
def comparison_operator(self) -> typing.Optional[builtins.str]:
|
|
1678
|
+
'''The arithmetic operation used when comparing the specified metric to the threshold.
|
|
1679
|
+
|
|
1680
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-comparisonoperator
|
|
1681
|
+
'''
|
|
1682
|
+
result = self._values.get("comparison_operator")
|
|
1683
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1684
|
+
|
|
1685
|
+
@builtins.property
|
|
1686
|
+
def metric_threshold(self) -> typing.Optional[jsii.Number]:
|
|
1687
|
+
'''The value that the SLI metric is compared to.
|
|
1688
|
+
|
|
1689
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-requestbasedsli.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli-metricthreshold
|
|
1690
|
+
'''
|
|
1691
|
+
result = self._values.get("metric_threshold")
|
|
1692
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
1693
|
+
|
|
1694
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1695
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1696
|
+
|
|
1697
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1698
|
+
return not (rhs == self)
|
|
1699
|
+
|
|
1700
|
+
def __repr__(self) -> str:
|
|
1701
|
+
return "RequestBasedSliProperty(%s)" % ", ".join(
|
|
1702
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1703
|
+
)
|
|
1704
|
+
|
|
1093
1705
|
@jsii.data_type(
|
|
1094
1706
|
jsii_type="aws-cdk-lib.aws_applicationsignals.CfnServiceLevelObjective.RollingIntervalProperty",
|
|
1095
1707
|
jsii_struct_bases=[],
|
|
@@ -1474,6 +2086,7 @@ class CfnServiceLevelObjective(
|
|
|
1474
2086
|
"sli": "sli",
|
|
1475
2087
|
"description": "description",
|
|
1476
2088
|
"goal": "goal",
|
|
2089
|
+
"request_based_sli": "requestBasedSli",
|
|
1477
2090
|
"tags": "tags",
|
|
1478
2091
|
},
|
|
1479
2092
|
)
|
|
@@ -1485,6 +2098,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1485
2098
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1486
2099
|
description: typing.Optional[builtins.str] = None,
|
|
1487
2100
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2101
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1488
2102
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1489
2103
|
) -> None:
|
|
1490
2104
|
'''Properties for defining a ``CfnServiceLevelObjective``.
|
|
@@ -1493,6 +2107,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1493
2107
|
:param sli: A structure containing information about the performance metric that this SLO monitors.
|
|
1494
2108
|
:param description: An optional description for this SLO. Default: - "No description"
|
|
1495
2109
|
: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.
|
|
2110
|
+
:param request_based_sli: This structure contains information about the performance metric that a request-based SLO monitors.
|
|
1496
2111
|
: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
2112
|
|
|
1498
2113
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html
|
|
@@ -1560,6 +2175,90 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1560
2175
|
),
|
|
1561
2176
|
warning_threshold=123
|
|
1562
2177
|
),
|
|
2178
|
+
request_based_sli=applicationsignals.CfnServiceLevelObjective.RequestBasedSliProperty(
|
|
2179
|
+
request_based_sli_metric=applicationsignals.CfnServiceLevelObjective.RequestBasedSliMetricProperty(
|
|
2180
|
+
key_attributes={
|
|
2181
|
+
"key_attributes_key": "keyAttributes"
|
|
2182
|
+
},
|
|
2183
|
+
metric_type="metricType",
|
|
2184
|
+
monitored_request_count_metric=applicationsignals.CfnServiceLevelObjective.MonitoredRequestCountMetricProperty(
|
|
2185
|
+
bad_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2186
|
+
id="id",
|
|
2187
|
+
|
|
2188
|
+
# the properties below are optional
|
|
2189
|
+
account_id="accountId",
|
|
2190
|
+
expression="expression",
|
|
2191
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2192
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2193
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2194
|
+
name="name",
|
|
2195
|
+
value="value"
|
|
2196
|
+
)],
|
|
2197
|
+
metric_name="metricName",
|
|
2198
|
+
namespace="namespace"
|
|
2199
|
+
),
|
|
2200
|
+
period=123,
|
|
2201
|
+
stat="stat",
|
|
2202
|
+
|
|
2203
|
+
# the properties below are optional
|
|
2204
|
+
unit="unit"
|
|
2205
|
+
),
|
|
2206
|
+
return_data=False
|
|
2207
|
+
)],
|
|
2208
|
+
good_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2209
|
+
id="id",
|
|
2210
|
+
|
|
2211
|
+
# the properties below are optional
|
|
2212
|
+
account_id="accountId",
|
|
2213
|
+
expression="expression",
|
|
2214
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2215
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2216
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2217
|
+
name="name",
|
|
2218
|
+
value="value"
|
|
2219
|
+
)],
|
|
2220
|
+
metric_name="metricName",
|
|
2221
|
+
namespace="namespace"
|
|
2222
|
+
),
|
|
2223
|
+
period=123,
|
|
2224
|
+
stat="stat",
|
|
2225
|
+
|
|
2226
|
+
# the properties below are optional
|
|
2227
|
+
unit="unit"
|
|
2228
|
+
),
|
|
2229
|
+
return_data=False
|
|
2230
|
+
)]
|
|
2231
|
+
),
|
|
2232
|
+
operation_name="operationName",
|
|
2233
|
+
total_request_count_metric=[applicationsignals.CfnServiceLevelObjective.MetricDataQueryProperty(
|
|
2234
|
+
id="id",
|
|
2235
|
+
|
|
2236
|
+
# the properties below are optional
|
|
2237
|
+
account_id="accountId",
|
|
2238
|
+
expression="expression",
|
|
2239
|
+
metric_stat=applicationsignals.CfnServiceLevelObjective.MetricStatProperty(
|
|
2240
|
+
metric=applicationsignals.CfnServiceLevelObjective.MetricProperty(
|
|
2241
|
+
dimensions=[applicationsignals.CfnServiceLevelObjective.DimensionProperty(
|
|
2242
|
+
name="name",
|
|
2243
|
+
value="value"
|
|
2244
|
+
)],
|
|
2245
|
+
metric_name="metricName",
|
|
2246
|
+
namespace="namespace"
|
|
2247
|
+
),
|
|
2248
|
+
period=123,
|
|
2249
|
+
stat="stat",
|
|
2250
|
+
|
|
2251
|
+
# the properties below are optional
|
|
2252
|
+
unit="unit"
|
|
2253
|
+
),
|
|
2254
|
+
return_data=False
|
|
2255
|
+
)]
|
|
2256
|
+
),
|
|
2257
|
+
|
|
2258
|
+
# the properties below are optional
|
|
2259
|
+
comparison_operator="comparisonOperator",
|
|
2260
|
+
metric_threshold=123
|
|
2261
|
+
),
|
|
1563
2262
|
tags=[CfnTag(
|
|
1564
2263
|
key="key",
|
|
1565
2264
|
value="value"
|
|
@@ -1572,6 +2271,7 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1572
2271
|
check_type(argname="argument sli", value=sli, expected_type=type_hints["sli"])
|
|
1573
2272
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
1574
2273
|
check_type(argname="argument goal", value=goal, expected_type=type_hints["goal"])
|
|
2274
|
+
check_type(argname="argument request_based_sli", value=request_based_sli, expected_type=type_hints["request_based_sli"])
|
|
1575
2275
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
1576
2276
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1577
2277
|
"name": name,
|
|
@@ -1581,6 +2281,8 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1581
2281
|
self._values["description"] = description
|
|
1582
2282
|
if goal is not None:
|
|
1583
2283
|
self._values["goal"] = goal
|
|
2284
|
+
if request_based_sli is not None:
|
|
2285
|
+
self._values["request_based_sli"] = request_based_sli
|
|
1584
2286
|
if tags is not None:
|
|
1585
2287
|
self._values["tags"] = tags
|
|
1586
2288
|
|
|
@@ -1630,6 +2332,17 @@ class CfnServiceLevelObjectiveProps:
|
|
|
1630
2332
|
result = self._values.get("goal")
|
|
1631
2333
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.GoalProperty]], result)
|
|
1632
2334
|
|
|
2335
|
+
@builtins.property
|
|
2336
|
+
def request_based_sli(
|
|
2337
|
+
self,
|
|
2338
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]]:
|
|
2339
|
+
'''This structure contains information about the performance metric that a request-based SLO monitors.
|
|
2340
|
+
|
|
2341
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html#cfn-applicationsignals-servicelevelobjective-requestbasedsli
|
|
2342
|
+
'''
|
|
2343
|
+
result = self._values.get("request_based_sli")
|
|
2344
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]], result)
|
|
2345
|
+
|
|
1633
2346
|
@builtins.property
|
|
1634
2347
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
1635
2348
|
'''A list of key-value pairs to associate with the SLO.
|
|
@@ -1670,6 +2383,7 @@ def _typecheckingstub__8476d024be5b448cfb8f9ae2f80fa7f2083296f712cdb7cd12e69365d
|
|
|
1670
2383
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1671
2384
|
description: typing.Optional[builtins.str] = None,
|
|
1672
2385
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2386
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1673
2387
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1674
2388
|
) -> None:
|
|
1675
2389
|
"""Type checking stubs"""
|
|
@@ -1711,6 +2425,12 @@ def _typecheckingstub__f72f1f3f286714a7cb6611be91fc84bc135d11974635585192dc6a6bb
|
|
|
1711
2425
|
"""Type checking stubs"""
|
|
1712
2426
|
pass
|
|
1713
2427
|
|
|
2428
|
+
def _typecheckingstub__85c3a53f1420ec52267d0c5ef83b407de2a88d1eff567b79facf44748e778f2f(
|
|
2429
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServiceLevelObjective.RequestBasedSliProperty]],
|
|
2430
|
+
) -> None:
|
|
2431
|
+
"""Type checking stubs"""
|
|
2432
|
+
pass
|
|
2433
|
+
|
|
1714
2434
|
def _typecheckingstub__45578973503123093d3b0c8f845e2df0c9ad023b7df510f3a7b7ee7abcccd506(
|
|
1715
2435
|
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
1716
2436
|
) -> None:
|
|
@@ -1781,6 +2501,34 @@ def _typecheckingstub__9112cc9d5e83260e285e14202026cd0c682ccbbd611252cb22444f31a
|
|
|
1781
2501
|
"""Type checking stubs"""
|
|
1782
2502
|
pass
|
|
1783
2503
|
|
|
2504
|
+
def _typecheckingstub__0e098e20f2cfc04332a5fbb15ca2b6cd689368d77d87938dc8d7467b0f3963de(
|
|
2505
|
+
*,
|
|
2506
|
+
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,
|
|
2507
|
+
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,
|
|
2508
|
+
) -> None:
|
|
2509
|
+
"""Type checking stubs"""
|
|
2510
|
+
pass
|
|
2511
|
+
|
|
2512
|
+
def _typecheckingstub__2e0bf3c4e354ab94132efc9fd8fa57b0d903b7020ec1b6c4d1c1388698e31a7d(
|
|
2513
|
+
*,
|
|
2514
|
+
key_attributes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
|
|
2515
|
+
metric_type: typing.Optional[builtins.str] = None,
|
|
2516
|
+
monitored_request_count_metric: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.MonitoredRequestCountMetricProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2517
|
+
operation_name: typing.Optional[builtins.str] = None,
|
|
2518
|
+
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,
|
|
2519
|
+
) -> None:
|
|
2520
|
+
"""Type checking stubs"""
|
|
2521
|
+
pass
|
|
2522
|
+
|
|
2523
|
+
def _typecheckingstub__387849408a1ac74889f2dec7244d223e0b97c35e19e4915f6a024667214f0cbb(
|
|
2524
|
+
*,
|
|
2525
|
+
request_based_sli_metric: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliMetricProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
2526
|
+
comparison_operator: typing.Optional[builtins.str] = None,
|
|
2527
|
+
metric_threshold: typing.Optional[jsii.Number] = None,
|
|
2528
|
+
) -> None:
|
|
2529
|
+
"""Type checking stubs"""
|
|
2530
|
+
pass
|
|
2531
|
+
|
|
1784
2532
|
def _typecheckingstub__3ea5efcc7f9d7eb11cc8de5d96525adb6a7e2bfc30446b0fcdb3c7cd640413c1(
|
|
1785
2533
|
*,
|
|
1786
2534
|
duration: jsii.Number,
|
|
@@ -1816,6 +2564,7 @@ def _typecheckingstub__8a302456885343cc9ce5e0497feed773de1ef0f44e2934f97458bfdc5
|
|
|
1816
2564
|
sli: typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.SliProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1817
2565
|
description: typing.Optional[builtins.str] = None,
|
|
1818
2566
|
goal: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.GoalProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2567
|
+
request_based_sli: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceLevelObjective.RequestBasedSliProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1819
2568
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1820
2569
|
) -> None:
|
|
1821
2570
|
"""Type checking stubs"""
|