aws-cdk-lib 2.128.0__py3-none-any.whl → 2.129.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.

Files changed (98) hide show
  1. aws_cdk/__init__.py +2 -10
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.128.0.jsii.tgz → aws-cdk-lib@2.129.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +6 -24
  5. aws_cdk/aws_amplify/__init__.py +1 -2
  6. aws_cdk/aws_appconfig/__init__.py +0 -16
  7. aws_cdk/aws_applicationautoscaling/__init__.py +55 -22
  8. aws_cdk/aws_appstream/__init__.py +14 -14
  9. aws_cdk/aws_appsync/__init__.py +334 -3
  10. aws_cdk/aws_autoscaling/__init__.py +11 -7
  11. aws_cdk/aws_batch/__init__.py +137 -16
  12. aws_cdk/aws_cleanrooms/__init__.py +1 -2
  13. aws_cdk/aws_cloudformation/__init__.py +2 -10
  14. aws_cdk/aws_cloudfront/__init__.py +15 -8
  15. aws_cdk/aws_cloudfront/experimental/__init__.py +22 -0
  16. aws_cdk/aws_cloudfront_origins/__init__.py +332 -0
  17. aws_cdk/aws_cloudtrail/__init__.py +12 -2
  18. aws_cdk/aws_cloudwatch/__init__.py +4 -0
  19. aws_cdk/aws_codepipeline/__init__.py +463 -11
  20. aws_cdk/aws_cognito/__init__.py +0 -9
  21. aws_cdk/aws_config/__init__.py +2 -2
  22. aws_cdk/aws_connect/__init__.py +6 -1
  23. aws_cdk/aws_controltower/__init__.py +527 -7
  24. aws_cdk/aws_datasync/__init__.py +2 -2
  25. aws_cdk/aws_directoryservice/__init__.py +2 -3
  26. aws_cdk/aws_dynamodb/__init__.py +7 -0
  27. aws_cdk/aws_ec2/__init__.py +117 -210
  28. aws_cdk/aws_ecs/__init__.py +537 -3
  29. aws_cdk/aws_eks/__init__.py +1 -1
  30. aws_cdk/aws_elasticache/__init__.py +27 -20
  31. aws_cdk/aws_elasticloadbalancingv2/__init__.py +3 -4
  32. aws_cdk/aws_emr/__init__.py +23 -3
  33. aws_cdk/aws_events_targets/__init__.py +64 -20
  34. aws_cdk/aws_fis/__init__.py +4 -4
  35. aws_cdk/aws_frauddetector/__init__.py +3 -3
  36. aws_cdk/aws_globalaccelerator/__init__.py +2 -6
  37. aws_cdk/aws_glue/__init__.py +84 -55
  38. aws_cdk/aws_groundstation/__init__.py +8 -12
  39. aws_cdk/aws_guardduty/__init__.py +74 -70
  40. aws_cdk/aws_iam/__init__.py +16 -23
  41. aws_cdk/aws_imagebuilder/__init__.py +178 -156
  42. aws_cdk/aws_internetmonitor/__init__.py +12 -10
  43. aws_cdk/aws_iot/__init__.py +17 -10
  44. aws_cdk/aws_iotevents/__init__.py +4 -4
  45. aws_cdk/aws_iotfleetwise/__init__.py +10 -5
  46. aws_cdk/aws_iottwinmaker/__init__.py +3 -5
  47. aws_cdk/aws_iotwireless/__init__.py +35 -23
  48. aws_cdk/aws_kendra/__init__.py +36 -15
  49. aws_cdk/aws_kinesisfirehose/__init__.py +155 -114
  50. aws_cdk/aws_lambda/__init__.py +157 -12
  51. aws_cdk/aws_lambda_nodejs/__init__.py +22 -0
  52. aws_cdk/aws_lightsail/__init__.py +14 -18
  53. aws_cdk/aws_logs/__init__.py +15 -15
  54. aws_cdk/aws_mediaconnect/__init__.py +5 -3
  55. aws_cdk/aws_medialive/__init__.py +3 -12
  56. aws_cdk/aws_mediapackagev2/__init__.py +287 -286
  57. aws_cdk/aws_mediatailor/__init__.py +2 -2
  58. aws_cdk/aws_memorydb/__init__.py +2 -2
  59. aws_cdk/aws_msk/__init__.py +6 -3
  60. aws_cdk/aws_mwaa/__init__.py +10 -5
  61. aws_cdk/aws_neptunegraph/__init__.py +84 -66
  62. aws_cdk/aws_networkfirewall/__init__.py +5 -8
  63. aws_cdk/aws_networkmanager/__init__.py +3 -3
  64. aws_cdk/aws_nimblestudio/__init__.py +2 -4
  65. aws_cdk/aws_opensearchservice/__init__.py +6 -7
  66. aws_cdk/aws_osis/__init__.py +1 -3
  67. aws_cdk/aws_pinpoint/__init__.py +5 -5
  68. aws_cdk/aws_pipes/__init__.py +5 -5
  69. aws_cdk/aws_quicksight/__init__.py +5 -10
  70. aws_cdk/aws_rds/__init__.py +38 -21
  71. aws_cdk/aws_redshift/__init__.py +9 -5
  72. aws_cdk/aws_redshiftserverless/__init__.py +62 -38
  73. aws_cdk/aws_rolesanywhere/__init__.py +41 -53
  74. aws_cdk/aws_route53/__init__.py +532 -6
  75. aws_cdk/aws_route53recoverycontrol/__init__.py +1 -3
  76. aws_cdk/aws_route53recoveryreadiness/__init__.py +2 -2
  77. aws_cdk/aws_route53resolver/__init__.py +1 -4
  78. aws_cdk/aws_s3/__init__.py +3 -1
  79. aws_cdk/aws_s3objectlambda/__init__.py +7 -4
  80. aws_cdk/aws_s3outposts/__init__.py +1 -1
  81. aws_cdk/aws_sagemaker/__init__.py +111 -11
  82. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
  83. aws_cdk/aws_sns/__init__.py +185 -38
  84. aws_cdk/aws_ssm/__init__.py +16 -16
  85. aws_cdk/aws_ssmincidents/__init__.py +1 -1
  86. aws_cdk/aws_synthetics/__init__.py +94 -21
  87. aws_cdk/aws_verifiedpermissions/__init__.py +1 -2
  88. aws_cdk/aws_vpclattice/__init__.py +8 -4
  89. aws_cdk/aws_wafv2/__init__.py +14 -59
  90. aws_cdk/aws_workspaces/__init__.py +5 -4
  91. aws_cdk/aws_workspacesweb/__init__.py +6 -12
  92. aws_cdk/triggers/__init__.py +22 -0
  93. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/METADATA +1 -1
  94. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/RECORD +98 -98
  95. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/LICENSE +0 -0
  96. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/NOTICE +0 -0
  97. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/WHEEL +0 -0
  98. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/top_level.txt +0 -0
@@ -2301,6 +2301,7 @@ class CfnApiCache(
2301
2301
 
2302
2302
  # the properties below are optional
2303
2303
  at_rest_encryption_enabled=False,
2304
+ health_metrics_config="healthMetricsConfig",
2304
2305
  transit_encryption_enabled=False
2305
2306
  )
2306
2307
  '''
@@ -2315,6 +2316,7 @@ class CfnApiCache(
2315
2316
  ttl: jsii.Number,
2316
2317
  type: builtins.str,
2317
2318
  at_rest_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2319
+ health_metrics_config: typing.Optional[builtins.str] = None,
2318
2320
  transit_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2319
2321
  ) -> None:
2320
2322
  '''
@@ -2325,6 +2327,7 @@ class CfnApiCache(
2325
2327
  :param ttl: TTL in seconds for cache entries. Valid values are 1–3,600 seconds.
2326
2328
  :param type: The cache instance type. Valid values are. - ``SMALL`` - ``MEDIUM`` - ``LARGE`` - ``XLARGE`` - ``LARGE_2X`` - ``LARGE_4X`` - ``LARGE_8X`` (not available in all regions) - ``LARGE_12X`` Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used. The following legacy instance types are available, but their use is discouraged: - *T2_SMALL* : A t2.small instance type. - *T2_MEDIUM* : A t2.medium instance type. - *R4_LARGE* : A r4.large instance type. - *R4_XLARGE* : A r4.xlarge instance type. - *R4_2XLARGE* : A r4.2xlarge instance type. - *R4_4XLARGE* : A r4.4xlarge instance type. - *R4_8XLARGE* : A r4.8xlarge instance type.
2327
2329
  :param at_rest_encryption_enabled: At-rest encryption flag for cache. You cannot update this setting after creation.
2330
+ :param health_metrics_config: Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:. - *NetworkBandwidthOutAllowanceExceeded* : The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration. - *EngineCPUUtilization* : The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration. Metrics will be recorded by API ID. You can set the value to ``ENABLED`` or ``DISABLED`` .
2328
2331
  :param transit_encryption_enabled: Transit encryption flag when connecting to cache. You cannot update this setting after creation.
2329
2332
  '''
2330
2333
  if __debug__:
@@ -2337,6 +2340,7 @@ class CfnApiCache(
2337
2340
  ttl=ttl,
2338
2341
  type=type,
2339
2342
  at_rest_encryption_enabled=at_rest_encryption_enabled,
2343
+ health_metrics_config=health_metrics_config,
2340
2344
  transit_encryption_enabled=transit_encryption_enabled,
2341
2345
  )
2342
2346
 
@@ -2458,6 +2462,22 @@ class CfnApiCache(
2458
2462
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2459
2463
  jsii.set(self, "atRestEncryptionEnabled", value)
2460
2464
 
2465
+ @builtins.property
2466
+ @jsii.member(jsii_name="healthMetricsConfig")
2467
+ def health_metrics_config(self) -> typing.Optional[builtins.str]:
2468
+ '''Controls how cache health metrics will be emitted to CloudWatch.
2469
+
2470
+ Cache health metrics include:.
2471
+ '''
2472
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "healthMetricsConfig"))
2473
+
2474
+ @health_metrics_config.setter
2475
+ def health_metrics_config(self, value: typing.Optional[builtins.str]) -> None:
2476
+ if __debug__:
2477
+ type_hints = typing.get_type_hints(_typecheckingstub__55de0a796fc6cc946fccbec8ff82c493648ae16228267a0627a624d4e64e10dd)
2478
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2479
+ jsii.set(self, "healthMetricsConfig", value)
2480
+
2461
2481
  @builtins.property
2462
2482
  @jsii.member(jsii_name="transitEncryptionEnabled")
2463
2483
  def transit_encryption_enabled(
@@ -2486,6 +2506,7 @@ class CfnApiCache(
2486
2506
  "ttl": "ttl",
2487
2507
  "type": "type",
2488
2508
  "at_rest_encryption_enabled": "atRestEncryptionEnabled",
2509
+ "health_metrics_config": "healthMetricsConfig",
2489
2510
  "transit_encryption_enabled": "transitEncryptionEnabled",
2490
2511
  },
2491
2512
  )
@@ -2498,6 +2519,7 @@ class CfnApiCacheProps:
2498
2519
  ttl: jsii.Number,
2499
2520
  type: builtins.str,
2500
2521
  at_rest_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2522
+ health_metrics_config: typing.Optional[builtins.str] = None,
2501
2523
  transit_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2502
2524
  ) -> None:
2503
2525
  '''Properties for defining a ``CfnApiCache``.
@@ -2507,6 +2529,7 @@ class CfnApiCacheProps:
2507
2529
  :param ttl: TTL in seconds for cache entries. Valid values are 1–3,600 seconds.
2508
2530
  :param type: The cache instance type. Valid values are. - ``SMALL`` - ``MEDIUM`` - ``LARGE`` - ``XLARGE`` - ``LARGE_2X`` - ``LARGE_4X`` - ``LARGE_8X`` (not available in all regions) - ``LARGE_12X`` Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used. The following legacy instance types are available, but their use is discouraged: - *T2_SMALL* : A t2.small instance type. - *T2_MEDIUM* : A t2.medium instance type. - *R4_LARGE* : A r4.large instance type. - *R4_XLARGE* : A r4.xlarge instance type. - *R4_2XLARGE* : A r4.2xlarge instance type. - *R4_4XLARGE* : A r4.4xlarge instance type. - *R4_8XLARGE* : A r4.8xlarge instance type.
2509
2531
  :param at_rest_encryption_enabled: At-rest encryption flag for cache. You cannot update this setting after creation.
2532
+ :param health_metrics_config: Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:. - *NetworkBandwidthOutAllowanceExceeded* : The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration. - *EngineCPUUtilization* : The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration. Metrics will be recorded by API ID. You can set the value to ``ENABLED`` or ``DISABLED`` .
2510
2533
  :param transit_encryption_enabled: Transit encryption flag when connecting to cache. You cannot update this setting after creation.
2511
2534
 
2512
2535
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html
@@ -2526,6 +2549,7 @@ class CfnApiCacheProps:
2526
2549
 
2527
2550
  # the properties below are optional
2528
2551
  at_rest_encryption_enabled=False,
2552
+ health_metrics_config="healthMetricsConfig",
2529
2553
  transit_encryption_enabled=False
2530
2554
  )
2531
2555
  '''
@@ -2536,6 +2560,7 @@ class CfnApiCacheProps:
2536
2560
  check_type(argname="argument ttl", value=ttl, expected_type=type_hints["ttl"])
2537
2561
  check_type(argname="argument type", value=type, expected_type=type_hints["type"])
2538
2562
  check_type(argname="argument at_rest_encryption_enabled", value=at_rest_encryption_enabled, expected_type=type_hints["at_rest_encryption_enabled"])
2563
+ check_type(argname="argument health_metrics_config", value=health_metrics_config, expected_type=type_hints["health_metrics_config"])
2539
2564
  check_type(argname="argument transit_encryption_enabled", value=transit_encryption_enabled, expected_type=type_hints["transit_encryption_enabled"])
2540
2565
  self._values: typing.Dict[builtins.str, typing.Any] = {
2541
2566
  "api_caching_behavior": api_caching_behavior,
@@ -2545,6 +2570,8 @@ class CfnApiCacheProps:
2545
2570
  }
2546
2571
  if at_rest_encryption_enabled is not None:
2547
2572
  self._values["at_rest_encryption_enabled"] = at_rest_encryption_enabled
2573
+ if health_metrics_config is not None:
2574
+ self._values["health_metrics_config"] = health_metrics_config
2548
2575
  if transit_encryption_enabled is not None:
2549
2576
  self._values["transit_encryption_enabled"] = transit_encryption_enabled
2550
2577
 
@@ -2627,6 +2654,20 @@ class CfnApiCacheProps:
2627
2654
  result = self._values.get("at_rest_encryption_enabled")
2628
2655
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
2629
2656
 
2657
+ @builtins.property
2658
+ def health_metrics_config(self) -> typing.Optional[builtins.str]:
2659
+ '''Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:.
2660
+
2661
+ - *NetworkBandwidthOutAllowanceExceeded* : The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
2662
+ - *EngineCPUUtilization* : The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
2663
+
2664
+ Metrics will be recorded by API ID. You can set the value to ``ENABLED`` or ``DISABLED`` .
2665
+
2666
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-healthmetricsconfig
2667
+ '''
2668
+ result = self._values.get("health_metrics_config")
2669
+ return typing.cast(typing.Optional[builtins.str], result)
2670
+
2630
2671
  @builtins.property
2631
2672
  def transit_encryption_enabled(
2632
2673
  self,
@@ -2964,6 +3005,7 @@ class CfnDataSource(
2964
3005
  lambda_config=appsync.CfnDataSource.LambdaConfigProperty(
2965
3006
  lambda_function_arn="lambdaFunctionArn"
2966
3007
  ),
3008
+ metrics_config="metricsConfig",
2967
3009
  open_search_service_config=appsync.CfnDataSource.OpenSearchServiceConfigProperty(
2968
3010
  aws_region="awsRegion",
2969
3011
  endpoint="endpoint"
@@ -3000,6 +3042,7 @@ class CfnDataSource(
3000
3042
  event_bridge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.EventBridgeConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3001
3043
  http_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.HttpConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3002
3044
  lambda_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.LambdaConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3045
+ metrics_config: typing.Optional[builtins.str] = None,
3003
3046
  open_search_service_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.OpenSearchServiceConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3004
3047
  relational_database_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.RelationalDatabaseConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3005
3048
  service_role_arn: typing.Optional[builtins.str] = None,
@@ -3016,6 +3059,7 @@ class CfnDataSource(
3016
3059
  :param event_bridge_config: An EventBridge configuration that contains a valid ARN of an event bus.
3017
3060
  :param http_config: Endpoints for an HTTP data source.
3018
3061
  :param lambda_config: An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account.
3062
+ :param metrics_config: Enables or disables enhanced data source metrics for specified data sources. Note that ``MetricsConfig`` won't be used unless the ``dataSourceLevelMetricsBehavior`` value is set to ``PER_DATA_SOURCE_METRICS`` . If the ``dataSourceLevelMetricsBehavior`` is set to ``FULL_REQUEST_DATA_SOURCE_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value. ``MetricsConfig`` can be ``ENABLED`` or ``DISABLED`` .
3019
3063
  :param open_search_service_config: AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
3020
3064
  :param relational_database_config: Relational Database configuration of the relational database data source.
3021
3065
  :param service_role_arn: The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source. Required if ``Type`` is specified as ``AWS_LAMBDA`` , ``AMAZON_DYNAMODB`` , ``AMAZON_ELASTICSEARCH`` , ``AMAZON_EVENTBRIDGE`` , or ``AMAZON_OPENSEARCH_SERVICE`` .
@@ -3034,6 +3078,7 @@ class CfnDataSource(
3034
3078
  event_bridge_config=event_bridge_config,
3035
3079
  http_config=http_config,
3036
3080
  lambda_config=lambda_config,
3081
+ metrics_config=metrics_config,
3037
3082
  open_search_service_config=open_search_service_config,
3038
3083
  relational_database_config=relational_database_config,
3039
3084
  service_role_arn=service_role_arn,
@@ -3245,6 +3290,19 @@ class CfnDataSource(
3245
3290
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3246
3291
  jsii.set(self, "lambdaConfig", value)
3247
3292
 
3293
+ @builtins.property
3294
+ @jsii.member(jsii_name="metricsConfig")
3295
+ def metrics_config(self) -> typing.Optional[builtins.str]:
3296
+ '''Enables or disables enhanced data source metrics for specified data sources.'''
3297
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "metricsConfig"))
3298
+
3299
+ @metrics_config.setter
3300
+ def metrics_config(self, value: typing.Optional[builtins.str]) -> None:
3301
+ if __debug__:
3302
+ type_hints = typing.get_type_hints(_typecheckingstub__ff88a1b2db49ba08cabf555c8761c43a2a3ae4fed6c29d454b232ce083cba4e6)
3303
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3304
+ jsii.set(self, "metricsConfig", value)
3305
+
3248
3306
  @builtins.property
3249
3307
  @jsii.member(jsii_name="openSearchServiceConfig")
3250
3308
  def open_search_service_config(
@@ -4244,6 +4302,7 @@ class CfnDataSource(
4244
4302
  "event_bridge_config": "eventBridgeConfig",
4245
4303
  "http_config": "httpConfig",
4246
4304
  "lambda_config": "lambdaConfig",
4305
+ "metrics_config": "metricsConfig",
4247
4306
  "open_search_service_config": "openSearchServiceConfig",
4248
4307
  "relational_database_config": "relationalDatabaseConfig",
4249
4308
  "service_role_arn": "serviceRoleArn",
@@ -4262,6 +4321,7 @@ class CfnDataSourceProps:
4262
4321
  event_bridge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.EventBridgeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4263
4322
  http_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.HttpConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4264
4323
  lambda_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.LambdaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4324
+ metrics_config: typing.Optional[builtins.str] = None,
4265
4325
  open_search_service_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.OpenSearchServiceConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4266
4326
  relational_database_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.RelationalDatabaseConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4267
4327
  service_role_arn: typing.Optional[builtins.str] = None,
@@ -4277,6 +4337,7 @@ class CfnDataSourceProps:
4277
4337
  :param event_bridge_config: An EventBridge configuration that contains a valid ARN of an event bus.
4278
4338
  :param http_config: Endpoints for an HTTP data source.
4279
4339
  :param lambda_config: An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account.
4340
+ :param metrics_config: Enables or disables enhanced data source metrics for specified data sources. Note that ``MetricsConfig`` won't be used unless the ``dataSourceLevelMetricsBehavior`` value is set to ``PER_DATA_SOURCE_METRICS`` . If the ``dataSourceLevelMetricsBehavior`` is set to ``FULL_REQUEST_DATA_SOURCE_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value. ``MetricsConfig`` can be ``ENABLED`` or ``DISABLED`` .
4280
4341
  :param open_search_service_config: AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
4281
4342
  :param relational_database_config: Relational Database configuration of the relational database data source.
4282
4343
  :param service_role_arn: The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source. Required if ``Type`` is specified as ``AWS_LAMBDA`` , ``AMAZON_DYNAMODB`` , ``AMAZON_ELASTICSEARCH`` , ``AMAZON_EVENTBRIDGE`` , or ``AMAZON_OPENSEARCH_SERVICE`` .
@@ -4334,6 +4395,7 @@ class CfnDataSourceProps:
4334
4395
  lambda_config=appsync.CfnDataSource.LambdaConfigProperty(
4335
4396
  lambda_function_arn="lambdaFunctionArn"
4336
4397
  ),
4398
+ metrics_config="metricsConfig",
4337
4399
  open_search_service_config=appsync.CfnDataSource.OpenSearchServiceConfigProperty(
4338
4400
  aws_region="awsRegion",
4339
4401
  endpoint="endpoint"
@@ -4366,6 +4428,7 @@ class CfnDataSourceProps:
4366
4428
  check_type(argname="argument event_bridge_config", value=event_bridge_config, expected_type=type_hints["event_bridge_config"])
4367
4429
  check_type(argname="argument http_config", value=http_config, expected_type=type_hints["http_config"])
4368
4430
  check_type(argname="argument lambda_config", value=lambda_config, expected_type=type_hints["lambda_config"])
4431
+ check_type(argname="argument metrics_config", value=metrics_config, expected_type=type_hints["metrics_config"])
4369
4432
  check_type(argname="argument open_search_service_config", value=open_search_service_config, expected_type=type_hints["open_search_service_config"])
4370
4433
  check_type(argname="argument relational_database_config", value=relational_database_config, expected_type=type_hints["relational_database_config"])
4371
4434
  check_type(argname="argument service_role_arn", value=service_role_arn, expected_type=type_hints["service_role_arn"])
@@ -4386,6 +4449,8 @@ class CfnDataSourceProps:
4386
4449
  self._values["http_config"] = http_config
4387
4450
  if lambda_config is not None:
4388
4451
  self._values["lambda_config"] = lambda_config
4452
+ if metrics_config is not None:
4453
+ self._values["metrics_config"] = metrics_config
4389
4454
  if open_search_service_config is not None:
4390
4455
  self._values["open_search_service_config"] = open_search_service_config
4391
4456
  if relational_database_config is not None:
@@ -4500,6 +4565,19 @@ class CfnDataSourceProps:
4500
4565
  result = self._values.get("lambda_config")
4501
4566
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataSource.LambdaConfigProperty]], result)
4502
4567
 
4568
+ @builtins.property
4569
+ def metrics_config(self) -> typing.Optional[builtins.str]:
4570
+ '''Enables or disables enhanced data source metrics for specified data sources.
4571
+
4572
+ Note that ``MetricsConfig`` won't be used unless the ``dataSourceLevelMetricsBehavior`` value is set to ``PER_DATA_SOURCE_METRICS`` . If the ``dataSourceLevelMetricsBehavior`` is set to ``FULL_REQUEST_DATA_SOURCE_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
4573
+
4574
+ ``MetricsConfig`` can be ``ENABLED`` or ``DISABLED`` .
4575
+
4576
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-metricsconfig
4577
+ '''
4578
+ result = self._values.get("metrics_config")
4579
+ return typing.cast(typing.Optional[builtins.str], result)
4580
+
4503
4581
  @builtins.property
4504
4582
  def open_search_service_config(
4505
4583
  self,
@@ -5955,6 +6033,11 @@ class CfnGraphQLApi(
5955
6033
  )
5956
6034
  )],
5957
6035
  api_type="apiType",
6036
+ enhanced_metrics_config=appsync.CfnGraphQLApi.EnhancedMetricsConfigProperty(
6037
+ data_source_level_metrics_behavior="dataSourceLevelMetricsBehavior",
6038
+ operation_level_metrics_config="operationLevelMetricsConfig",
6039
+ resolver_level_metrics_behavior="resolverLevelMetricsBehavior"
6040
+ ),
5958
6041
  environment_variables=environment_variables,
5959
6042
  introspection_config="introspectionConfig",
5960
6043
  lambda_authorizer_config=appsync.CfnGraphQLApi.LambdaAuthorizerConfigProperty(
@@ -6001,6 +6084,7 @@ class CfnGraphQLApi(
6001
6084
  name: builtins.str,
6002
6085
  additional_authentication_providers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGraphQLApi.AdditionalAuthenticationProviderProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
6003
6086
  api_type: typing.Optional[builtins.str] = None,
6087
+ enhanced_metrics_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGraphQLApi.EnhancedMetricsConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
6004
6088
  environment_variables: typing.Any = None,
6005
6089
  introspection_config: typing.Optional[builtins.str] = None,
6006
6090
  lambda_authorizer_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGraphQLApi.LambdaAuthorizerConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -6022,7 +6106,8 @@ class CfnGraphQLApi(
6022
6106
  :param name: The API name.
6023
6107
  :param additional_authentication_providers: A list of additional authentication providers for the ``GraphqlApi`` API.
6024
6108
  :param api_type: The value that indicates whether the GraphQL API is a standard API ( ``GRAPHQL`` ) or merged API ( ``MERGED`` ). *WARNING* : If the ``ApiType`` has not been defined, *explicitly* setting it to ``GRAPHQL`` in a template/stack update will result in an API replacement and new DNS values. The following values are valid: ``GRAPHQL | MERGED``
6025
- :param environment_variables:
6109
+ :param enhanced_metrics_config: Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent. Enhanced metrics can be configured at the resolver, data source, and operation levels. For more information, see `Monitoring and logging <https://docs.aws.amazon.com//appsync/latest/devguide/monitoring.html#cw-metrics>`_ in the *AWS AppSync User Guide* .
6110
+ :param environment_variables: A map containing the list of resources with their properties and environment variables. For more information, see `Environmental variables <https://docs.aws.amazon.com/appsync/latest/devguide/environmental-variables.html>`_ . *Pattern* : ``^[A-Za-z]+\\\\w*$\\\\`` *Minimum* : 2 *Maximum* : 64
6026
6111
  :param introspection_config: Sets the value of the GraphQL API to enable ( ``ENABLED`` ) or disable ( ``DISABLED`` ) introspection. If no value is provided, the introspection configuration will be set to ``ENABLED`` by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled. For more information about introspection, see `GraphQL introspection <https://docs.aws.amazon.com/https://graphql.org/learn/introspection/>`_ .
6027
6112
  :param lambda_authorizer_config: A ``LambdaAuthorizerConfig`` holds configuration on how to authorize AWS AppSync API access when using the ``AWS_LAMBDA`` authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
6028
6113
  :param log_config: The Amazon CloudWatch Logs configuration.
@@ -6045,6 +6130,7 @@ class CfnGraphQLApi(
6045
6130
  name=name,
6046
6131
  additional_authentication_providers=additional_authentication_providers,
6047
6132
  api_type=api_type,
6133
+ enhanced_metrics_config=enhanced_metrics_config,
6048
6134
  environment_variables=environment_variables,
6049
6135
  introspection_config=introspection_config,
6050
6136
  lambda_authorizer_config=lambda_authorizer_config,
@@ -6234,9 +6320,28 @@ class CfnGraphQLApi(
6234
6320
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6235
6321
  jsii.set(self, "apiType", value)
6236
6322
 
6323
+ @builtins.property
6324
+ @jsii.member(jsii_name="enhancedMetricsConfig")
6325
+ def enhanced_metrics_config(
6326
+ self,
6327
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGraphQLApi.EnhancedMetricsConfigProperty"]]:
6328
+ '''Enables and controls the enhanced metrics feature.'''
6329
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGraphQLApi.EnhancedMetricsConfigProperty"]], jsii.get(self, "enhancedMetricsConfig"))
6330
+
6331
+ @enhanced_metrics_config.setter
6332
+ def enhanced_metrics_config(
6333
+ self,
6334
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGraphQLApi.EnhancedMetricsConfigProperty"]],
6335
+ ) -> None:
6336
+ if __debug__:
6337
+ type_hints = typing.get_type_hints(_typecheckingstub__31ef927293a72b36675d980c2666fdaa13856a6038c9fa984dbc331dec806b66)
6338
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6339
+ jsii.set(self, "enhancedMetricsConfig", value)
6340
+
6237
6341
  @builtins.property
6238
6342
  @jsii.member(jsii_name="environmentVariables")
6239
6343
  def environment_variables(self) -> typing.Any:
6344
+ '''A map containing the list of resources with their properties and environment variables.'''
6240
6345
  return typing.cast(typing.Any, jsii.get(self, "environmentVariables"))
6241
6346
 
6242
6347
  @environment_variables.setter
@@ -6650,6 +6755,121 @@ class CfnGraphQLApi(
6650
6755
  k + "=" + repr(v) for k, v in self._values.items()
6651
6756
  )
6652
6757
 
6758
+ @jsii.data_type(
6759
+ jsii_type="aws-cdk-lib.aws_appsync.CfnGraphQLApi.EnhancedMetricsConfigProperty",
6760
+ jsii_struct_bases=[],
6761
+ name_mapping={
6762
+ "data_source_level_metrics_behavior": "dataSourceLevelMetricsBehavior",
6763
+ "operation_level_metrics_config": "operationLevelMetricsConfig",
6764
+ "resolver_level_metrics_behavior": "resolverLevelMetricsBehavior",
6765
+ },
6766
+ )
6767
+ class EnhancedMetricsConfigProperty:
6768
+ def __init__(
6769
+ self,
6770
+ *,
6771
+ data_source_level_metrics_behavior: builtins.str,
6772
+ operation_level_metrics_config: builtins.str,
6773
+ resolver_level_metrics_behavior: builtins.str,
6774
+ ) -> None:
6775
+ '''Describes an enhanced metrics configuration.
6776
+
6777
+ :param data_source_level_metrics_behavior: Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:. - *Requests* : The number of invocations that occured during a request. - *Latency* : The time to complete a data source invocation. - *Errors* : The number of errors that occurred during a data source invocation. These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name. ``dataSourceLevelMetricsBehavior`` accepts one of these values at a time: - ``FULL_REQUEST_DATA_SOURCE_METRICS`` : Records and emits metric data for all data sources in the request. - ``PER_DATA_SOURCE_METRICS`` : Records and emits metric data for data sources that have the ``MetricsConfig`` value set to ``ENABLED`` .
6778
+ :param operation_level_metrics_config: Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:. - *Requests* : The number of times a specified GraphQL operation was called. - *GraphQL errors* : The number of GraphQL errors that occurred during a specified GraphQL operation. Metrics will be recorded by API ID and operation name. You can set the value to ``ENABLED`` or ``DISABLED`` .
6779
+ :param resolver_level_metrics_behavior: Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:. - *GraphQL errors* : The number of GraphQL errors that occurred. - *Requests* : The number of invocations that occurred during a request. - *Latency* : The time to complete a resolver invocation. - *Cache hits* : The number of cache hits during a request. - *Cache misses* : The number of cache misses during a request. These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name. ``resolverLevelMetricsBehavior`` accepts one of these values at a time: - ``FULL_REQUEST_RESOLVER_METRICS`` : Records and emits metric data for all resolvers in the request. - ``PER_RESOLVER_METRICS`` : Records and emits metric data for resolvers that have the ``MetricsConfig`` value set to ``ENABLED`` .
6780
+
6781
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html
6782
+ :exampleMetadata: fixture=_generated
6783
+
6784
+ Example::
6785
+
6786
+ # The code below shows an example of how to instantiate this type.
6787
+ # The values are placeholders you should change.
6788
+ from aws_cdk import aws_appsync as appsync
6789
+
6790
+ enhanced_metrics_config_property = appsync.CfnGraphQLApi.EnhancedMetricsConfigProperty(
6791
+ data_source_level_metrics_behavior="dataSourceLevelMetricsBehavior",
6792
+ operation_level_metrics_config="operationLevelMetricsConfig",
6793
+ resolver_level_metrics_behavior="resolverLevelMetricsBehavior"
6794
+ )
6795
+ '''
6796
+ if __debug__:
6797
+ type_hints = typing.get_type_hints(_typecheckingstub__6a3e3bd3841df61c2af14b88642f9896e5d579727680a087470860c9f97edd81)
6798
+ check_type(argname="argument data_source_level_metrics_behavior", value=data_source_level_metrics_behavior, expected_type=type_hints["data_source_level_metrics_behavior"])
6799
+ check_type(argname="argument operation_level_metrics_config", value=operation_level_metrics_config, expected_type=type_hints["operation_level_metrics_config"])
6800
+ check_type(argname="argument resolver_level_metrics_behavior", value=resolver_level_metrics_behavior, expected_type=type_hints["resolver_level_metrics_behavior"])
6801
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6802
+ "data_source_level_metrics_behavior": data_source_level_metrics_behavior,
6803
+ "operation_level_metrics_config": operation_level_metrics_config,
6804
+ "resolver_level_metrics_behavior": resolver_level_metrics_behavior,
6805
+ }
6806
+
6807
+ @builtins.property
6808
+ def data_source_level_metrics_behavior(self) -> builtins.str:
6809
+ '''Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:.
6810
+
6811
+ - *Requests* : The number of invocations that occured during a request.
6812
+ - *Latency* : The time to complete a data source invocation.
6813
+ - *Errors* : The number of errors that occurred during a data source invocation.
6814
+
6815
+ These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name. ``dataSourceLevelMetricsBehavior`` accepts one of these values at a time:
6816
+
6817
+ - ``FULL_REQUEST_DATA_SOURCE_METRICS`` : Records and emits metric data for all data sources in the request.
6818
+ - ``PER_DATA_SOURCE_METRICS`` : Records and emits metric data for data sources that have the ``MetricsConfig`` value set to ``ENABLED`` .
6819
+
6820
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html#cfn-appsync-graphqlapi-enhancedmetricsconfig-datasourcelevelmetricsbehavior
6821
+ '''
6822
+ result = self._values.get("data_source_level_metrics_behavior")
6823
+ assert result is not None, "Required property 'data_source_level_metrics_behavior' is missing"
6824
+ return typing.cast(builtins.str, result)
6825
+
6826
+ @builtins.property
6827
+ def operation_level_metrics_config(self) -> builtins.str:
6828
+ '''Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:.
6829
+
6830
+ - *Requests* : The number of times a specified GraphQL operation was called.
6831
+ - *GraphQL errors* : The number of GraphQL errors that occurred during a specified GraphQL operation.
6832
+
6833
+ Metrics will be recorded by API ID and operation name. You can set the value to ``ENABLED`` or ``DISABLED`` .
6834
+
6835
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html#cfn-appsync-graphqlapi-enhancedmetricsconfig-operationlevelmetricsconfig
6836
+ '''
6837
+ result = self._values.get("operation_level_metrics_config")
6838
+ assert result is not None, "Required property 'operation_level_metrics_config' is missing"
6839
+ return typing.cast(builtins.str, result)
6840
+
6841
+ @builtins.property
6842
+ def resolver_level_metrics_behavior(self) -> builtins.str:
6843
+ '''Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:.
6844
+
6845
+ - *GraphQL errors* : The number of GraphQL errors that occurred.
6846
+ - *Requests* : The number of invocations that occurred during a request.
6847
+ - *Latency* : The time to complete a resolver invocation.
6848
+ - *Cache hits* : The number of cache hits during a request.
6849
+ - *Cache misses* : The number of cache misses during a request.
6850
+
6851
+ These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name. ``resolverLevelMetricsBehavior`` accepts one of these values at a time:
6852
+
6853
+ - ``FULL_REQUEST_RESOLVER_METRICS`` : Records and emits metric data for all resolvers in the request.
6854
+ - ``PER_RESOLVER_METRICS`` : Records and emits metric data for resolvers that have the ``MetricsConfig`` value set to ``ENABLED`` .
6855
+
6856
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html#cfn-appsync-graphqlapi-enhancedmetricsconfig-resolverlevelmetricsbehavior
6857
+ '''
6858
+ result = self._values.get("resolver_level_metrics_behavior")
6859
+ assert result is not None, "Required property 'resolver_level_metrics_behavior' is missing"
6860
+ return typing.cast(builtins.str, result)
6861
+
6862
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6863
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6864
+
6865
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6866
+ return not (rhs == self)
6867
+
6868
+ def __repr__(self) -> str:
6869
+ return "EnhancedMetricsConfigProperty(%s)" % ", ".join(
6870
+ k + "=" + repr(v) for k, v in self._values.items()
6871
+ )
6872
+
6653
6873
  @jsii.data_type(
6654
6874
  jsii_type="aws-cdk-lib.aws_appsync.CfnGraphQLApi.LambdaAuthorizerConfigProperty",
6655
6875
  jsii_struct_bases=[],
@@ -7078,6 +7298,7 @@ class CfnGraphQLApi(
7078
7298
  "name": "name",
7079
7299
  "additional_authentication_providers": "additionalAuthenticationProviders",
7080
7300
  "api_type": "apiType",
7301
+ "enhanced_metrics_config": "enhancedMetricsConfig",
7081
7302
  "environment_variables": "environmentVariables",
7082
7303
  "introspection_config": "introspectionConfig",
7083
7304
  "lambda_authorizer_config": "lambdaAuthorizerConfig",
@@ -7101,6 +7322,7 @@ class CfnGraphQLApiProps:
7101
7322
  name: builtins.str,
7102
7323
  additional_authentication_providers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.AdditionalAuthenticationProviderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7103
7324
  api_type: typing.Optional[builtins.str] = None,
7325
+ enhanced_metrics_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.EnhancedMetricsConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7104
7326
  environment_variables: typing.Any = None,
7105
7327
  introspection_config: typing.Optional[builtins.str] = None,
7106
7328
  lambda_authorizer_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.LambdaAuthorizerConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -7121,7 +7343,8 @@ class CfnGraphQLApiProps:
7121
7343
  :param name: The API name.
7122
7344
  :param additional_authentication_providers: A list of additional authentication providers for the ``GraphqlApi`` API.
7123
7345
  :param api_type: The value that indicates whether the GraphQL API is a standard API ( ``GRAPHQL`` ) or merged API ( ``MERGED`` ). *WARNING* : If the ``ApiType`` has not been defined, *explicitly* setting it to ``GRAPHQL`` in a template/stack update will result in an API replacement and new DNS values. The following values are valid: ``GRAPHQL | MERGED``
7124
- :param environment_variables:
7346
+ :param enhanced_metrics_config: Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent. Enhanced metrics can be configured at the resolver, data source, and operation levels. For more information, see `Monitoring and logging <https://docs.aws.amazon.com//appsync/latest/devguide/monitoring.html#cw-metrics>`_ in the *AWS AppSync User Guide* .
7347
+ :param environment_variables: A map containing the list of resources with their properties and environment variables. For more information, see `Environmental variables <https://docs.aws.amazon.com/appsync/latest/devguide/environmental-variables.html>`_ . *Pattern* : ``^[A-Za-z]+\\\\w*$\\\\`` *Minimum* : 2 *Maximum* : 64
7125
7348
  :param introspection_config: Sets the value of the GraphQL API to enable ( ``ENABLED`` ) or disable ( ``DISABLED`` ) introspection. If no value is provided, the introspection configuration will be set to ``ENABLED`` by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled. For more information about introspection, see `GraphQL introspection <https://docs.aws.amazon.com/https://graphql.org/learn/introspection/>`_ .
7126
7349
  :param lambda_authorizer_config: A ``LambdaAuthorizerConfig`` holds configuration on how to authorize AWS AppSync API access when using the ``AWS_LAMBDA`` authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
7127
7350
  :param log_config: The Amazon CloudWatch Logs configuration.
@@ -7173,6 +7396,11 @@ class CfnGraphQLApiProps:
7173
7396
  )
7174
7397
  )],
7175
7398
  api_type="apiType",
7399
+ enhanced_metrics_config=appsync.CfnGraphQLApi.EnhancedMetricsConfigProperty(
7400
+ data_source_level_metrics_behavior="dataSourceLevelMetricsBehavior",
7401
+ operation_level_metrics_config="operationLevelMetricsConfig",
7402
+ resolver_level_metrics_behavior="resolverLevelMetricsBehavior"
7403
+ ),
7176
7404
  environment_variables=environment_variables,
7177
7405
  introspection_config="introspectionConfig",
7178
7406
  lambda_authorizer_config=appsync.CfnGraphQLApi.LambdaAuthorizerConfigProperty(
@@ -7215,6 +7443,7 @@ class CfnGraphQLApiProps:
7215
7443
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
7216
7444
  check_type(argname="argument additional_authentication_providers", value=additional_authentication_providers, expected_type=type_hints["additional_authentication_providers"])
7217
7445
  check_type(argname="argument api_type", value=api_type, expected_type=type_hints["api_type"])
7446
+ check_type(argname="argument enhanced_metrics_config", value=enhanced_metrics_config, expected_type=type_hints["enhanced_metrics_config"])
7218
7447
  check_type(argname="argument environment_variables", value=environment_variables, expected_type=type_hints["environment_variables"])
7219
7448
  check_type(argname="argument introspection_config", value=introspection_config, expected_type=type_hints["introspection_config"])
7220
7449
  check_type(argname="argument lambda_authorizer_config", value=lambda_authorizer_config, expected_type=type_hints["lambda_authorizer_config"])
@@ -7236,6 +7465,8 @@ class CfnGraphQLApiProps:
7236
7465
  self._values["additional_authentication_providers"] = additional_authentication_providers
7237
7466
  if api_type is not None:
7238
7467
  self._values["api_type"] = api_type
7468
+ if enhanced_metrics_config is not None:
7469
+ self._values["enhanced_metrics_config"] = enhanced_metrics_config
7239
7470
  if environment_variables is not None:
7240
7471
  self._values["environment_variables"] = environment_variables
7241
7472
  if introspection_config is not None:
@@ -7312,8 +7543,32 @@ class CfnGraphQLApiProps:
7312
7543
  return typing.cast(typing.Optional[builtins.str], result)
7313
7544
 
7314
7545
  @builtins.property
7315
- def environment_variables(self) -> typing.Any:
7546
+ def enhanced_metrics_config(
7547
+ self,
7548
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGraphQLApi.EnhancedMetricsConfigProperty]]:
7549
+ '''Enables and controls the enhanced metrics feature.
7550
+
7551
+ Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
7552
+
7553
+ Enhanced metrics can be configured at the resolver, data source, and operation levels. For more information, see `Monitoring and logging <https://docs.aws.amazon.com//appsync/latest/devguide/monitoring.html#cw-metrics>`_ in the *AWS AppSync User Guide* .
7554
+
7555
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-enhancedmetricsconfig
7316
7556
  '''
7557
+ result = self._values.get("enhanced_metrics_config")
7558
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGraphQLApi.EnhancedMetricsConfigProperty]], result)
7559
+
7560
+ @builtins.property
7561
+ def environment_variables(self) -> typing.Any:
7562
+ '''A map containing the list of resources with their properties and environment variables.
7563
+
7564
+ For more information, see `Environmental variables <https://docs.aws.amazon.com/appsync/latest/devguide/environmental-variables.html>`_ .
7565
+
7566
+ *Pattern* : ``^[A-Za-z]+\\\\w*$\\\\``
7567
+
7568
+ *Minimum* : 2
7569
+
7570
+ *Maximum* : 64
7571
+
7317
7572
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-environmentvariables
7318
7573
  '''
7319
7574
  result = self._values.get("environment_variables")
@@ -7752,6 +8007,7 @@ class CfnResolver(
7752
8007
  data_source_name="dataSourceName",
7753
8008
  kind="kind",
7754
8009
  max_batch_size=123,
8010
+ metrics_config="metricsConfig",
7755
8011
  pipeline_config=appsync.CfnResolver.PipelineConfigProperty(
7756
8012
  functions=["functions"]
7757
8013
  ),
@@ -7789,6 +8045,7 @@ class CfnResolver(
7789
8045
  data_source_name: typing.Optional[builtins.str] = None,
7790
8046
  kind: typing.Optional[builtins.str] = None,
7791
8047
  max_batch_size: typing.Optional[jsii.Number] = None,
8048
+ metrics_config: typing.Optional[builtins.str] = None,
7792
8049
  pipeline_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnResolver.PipelineConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7793
8050
  request_mapping_template: typing.Optional[builtins.str] = None,
7794
8051
  request_mapping_template_s3_location: typing.Optional[builtins.str] = None,
@@ -7809,6 +8066,7 @@ class CfnResolver(
7809
8066
  :param data_source_name: The resolver data source name.
7810
8067
  :param kind: The resolver type. - *UNIT* : A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source. - *PIPELINE* : A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of ``Function`` objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against multiple data sources.
7811
8068
  :param max_batch_size: The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a ``BatchInvoke`` operation.
8069
+ :param metrics_config: Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS`` . If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
7812
8070
  :param pipeline_config: Functions linked with the pipeline resolver.
7813
8071
  :param request_mapping_template: The request mapping template. Request mapping templates are optional when using a Lambda data source. For all other data sources, a request mapping template is required.
7814
8072
  :param request_mapping_template_s3_location: The location of a request mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template.
@@ -7831,6 +8089,7 @@ class CfnResolver(
7831
8089
  data_source_name=data_source_name,
7832
8090
  kind=kind,
7833
8091
  max_batch_size=max_batch_size,
8092
+ metrics_config=metrics_config,
7834
8093
  pipeline_config=pipeline_config,
7835
8094
  request_mapping_template=request_mapping_template,
7836
8095
  request_mapping_template_s3_location=request_mapping_template_s3_location,
@@ -8026,6 +8285,19 @@ class CfnResolver(
8026
8285
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8027
8286
  jsii.set(self, "maxBatchSize", value)
8028
8287
 
8288
+ @builtins.property
8289
+ @jsii.member(jsii_name="metricsConfig")
8290
+ def metrics_config(self) -> typing.Optional[builtins.str]:
8291
+ '''Enables or disables enhanced resolver metrics for specified resolvers.'''
8292
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "metricsConfig"))
8293
+
8294
+ @metrics_config.setter
8295
+ def metrics_config(self, value: typing.Optional[builtins.str]) -> None:
8296
+ if __debug__:
8297
+ type_hints = typing.get_type_hints(_typecheckingstub__a77bc1a7d402f13838316379a33272bc7c2e7813b0119baa06190fa60c93f752)
8298
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8299
+ jsii.set(self, "metricsConfig", value)
8300
+
8029
8301
  @builtins.property
8030
8302
  @jsii.member(jsii_name="pipelineConfig")
8031
8303
  def pipeline_config(
@@ -8523,6 +8795,7 @@ class CfnResolver(
8523
8795
  "data_source_name": "dataSourceName",
8524
8796
  "kind": "kind",
8525
8797
  "max_batch_size": "maxBatchSize",
8798
+ "metrics_config": "metricsConfig",
8526
8799
  "pipeline_config": "pipelineConfig",
8527
8800
  "request_mapping_template": "requestMappingTemplate",
8528
8801
  "request_mapping_template_s3_location": "requestMappingTemplateS3Location",
@@ -8545,6 +8818,7 @@ class CfnResolverProps:
8545
8818
  data_source_name: typing.Optional[builtins.str] = None,
8546
8819
  kind: typing.Optional[builtins.str] = None,
8547
8820
  max_batch_size: typing.Optional[jsii.Number] = None,
8821
+ metrics_config: typing.Optional[builtins.str] = None,
8548
8822
  pipeline_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnResolver.PipelineConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8549
8823
  request_mapping_template: typing.Optional[builtins.str] = None,
8550
8824
  request_mapping_template_s3_location: typing.Optional[builtins.str] = None,
@@ -8564,6 +8838,7 @@ class CfnResolverProps:
8564
8838
  :param data_source_name: The resolver data source name.
8565
8839
  :param kind: The resolver type. - *UNIT* : A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source. - *PIPELINE* : A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of ``Function`` objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against multiple data sources.
8566
8840
  :param max_batch_size: The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a ``BatchInvoke`` operation.
8841
+ :param metrics_config: Enables or disables enhanced resolver metrics for specified resolvers. Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS`` . If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
8567
8842
  :param pipeline_config: Functions linked with the pipeline resolver.
8568
8843
  :param request_mapping_template: The request mapping template. Request mapping templates are optional when using a Lambda data source. For all other data sources, a request mapping template is required.
8569
8844
  :param request_mapping_template_s3_location: The location of a request mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template.
@@ -8598,6 +8873,7 @@ class CfnResolverProps:
8598
8873
  data_source_name="dataSourceName",
8599
8874
  kind="kind",
8600
8875
  max_batch_size=123,
8876
+ metrics_config="metricsConfig",
8601
8877
  pipeline_config=appsync.CfnResolver.PipelineConfigProperty(
8602
8878
  functions=["functions"]
8603
8879
  ),
@@ -8631,6 +8907,7 @@ class CfnResolverProps:
8631
8907
  check_type(argname="argument data_source_name", value=data_source_name, expected_type=type_hints["data_source_name"])
8632
8908
  check_type(argname="argument kind", value=kind, expected_type=type_hints["kind"])
8633
8909
  check_type(argname="argument max_batch_size", value=max_batch_size, expected_type=type_hints["max_batch_size"])
8910
+ check_type(argname="argument metrics_config", value=metrics_config, expected_type=type_hints["metrics_config"])
8634
8911
  check_type(argname="argument pipeline_config", value=pipeline_config, expected_type=type_hints["pipeline_config"])
8635
8912
  check_type(argname="argument request_mapping_template", value=request_mapping_template, expected_type=type_hints["request_mapping_template"])
8636
8913
  check_type(argname="argument request_mapping_template_s3_location", value=request_mapping_template_s3_location, expected_type=type_hints["request_mapping_template_s3_location"])
@@ -8655,6 +8932,8 @@ class CfnResolverProps:
8655
8932
  self._values["kind"] = kind
8656
8933
  if max_batch_size is not None:
8657
8934
  self._values["max_batch_size"] = max_batch_size
8935
+ if metrics_config is not None:
8936
+ self._values["metrics_config"] = metrics_config
8658
8937
  if pipeline_config is not None:
8659
8938
  self._values["pipeline_config"] = pipeline_config
8660
8939
  if request_mapping_template is not None:
@@ -8761,6 +9040,17 @@ class CfnResolverProps:
8761
9040
  result = self._values.get("max_batch_size")
8762
9041
  return typing.cast(typing.Optional[jsii.Number], result)
8763
9042
 
9043
+ @builtins.property
9044
+ def metrics_config(self) -> typing.Optional[builtins.str]:
9045
+ '''Enables or disables enhanced resolver metrics for specified resolvers.
9046
+
9047
+ Note that ``MetricsConfig`` won't be used unless the ``resolverLevelMetricsBehavior`` value is set to ``PER_RESOLVER_METRICS`` . If the ``resolverLevelMetricsBehavior`` is set to ``FULL_REQUEST_RESOLVER_METRICS`` instead, ``MetricsConfig`` will be ignored. However, you can still set its value.
9048
+
9049
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-metricsconfig
9050
+ '''
9051
+ result = self._values.get("metrics_config")
9052
+ return typing.cast(typing.Optional[builtins.str], result)
9053
+
8764
9054
  @builtins.property
8765
9055
  def pipeline_config(
8766
9056
  self,
@@ -16899,6 +17189,7 @@ def _typecheckingstub__e9d92b7b2abdac7341eb92f7ac10d2d67dd2700af68eaf42c72c47ffd
16899
17189
  ttl: jsii.Number,
16900
17190
  type: builtins.str,
16901
17191
  at_rest_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
17192
+ health_metrics_config: typing.Optional[builtins.str] = None,
16902
17193
  transit_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
16903
17194
  ) -> None:
16904
17195
  """Type checking stubs"""
@@ -16946,6 +17237,12 @@ def _typecheckingstub__93a4abe242f634763c1f128b7e17017d1176924c9b032d5536f4caa3b
16946
17237
  """Type checking stubs"""
16947
17238
  pass
16948
17239
 
17240
+ def _typecheckingstub__55de0a796fc6cc946fccbec8ff82c493648ae16228267a0627a624d4e64e10dd(
17241
+ value: typing.Optional[builtins.str],
17242
+ ) -> None:
17243
+ """Type checking stubs"""
17244
+ pass
17245
+
16949
17246
  def _typecheckingstub__eb39499095e917401c885f7c77781744d09df071b1ed62c6f2c32cbbc6fbdb33(
16950
17247
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
16951
17248
  ) -> None:
@@ -16959,6 +17256,7 @@ def _typecheckingstub__8f054fa3186eb5f122c20e523bed485713c72511ee3ee94be25733eca
16959
17256
  ttl: jsii.Number,
16960
17257
  type: builtins.str,
16961
17258
  at_rest_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
17259
+ health_metrics_config: typing.Optional[builtins.str] = None,
16962
17260
  transit_encryption_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
16963
17261
  ) -> None:
16964
17262
  """Type checking stubs"""
@@ -17027,6 +17325,7 @@ def _typecheckingstub__f2dc8968068d09d9cb599cea5efad1a18016c4eca4fcc6c15e6169a08
17027
17325
  event_bridge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.EventBridgeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17028
17326
  http_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.HttpConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17029
17327
  lambda_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.LambdaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17328
+ metrics_config: typing.Optional[builtins.str] = None,
17030
17329
  open_search_service_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.OpenSearchServiceConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17031
17330
  relational_database_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.RelationalDatabaseConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17032
17331
  service_role_arn: typing.Optional[builtins.str] = None,
@@ -17100,6 +17399,12 @@ def _typecheckingstub__24ff8b510d0035620c1325857ec673c802695c9f3c8dd8fa109d1b44e
17100
17399
  """Type checking stubs"""
17101
17400
  pass
17102
17401
 
17402
+ def _typecheckingstub__ff88a1b2db49ba08cabf555c8761c43a2a3ae4fed6c29d454b232ce083cba4e6(
17403
+ value: typing.Optional[builtins.str],
17404
+ ) -> None:
17405
+ """Type checking stubs"""
17406
+ pass
17407
+
17103
17408
  def _typecheckingstub__876dd6f7515f1b03442f4aa7a0d78d1d6e5eef401db8d851e96b713bd30f989e(
17104
17409
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataSource.OpenSearchServiceConfigProperty]],
17105
17410
  ) -> None:
@@ -17222,6 +17527,7 @@ def _typecheckingstub__77a27321db4878d92375c672ad2fd1de24e61150d04b9a9b7f544b60b
17222
17527
  event_bridge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.EventBridgeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17223
17528
  http_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.HttpConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17224
17529
  lambda_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.LambdaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17530
+ metrics_config: typing.Optional[builtins.str] = None,
17225
17531
  open_search_service_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.OpenSearchServiceConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17226
17532
  relational_database_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.RelationalDatabaseConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17227
17533
  service_role_arn: typing.Optional[builtins.str] = None,
@@ -17491,6 +17797,7 @@ def _typecheckingstub__54e0e0488820e5a410f75b28895d4271db1e58bd6c71e17fd04fcf3fa
17491
17797
  name: builtins.str,
17492
17798
  additional_authentication_providers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.AdditionalAuthenticationProviderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
17493
17799
  api_type: typing.Optional[builtins.str] = None,
17800
+ enhanced_metrics_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.EnhancedMetricsConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17494
17801
  environment_variables: typing.Any = None,
17495
17802
  introspection_config: typing.Optional[builtins.str] = None,
17496
17803
  lambda_authorizer_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.LambdaAuthorizerConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -17544,6 +17851,12 @@ def _typecheckingstub__368741733832ba6f2bd8963ff6065a1471cd003f84d5567a1b4ac4e31
17544
17851
  """Type checking stubs"""
17545
17852
  pass
17546
17853
 
17854
+ def _typecheckingstub__31ef927293a72b36675d980c2666fdaa13856a6038c9fa984dbc331dec806b66(
17855
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGraphQLApi.EnhancedMetricsConfigProperty]],
17856
+ ) -> None:
17857
+ """Type checking stubs"""
17858
+ pass
17859
+
17547
17860
  def _typecheckingstub__792a537db4d8dd69989dc47efb8d28c555d2094bfd09895222925621c8b1eeba(
17548
17861
  value: typing.Any,
17549
17862
  ) -> None:
@@ -17641,6 +17954,15 @@ def _typecheckingstub__05b5c78d0d6cf8f2e5de126a1b379f17cb44634afea4439cb4b2b3c89
17641
17954
  """Type checking stubs"""
17642
17955
  pass
17643
17956
 
17957
+ def _typecheckingstub__6a3e3bd3841df61c2af14b88642f9896e5d579727680a087470860c9f97edd81(
17958
+ *,
17959
+ data_source_level_metrics_behavior: builtins.str,
17960
+ operation_level_metrics_config: builtins.str,
17961
+ resolver_level_metrics_behavior: builtins.str,
17962
+ ) -> None:
17963
+ """Type checking stubs"""
17964
+ pass
17965
+
17644
17966
  def _typecheckingstub__5f9291a235c0bd7ecea6f37d1aa830ec180ae9518e0555f8a98722d8088b1895(
17645
17967
  *,
17646
17968
  authorizer_result_ttl_in_seconds: typing.Optional[jsii.Number] = None,
@@ -17685,6 +18007,7 @@ def _typecheckingstub__c30fb6e2b0bf2994b166c6091173ca1bbdf2a226ff26da5bfc0c35067
17685
18007
  name: builtins.str,
17686
18008
  additional_authentication_providers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.AdditionalAuthenticationProviderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
17687
18009
  api_type: typing.Optional[builtins.str] = None,
18010
+ enhanced_metrics_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.EnhancedMetricsConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17688
18011
  environment_variables: typing.Any = None,
17689
18012
  introspection_config: typing.Optional[builtins.str] = None,
17690
18013
  lambda_authorizer_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGraphQLApi.LambdaAuthorizerConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -17765,6 +18088,7 @@ def _typecheckingstub__45a19b37f9f570b32d81c1e70bfcb51be048fdffa3df94ad801e69b81
17765
18088
  data_source_name: typing.Optional[builtins.str] = None,
17766
18089
  kind: typing.Optional[builtins.str] = None,
17767
18090
  max_batch_size: typing.Optional[jsii.Number] = None,
18091
+ metrics_config: typing.Optional[builtins.str] = None,
17768
18092
  pipeline_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnResolver.PipelineConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17769
18093
  request_mapping_template: typing.Optional[builtins.str] = None,
17770
18094
  request_mapping_template_s3_location: typing.Optional[builtins.str] = None,
@@ -17842,6 +18166,12 @@ def _typecheckingstub__66d0a40a93385979fce12d901f6a195637584cfcb71b3a04c20d8333f
17842
18166
  """Type checking stubs"""
17843
18167
  pass
17844
18168
 
18169
+ def _typecheckingstub__a77bc1a7d402f13838316379a33272bc7c2e7813b0119baa06190fa60c93f752(
18170
+ value: typing.Optional[builtins.str],
18171
+ ) -> None:
18172
+ """Type checking stubs"""
18173
+ pass
18174
+
17845
18175
  def _typecheckingstub__3c6c98074ee2ebbe5b451fe5513433aa3557366ed040722d6e61328ab781da16(
17846
18176
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnResolver.PipelineConfigProperty]],
17847
18177
  ) -> None:
@@ -17934,6 +18264,7 @@ def _typecheckingstub__57b1ba8346de8783ad38f1a2377fd50bdd7577d903f4b68402c7b5ab6
17934
18264
  data_source_name: typing.Optional[builtins.str] = None,
17935
18265
  kind: typing.Optional[builtins.str] = None,
17936
18266
  max_batch_size: typing.Optional[jsii.Number] = None,
18267
+ metrics_config: typing.Optional[builtins.str] = None,
17937
18268
  pipeline_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnResolver.PipelineConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
17938
18269
  request_mapping_template: typing.Optional[builtins.str] = None,
17939
18270
  request_mapping_template_s3_location: typing.Optional[builtins.str] = None,