diff --git a/.changelog/183ea75365084891a3fe4986467171dc.json b/.changelog/183ea75365084891a3fe4986467171dc.json new file mode 100644 index 00000000000..cc2919be43c --- /dev/null +++ b/.changelog/183ea75365084891a3fe4986467171dc.json @@ -0,0 +1,8 @@ +{ + "id": "183ea753-6508-4891-a3fe-4986467171dc", + "type": "documentation", + "description": "Clarify possible values for KmsKeyArn and EncryptionDescription.", + "modules": [ + "service/qldb" + ] +} \ No newline at end of file diff --git a/.changelog/4cba1be480ec49fd9580b3644b2ae99f.json b/.changelog/4cba1be480ec49fd9580b3644b2ae99f.json new file mode 100644 index 00000000000..57a52bfa59a --- /dev/null +++ b/.changelog/4cba1be480ec49fd9580b3644b2ae99f.json @@ -0,0 +1,8 @@ +{ + "id": "4cba1be4-80ec-49fd-9580-b3644b2ae99f", + "type": "documentation", + "description": "Doc-only update for new RUM metrics that were added", + "modules": [ + "service/rum" + ] +} \ No newline at end of file diff --git a/.changelog/4e202444408845fb8cb9bd86cf0b2201.json b/.changelog/4e202444408845fb8cb9bd86cf0b2201.json new file mode 100644 index 00000000000..e448a0972ae --- /dev/null +++ b/.changelog/4e202444408845fb8cb9bd86cf0b2201.json @@ -0,0 +1,8 @@ +{ + "id": "4e202444-4088-45fb-8cb9-bd86cf0b2201", + "type": "feature", + "description": "Add pattern and length based validations for DBShardGroupIdentifier", + "modules": [ + "service/rds" + ] +} \ No newline at end of file diff --git a/.changelog/8c868ec514a841578cff1a3129bd9726.json b/.changelog/8c868ec514a841578cff1a3129bd9726.json new file mode 100644 index 00000000000..97be2e44555 --- /dev/null +++ b/.changelog/8c868ec514a841578cff1a3129bd9726.json @@ -0,0 +1,8 @@ +{ + "id": "8c868ec5-14a8-4157-8cff-1a3129bd9726", + "type": "documentation", + "description": "Documentation only updates for AppSync", + "modules": [ + "service/appsync" + ] +} \ No newline at end of file diff --git a/service/appsync/api_op_CreateApiCache.go b/service/appsync/api_op_CreateApiCache.go index 5d555e1ada1..b1216ef02f2 100644 --- a/service/appsync/api_op_CreateApiCache.go +++ b/service/appsync/api_op_CreateApiCache.go @@ -76,10 +76,12 @@ type CreateApiCacheInput struct { // Controls how cache health metrics will be emitted to CloudWatch. Cache health // metrics include: - // - NetworkBandwidthOutAllowanceExceeded: The number of times a specified - // GraphQL operation was called. - // - EngineCPUUtilization: The number of GraphQL errors that occurred during a - // specified GraphQL operation. + // - 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 // . HealthMetricsConfig types.CacheHealthMetricsConfig diff --git a/service/appsync/api_op_UpdateApiCache.go b/service/appsync/api_op_UpdateApiCache.go index 5de57e44734..dc4d1b82aa9 100644 --- a/service/appsync/api_op_UpdateApiCache.go +++ b/service/appsync/api_op_UpdateApiCache.go @@ -72,10 +72,12 @@ type UpdateApiCacheInput struct { // Controls how cache health metrics will be emitted to CloudWatch. Cache health // metrics include: - // - NetworkBandwidthOutAllowanceExceeded: The number of times a specified - // GraphQL operation was called. - // - EngineCPUUtilization: The number of GraphQL errors that occurred during a - // specified GraphQL operation. + // - 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 // . HealthMetricsConfig types.CacheHealthMetricsConfig diff --git a/service/appsync/types/types.go b/service/appsync/types/types.go index f9d44a67d83..4679a8653c7 100644 --- a/service/appsync/types/types.go +++ b/service/appsync/types/types.go @@ -551,7 +551,7 @@ type ElasticsearchDataSourceConfig struct { // - 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 metricConfig value set to ENABLED . +// the metricsConfig value set to ENABLED . // - dataSourceLevelMetricsBehavior : Controls how data source metrics will be // emitted to CloudWatch. Data source metrics include: // - Requests: The number of invocations that occured during a request. @@ -563,7 +563,7 @@ type ElasticsearchDataSourceConfig struct { // - 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 metricConfig value set to ENABLED . +// that have the metricsConfig value set to ENABLED . // - operationLevelMetricsConfig : Controls how operation metrics will be emitted // to CloudWatch. Operation metrics include: // - Requests: The number of times a specified GraphQL operation was called. @@ -583,7 +583,7 @@ type EnhancedMetricsConfig struct { // - 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 metricConfig value set to ENABLED . + // that have the metricsConfig value set to ENABLED . // // This member is required. DataSourceLevelMetricsBehavior DataSourceLevelMetricsBehavior @@ -612,7 +612,7 @@ type EnhancedMetricsConfig struct { // - 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 metricConfig value set to ENABLED . + // the metricsConfig value set to ENABLED . // // This member is required. ResolverLevelMetricsBehavior ResolverLevelMetricsBehavior diff --git a/service/qldb/api_op_DescribeLedger.go b/service/qldb/api_op_DescribeLedger.go index 88350ec03cb..3a2e6c70e06 100644 --- a/service/qldb/api_op_DescribeLedger.go +++ b/service/qldb/api_op_DescribeLedger.go @@ -58,7 +58,8 @@ type DescribeLedgerOutput struct { // Information about the encryption of data at rest in the ledger. This includes // the current status, the KMS key, and when the key became inaccessible (in the - // case of an error). + // case of an error). If this parameter is undefined, the ledger uses an Amazon Web + // Services owned KMS key for encryption. EncryptionDescription *types.LedgerEncryptionDescription // The name of the ledger. diff --git a/service/qldb/endpoints.go b/service/qldb/endpoints.go index 3a66bc77c12..cddba737a7c 100644 --- a/service/qldb/endpoints.go +++ b/service/qldb/endpoints.go @@ -373,7 +373,7 @@ func (r *resolver) ResolveEndpoint( } } if _UseFIPS == true { - if true == _PartitionResult.SupportsFIPS { + if _PartitionResult.SupportsFIPS == true { uriString := func() string { var out strings.Builder out.WriteString("https://qldb-fips.") diff --git a/service/qldb/types/types.go b/service/qldb/types/types.go index 5deda41c4a3..18f23476c35 100644 --- a/service/qldb/types/types.go +++ b/service/qldb/types/types.go @@ -177,7 +177,9 @@ type LedgerEncryptionDescription struct { // The Amazon Resource Name (ARN) of the customer managed KMS key that the ledger // uses for encryption at rest. If this parameter is undefined, the ledger uses an - // Amazon Web Services owned KMS key for encryption. + // Amazon Web Services owned KMS key for encryption. It will display + // AWS_OWNED_KMS_KEY when updating the ledger's encryption configuration to the + // Amazon Web Services owned KMS key. // // This member is required. KmsKeyArn *string diff --git a/service/rum/api_op_BatchCreateRumMetricDefinitions.go b/service/rum/api_op_BatchCreateRumMetricDefinitions.go index ae6f7360d01..f4f362f20c2 100644 --- a/service/rum/api_op_BatchCreateRumMetricDefinitions.go +++ b/service/rum/api_op_BatchCreateRumMetricDefinitions.go @@ -16,24 +16,24 @@ import ( // and Evidently. By default, RUM app monitors send some metrics to CloudWatch. // These default metrics are listed in CloudWatch metrics that you can collect // with CloudWatch RUM (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-metrics.html) -// . In addition to these default metrics, you can choose to send extended metrics -// or custom metrics or both. -// - Extended metrics enable you to send metrics with additional dimensions not -// included in the default metrics. You can also send extended metrics to Evidently -// as well as CloudWatch. The valid dimension names for the additional dimensions -// for extended metrics are BrowserName , CountryCode , DeviceType , FileType , -// OSName , and PageId . For more information, see Extended metrics that you can -// send to CloudWatch and CloudWatch Evidently (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-vended-metrics.html) +// . In addition to these default metrics, you can choose to send extended metrics, +// custom metrics, or both. +// - Extended metrics let you send metrics with additional dimensions that +// aren't included in the default metrics. You can also send extended metrics to +// both Evidently and CloudWatch. The valid dimension names for the additional +// dimensions for extended metrics are BrowserName , CountryCode , DeviceType , +// FileType , OSName , and PageId . For more information, see Extended metrics +// that you can send to CloudWatch and CloudWatch Evidently (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-vended-metrics.html) // . // - Custom metrics are metrics that you define. You can send custom metrics to -// CloudWatch or to CloudWatch Evidently or to both. With custom metrics, you can -// use any metric name and namespace, and to derive the metrics you can use any -// custom events, built-in events, custom attributes, or default attributes. You -// can't send custom metrics to the AWS/RUM namespace. You must send custom -// metrics to a custom namespace that you define. The namespace that you use can't -// start with AWS/ . CloudWatch RUM prepends RUM/CustomMetrics/ to the custom -// namespace that you define, so the final namespace for your metrics in CloudWatch -// is RUM/CustomMetrics/your-custom-namespace . +// CloudWatch. CloudWatch Evidently, or both. With custom metrics, you can use any +// metric name and namespace. To derive the metrics, you can use any custom events, +// built-in events, custom attributes, or default attributes. You can't send custom +// metrics to the AWS/RUM namespace. You must send custom metrics to a custom +// namespace that you define. The namespace that you use can't start with AWS/ . +// CloudWatch RUM prepends RUM/CustomMetrics/ to the custom namespace that you +// define, so the final namespace for your metrics in CloudWatch is +// RUM/CustomMetrics/your-custom-namespace . // // The maximum number of metric definitions that you can specify in one // BatchCreateRumMetricDefinitions operation is 200. The maximum number of metric @@ -69,9 +69,9 @@ type BatchCreateRumMetricDefinitionsInput struct { AppMonitorName *string // The destination to send the metrics to. Valid values are CloudWatch and - // Evidently . If you specify Evidently , you must also specify the ARN of the - // CloudWatchEvidently experiment that will receive the metrics and an IAM role - // that has permission to write to the experiment. + // Evidently . If you specify Evidently , you must also specify the Amazon Resource + // Name (ARN) of the CloudWatchEvidently experiment that will receive the metrics + // and an IAM role that has permission to write to the experiment. // // This member is required. Destination types.MetricDestination diff --git a/service/rum/api_op_CreateAppMonitor.go b/service/rum/api_op_CreateAppMonitor.go index 402820866aa..290a1c60ecc 100644 --- a/service/rum/api_op_CreateAppMonitor.go +++ b/service/rum/api_op_CreateAppMonitor.go @@ -53,7 +53,7 @@ type CreateAppMonitorInput struct { // identity pool to use for authorization. If you don't include // AppMonitorConfiguration , you must set up your own authorization method. For // more information, see Authorize your application to send data to Amazon Web - // Services (https://docs.aws.amazon.com/monitoring/CloudWatch-RUM-get-started-authorization.html) + // Services (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-get-started-authorization.html) // . If you omit this argument, the sample rate used for RUM is set to 10% of the // user sessions. AppMonitorConfiguration *types.AppMonitorConfiguration diff --git a/service/rum/api_op_PutRumMetricsDestination.go b/service/rum/api_op_PutRumMetricsDestination.go index a9552ecf40d..5f8d3d846c3 100644 --- a/service/rum/api_op_PutRumMetricsDestination.go +++ b/service/rum/api_op_PutRumMetricsDestination.go @@ -51,9 +51,13 @@ type PutRumMetricsDestinationInput struct { DestinationArn *string // This parameter is required if Destination is Evidently . If Destination is - // CloudWatch , do not use this parameter. This parameter specifies the ARN of an + // CloudWatch , don't use this parameter. This parameter specifies the ARN of an // IAM role that RUM will assume to write to the Evidently experiment that you are // sending metrics to. This role must have permission to write to that experiment. + // If you specify this parameter, you must be signed on to a role that has PassRole (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) + // permissions attached to it, to allow the role to be passed. The + // CloudWatchAmazonCloudWatchRUMFullAccess (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/auth-and-access-control-cw.html#managed-policies-cloudwatch-RUM) + // policy doesn't include PassRole permissions. IamRoleArn *string noSmithyDocumentSerde diff --git a/service/rum/api_op_UpdateAppMonitor.go b/service/rum/api_op_UpdateAppMonitor.go index 468482f0c9d..b0f5a1efba0 100644 --- a/service/rum/api_op_UpdateAppMonitor.go +++ b/service/rum/api_op_UpdateAppMonitor.go @@ -48,7 +48,7 @@ type UpdateAppMonitorInput struct { // identity pool to use for authorization. If you don't include // AppMonitorConfiguration , you must set up your own authorization method. For // more information, see Authorize your application to send data to Amazon Web - // Services (https://docs.aws.amazon.com/monitoring/CloudWatch-RUM-get-started-authorization.html) + // Services (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-get-started-authorization.html) // . AppMonitorConfiguration *types.AppMonitorConfiguration diff --git a/service/rum/endpoints.go b/service/rum/endpoints.go index ca86aa15094..9cce9772bbe 100644 --- a/service/rum/endpoints.go +++ b/service/rum/endpoints.go @@ -373,7 +373,7 @@ func (r *resolver) ResolveEndpoint( } } if _UseFIPS == true { - if true == _PartitionResult.SupportsFIPS { + if _PartitionResult.SupportsFIPS == true { uriString := func() string { var out strings.Builder out.WriteString("https://rum-fips.") diff --git a/service/rum/types/types.go b/service/rum/types/types.go index 4e648d4e18a..a2297f15e89 100644 --- a/service/rum/types/types.go +++ b/service/rum/types/types.go @@ -77,7 +77,17 @@ type AppMonitorConfiguration struct { FavoritePages []string // The ARN of the guest IAM role that is attached to the Amazon Cognito identity - // pool that is used to authorize the sending of data to RUM. + // pool that is used to authorize the sending of data to RUM. It is possible that + // an app monitor does not have a value for GuestRoleArn . For example, this can + // happen when you use the console to create an app monitor and you allow + // CloudWatch RUM to create a new identity pool for Authorization. In this case, + // GuestRoleArn is not present in the GetAppMonitor (https://docs.aws.amazon.com/cloudwatchrum/latest/APIReference/API_GetAppMonitor.html) + // response because it is not stored by the service. If this issue affects you, you + // can take one of the following steps: + // - Use the Cloud Development Kit (CDK) to create an identity pool and the + // associated IAM role, and use that for your app monitor. + // - Make a separate GetIdentityPoolRoles (https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetIdentityPoolRoles.html) + // call to Amazon Cognito to retrieve the GuestRoleArn . GuestRoleArn *string // The ID of the Amazon Cognito identity pool that is used to authorize the @@ -273,14 +283,15 @@ type MetricDefinition struct { } // Use this structure to define one extended metric or custom metric that RUM will -// send to CloudWatch or CloudWatch Evidently. For more information, see -// Additional metrics that you can send to CloudWatch and CloudWatch Evidently (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-vended-metrics.html) +// send to CloudWatch or CloudWatch Evidently. For more information, see Custom +// metrics and extended metrics that you can send to CloudWatch and CloudWatch +// Evidently (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-custom-and-extended-metrics.html) // . This structure is validated differently for extended metrics and custom // metrics. For extended metrics that are sent to the AWS/RUM namespace, the // following validations apply: // - The Namespace parameter must be omitted or set to AWS/RUM . // - Only certain combinations of values for Name , ValueKey , and EventPattern -// are valid. In addition to what is displayed in the list below, the +// are valid. In addition to what is displayed in the following list, the // EventPattern can also include information used by the DimensionKeys field. // - If Name is PerformanceNavigationDuration , then ValueKey must be // event_details.duration and the EventPattern must include @@ -315,6 +326,16 @@ type MetricDefinition struct { // must include {"event_type":["com.amazon.rum.http_event"]} // - If Name is SessionCount , then ValueKey must be null and the EventPattern // must include {"event_type":["com.amazon.rum.session_start_event"]} +// - If Name is PageViewCount , then ValueKey must be null and the EventPattern +// must include {"event_type":["com.amazon.rum.page_view_event"]} +// - If Name is Http4xxCount , then ValueKey must be null and the EventPattern +// must include {"event_type": +// ["com.amazon.rum.http_event"],"event_details":{"response":{"status":[{"numeric":[">=",400,"<",500]}]}}} +// } +// - If Name is Http5xxCount , then ValueKey must be null and the EventPattern +// must include {"event_type": +// ["com.amazon.rum.http_event"],"event_details":{"response":{"status":[{"numeric":[">=",500,"<=",599]}]}}} +// } // // For custom metrics, the following validation rules apply: // - The namespace can't be omitted and can't be AWS/RUM . You can use the @@ -398,7 +419,7 @@ type MetricDefinitionRequest struct { // - '{ "event_type": ["com.amazon.rum.performance_navigation_event"], // "metadata": { "browserName": [ "Chrome", "Safari" ], "countryCode": [ "US" ] }, // "event_details": { "duration": [{ "numeric": [ ">=", 2000, "<", 8000 ] }] } }' - // If the metrics destination' is CloudWatch and the event also matches a value in + // If the metrics destination is CloudWatch and the event also matches a value in // DimensionKeys , then the metric is published with the specified dimensions. EventPattern *string @@ -414,9 +435,9 @@ type MetricDefinitionRequest struct { // The field within the event object that the metric value is sourced from. If you // omit this field, a hardcoded value of 1 is pushed as the metric value. This is - // useful if you just want to count the number of events that the filter catches. - // If this metric is sent to CloudWatch Evidently, this field will be passed to - // Evidently raw and Evidently will handle data extraction from the event. + // useful if you want to count the number of events that the filter catches. If + // this metric is sent to CloudWatch Evidently, this field will be passed to + // Evidently raw. Evidently will handle data extraction from the event. ValueKey *string noSmithyDocumentSerde