

This is the new *Amazon CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [Amazon CloudFormation User Guide](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::WAFv2::WebACL VisibilityConfig
<a name="aws-properties-wafv2-webacl-visibilityconfig"></a>

Defines and enables Amazon CloudWatch metrics and web request sample collection. 

## Syntax
<a name="aws-properties-wafv2-webacl-visibilityconfig-syntax"></a>

To declare this entity in your Amazon CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-wafv2-webacl-visibilityconfig-syntax.json"></a>

```
{
  "[CloudWatchMetricsEnabled](#cfn-wafv2-webacl-visibilityconfig-cloudwatchmetricsenabled)" : Boolean,
  "[MetricName](#cfn-wafv2-webacl-visibilityconfig-metricname)" : String,
  "[SampledRequestsEnabled](#cfn-wafv2-webacl-visibilityconfig-sampledrequestsenabled)" : Boolean
}
```

### YAML
<a name="aws-properties-wafv2-webacl-visibilityconfig-syntax.yaml"></a>

```
  [CloudWatchMetricsEnabled](#cfn-wafv2-webacl-visibilityconfig-cloudwatchmetricsenabled): Boolean
  [MetricName](#cfn-wafv2-webacl-visibilityconfig-metricname): String
  [SampledRequestsEnabled](#cfn-wafv2-webacl-visibilityconfig-sampledrequestsenabled): Boolean
```

## Properties
<a name="aws-properties-wafv2-webacl-visibilityconfig-properties"></a>

`CloudWatchMetricsEnabled`  <a name="cfn-wafv2-webacl-visibilityconfig-cloudwatchmetricsenabled"></a>
Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see [Amazon WAF Metrics](https://docs.amazonaws.cn/waf/latest/developerguide/monitoring-cloudwatch.html#waf-metrics) in the *Amazon WAF Developer Guide*.  
For web ACLs, the metrics are for web requests that have the web ACL default action applied. Amazon WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see [The web ACL default action](https://docs.amazonaws.cn/waf/latest/developerguide/web-acl-default-action.html) in the *Amazon WAF Developer Guide*.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MetricName`  <a name="cfn-wafv2-webacl-visibilityconfig-metricname"></a>
A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and \$1 (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for Amazon WAF, for example `All` and `Default_Action`.   
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SampledRequestsEnabled`  <a name="cfn-wafv2-webacl-visibilityconfig-sampledrequestsenabled"></a>
Indicates whether Amazon WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the Amazon WAF console.   
If you configure data protection for the web ACL, the protection applies to the web ACL's sampled web request data.   
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. You can only exclude fields from request sampling by disabling sampling in the web ACL visibility configuration or by configuring data protection for the web ACL.
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)