

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

# AWS::APS::Scraper
<a name="aws-resource-aps-scraper"></a>

A scraper is a fully-managed agentless collector that discovers and pulls metrics automatically. A scraper pulls metrics from Prometheus-compatible sources within an Amazon EKS cluster, and sends them to your Amazon Managed Service for Prometheus workspace. Scrapers are flexible. You can configure the scraper to control what metrics are collected, the frequency of collection, what transformations are applied to the metrics, and more.

An IAM role will be created for you that Amazon Managed Service for Prometheus uses to access the metrics in your cluster. You must configure this role with a policy that allows it to scrape metrics from your cluster. For more information, see [Configuring your Amazon EKS cluster](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html#AMP-collector-eks-setup) in the *Amazon Managed Service for Prometheus User Guide*.

The `scrapeConfiguration` parameter contains the YAML configuration for the scraper.

**Note**  
For more information about collectors, including what metrics are collected, and how to configure the scraper, see [Using an AWS managed collector](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html) in the *Amazon Managed Service for Prometheus User Guide*.

## Syntax
<a name="aws-resource-aps-scraper-syntax"></a>

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

### JSON
<a name="aws-resource-aps-scraper-syntax.json"></a>

```
{
  "Type" : "AWS::APS::Scraper",
  "Properties" : {
      "[Alias](#cfn-aps-scraper-alias)" : String,
      "[Destination](#cfn-aps-scraper-destination)" : Destination,
      "[RoleConfiguration](#cfn-aps-scraper-roleconfiguration)" : RoleConfiguration,
      "[ScrapeConfiguration](#cfn-aps-scraper-scrapeconfiguration)" : ScrapeConfiguration,
      "[ScraperLoggingConfiguration](#cfn-aps-scraper-scraperloggingconfiguration)" : ScraperLoggingConfiguration,
      "[Source](#cfn-aps-scraper-source)" : Source,
      "[Tags](#cfn-aps-scraper-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-aps-scraper-syntax.yaml"></a>

```
Type: AWS::APS::Scraper
Properties:
  [Alias](#cfn-aps-scraper-alias): String
  [Destination](#cfn-aps-scraper-destination): 
    Destination
  [RoleConfiguration](#cfn-aps-scraper-roleconfiguration): 
    RoleConfiguration
  [ScrapeConfiguration](#cfn-aps-scraper-scrapeconfiguration): 
    ScrapeConfiguration
  [ScraperLoggingConfiguration](#cfn-aps-scraper-scraperloggingconfiguration): 
    ScraperLoggingConfiguration
  [Source](#cfn-aps-scraper-source): 
    Source
  [Tags](#cfn-aps-scraper-tags): 
    - Tag
```

## Properties
<a name="aws-resource-aps-scraper-properties"></a>

`Alias`  <a name="cfn-aps-scraper-alias"></a>
An optional user-assigned scraper alias.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9A-Za-z][-.0-9A-Z_a-z]*$`  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Destination`  <a name="cfn-aps-scraper-destination"></a>
The Amazon Managed Service for Prometheus workspace the scraper sends metrics to.  
*Required*: Yes  
*Type*: [Destination](aws-properties-aps-scraper-destination.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleConfiguration`  <a name="cfn-aps-scraper-roleconfiguration"></a>
The role configuration in an Amazon Managed Service for Prometheus scraper.  
*Required*: No  
*Type*: [RoleConfiguration](aws-properties-aps-scraper-roleconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScrapeConfiguration`  <a name="cfn-aps-scraper-scrapeconfiguration"></a>
The configuration in use by the scraper.  
*Required*: Yes  
*Type*: [ScrapeConfiguration](aws-properties-aps-scraper-scrapeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScraperLoggingConfiguration`  <a name="cfn-aps-scraper-scraperloggingconfiguration"></a>
The definition of logging configuration in an Amazon Managed Service for Prometheus workspace.  
*Required*: No  
*Type*: [ScraperLoggingConfiguration](aws-properties-aps-scraper-scraperloggingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Source`  <a name="cfn-aps-scraper-source"></a>
The Amazon EKS cluster from which the scraper collects metrics.  
*Required*: Yes  
*Type*: [Source](aws-properties-aps-scraper-source.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-aps-scraper-tags"></a>
(Optional) The list of tag keys and values associated with the scraper.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-aps-scraper-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-aps-scraper-return-values"></a>

### Ref
<a name="aws-resource-aps-scraper-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the resource name. For example:

 `{ "Ref": "Id" }` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-aps-scraper-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-aps-scraper-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the scraper. For example, `arn:aws:aps:<region>:123456798012:scraper/s-example1-1234-abcd-5678-ef9012abcd34`.

`RoleArn`  <a name="RoleArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the IAM role that provides permissions for the scraper to discover and collect metrics on your behalf.  
For example, `arn:aws:iam::123456789012:role/service-role/AmazonGrafanaServiceRole-12example`.

`ScraperId`  <a name="ScraperId-fn::getatt"></a>
The ID of the scraper. For example, `s-example1-1234-abcd-5678-ef9012abcd34`.

## Examples
<a name="aws-resource-aps-scraper--examples"></a>

### Amazon Managed Service for Prometheus scraper example
<a name="aws-resource-aps-scraper--examples--Amazon_Managed_Service_for_Prometheus_scraper_example"></a>

The following example creates a scraper, showing how to pass in configuration. You must replace values in braces (`{}`) with values that match your system.

#### YAML
<a name="aws-resource-aps-scraper--examples--Amazon_Managed_Service_for_Prometheus_scraper_example--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09 Resources: Scraper: Type:
                AWS::APS::Scraper UpdateReplacePolicy: Retain DeletionPolicy: Delete Properties:
                Alias: "Scraper-Test" Source: EksConfiguration: ClusterArn:
                "arn:aws:eks:{region}:{account-id}:cluster/{cluster-name}" SecurityGroupIds: -
                "sg-{security-group-id}" SubnetIds: - "subnet-{subnet-id-1}" -
                "subnet-{subnet-id-2}" Destination: AmpConfiguration: WorkspaceArn:
                "arn:aws:aps:{region}:{account-id}:workspace/ws-{workspace-id}" ScrapeConfiguration:
                ConfigurationBlob: "global:\n scrape_interval: 30s\n # external_labels:\n #
                clusterArn: {cluster-arn}\nscrape_configs:\n # pod metrics\n - job_name:
                pod_exporter\n kubernetes_sd_configs:\n - role: pod\n # container metrics\n -
                job_name: cadvisor\n scheme: https\n authorization:\n credentials_file:
                /var/run/secrets/kubernetes.io/serviceaccount/token\n kubernetes_sd_configs:\n -
                role: node\n relabel_configs:\n - action: labelmap\n regex:
                __meta_kubernetes_node_label_(.+)\n - replacement: kubernetes.default.svc:443\n
                target_label: __address__\n - source_labels: [__meta_kubernetes_node_name]\n regex:
                (.+)\n target_label: __metrics_path__\n replacement:
                /api/v1/nodes/$1/proxy/metrics/cadvisor\n # apiserver metrics\n - bearer_token_file:
                /var/run/secrets/kubernetes.io/serviceaccount/token\n job_name:
                kubernetes-apiservers\n kubernetes_sd_configs:\n - role: endpoints\n
                relabel_configs:\n - action: keep\n regex: default;kubernetes;https\n
                source_labels:\n - __meta_kubernetes_namespace\n - __meta_kubernetes_service_name\n
                - __meta_kubernetes_endpoint_port_name\n scheme: https\n # kube proxy metrics\n -
                job_name: kube-proxy\n honor_labels: true\n kubernetes_sd_configs:\n - role: pod\n
                relabel_configs:\n - action: keep\n source_labels:\n - __meta_kubernetes_namespace\n
                - __meta_kubernetes_pod_name\n separator: '/'\n regex: 'kube-system/kube-proxy.+'\n
                - source_labels:\n - __address__\n action: replace\n target_label: __address__\n
                regex: (.+?)(\\:\\d+)?\n replacement: $1:10249" Tags: - Key: "BusinessPurpose"
                Value: "Testing"
```

#### JSON
<a name="aws-resource-aps-scraper--examples--Amazon_Managed_Service_for_Prometheus_scraper_example--json"></a>

```
{ "CreateInputs": { "Alias": "Scraper-Test",
                "ScrapeConfiguration": { "ConfigurationBlob": "global:\n scrape_interval: 30s\n #
                external_labels:\n # clusterArn: {cluster-arn}\nscrape_configs:\n # pod metrics\n -
                job_name: pod_exporter\n kubernetes_sd_configs:\n - role: pod\n # container
                metrics\n - job_name: cadvisor\n scheme: https\n authorization:\n credentials_file:
                /var/run/secrets/kubernetes.io/serviceaccount/token\n kubernetes_sd_configs:\n -
                role: node\n relabel_configs:\n - action: labelmap\n regex:
                __meta_kubernetes_node_label_(.+)\n - replacement: kubernetes.default.svc:443\n
                target_label: __address__\n - source_labels: [__meta_kubernetes_node_name]\n regex:
                (.+)\n target_label: __metrics_path__\n replacement:
                /api/v1/nodes/$1/proxy/metrics/cadvisor\n # apiserver metrics\n - bearer_token_file:
                /var/run/secrets/kubernetes.io/serviceaccount/token\n job_name:
                kubernetes-apiservers\n kubernetes_sd_configs:\n - role: endpoints\n
                relabel_configs:\n - action: keep\n regex: default;kubernetes;https\n
                source_labels:\n - __meta_kubernetes_namespace\n - __meta_kubernetes_service_name\n
                - __meta_kubernetes_endpoint_port_name\n scheme: https\n # kube proxy metrics\n -
                job_name: kube-proxy\n honor_labels: true\n kubernetes_sd_configs:\n - role: pod\n
                relabel_configs:\n - action: keep\n source_labels:\n - __meta_kubernetes_namespace\n
                - __meta_kubernetes_pod_name\n separator: '/'\n regex: 'kube-system/kube-proxy.+'\n
                - source_labels:\n - __address__\n action: replace\n target_label: __address__\n
                regex: (.+?)(\\:\\d+)?\n replacement: $1:10249" }, "Source": { "EksConfiguration": {
                "ClusterArn": "arn:aws:eks:{region}:{account-id}:cluster/{cluster-name}",
                "SecurityGroupIds": [ "sg-{security-group-id}" ], "SubnetIds": [
                "subnet-{subnet-id-1}", "subnet-{subnet-id-2}" ] } }, "Destination": {
                "AmpConfiguration": { "WorkspaceArn":
                "arn:aws:aps:{region}:{account-id}:workspace/ws-{workspace-id}" } }, "Tags": [ {
                "Key": "BusinessPurpose", "Value": "Testing" } ] }, "PatchInputs": [] }
```

# AWS::APS::Scraper AmpConfiguration
<a name="aws-properties-aps-scraper-ampconfiguration"></a>

The `AmpConfiguration` structure defines the Amazon Managed Service for Prometheus instance a scraper should send metrics to.

## Syntax
<a name="aws-properties-aps-scraper-ampconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-ampconfiguration-syntax.json"></a>

```
{
  "[WorkspaceArn](#cfn-aps-scraper-ampconfiguration-workspacearn)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-ampconfiguration-syntax.yaml"></a>

```
  [WorkspaceArn](#cfn-aps-scraper-ampconfiguration-workspacearn): String
```

## Properties
<a name="aws-properties-aps-scraper-ampconfiguration-properties"></a>

`WorkspaceArn`  <a name="cfn-aps-scraper-ampconfiguration-workspacearn"></a>
ARN of the Amazon Managed Service for Prometheus workspace.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws[-a-z]*:aps:[-a-z0-9]+:[0-9]{12}:workspace/.+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper CloudWatchLogDestination
<a name="aws-properties-aps-scraper-cloudwatchlogdestination"></a>

<a name="aws-properties-aps-scraper-cloudwatchlogdestination-description"></a>The `CloudWatchLogDestination` property type specifies Property description not available. for an [AWS::APS::Scraper](aws-resource-aps-scraper.md).

## Syntax
<a name="aws-properties-aps-scraper-cloudwatchlogdestination-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-cloudwatchlogdestination-syntax.json"></a>

```
{
  "[LogGroupArn](#cfn-aps-scraper-cloudwatchlogdestination-loggrouparn)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-cloudwatchlogdestination-syntax.yaml"></a>

```
  [LogGroupArn](#cfn-aps-scraper-cloudwatchlogdestination-loggrouparn): String
```

## Properties
<a name="aws-properties-aps-scraper-cloudwatchlogdestination-properties"></a>

`LogGroupArn`  <a name="cfn-aps-scraper-cloudwatchlogdestination-loggrouparn"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `512`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper ComponentConfig
<a name="aws-properties-aps-scraper-componentconfig"></a>

Configuration settings for a scraper component.

## Syntax
<a name="aws-properties-aps-scraper-componentconfig-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-componentconfig-syntax.json"></a>

```
{
  "[Options](#cfn-aps-scraper-componentconfig-options)" : {Key: Value, ...}
}
```

### YAML
<a name="aws-properties-aps-scraper-componentconfig-syntax.yaml"></a>

```
  [Options](#cfn-aps-scraper-componentconfig-options): 
    Key: Value
```

## Properties
<a name="aws-properties-aps-scraper-componentconfig-properties"></a>

`Options`  <a name="cfn-aps-scraper-componentconfig-options"></a>
Configuration options for the scraper component.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[A-Za-z0-9]+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper Destination
<a name="aws-properties-aps-scraper-destination"></a>

Where to send the metrics from a scraper.

## Syntax
<a name="aws-properties-aps-scraper-destination-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-destination-syntax.json"></a>

```
{
  "[AmpConfiguration](#cfn-aps-scraper-destination-ampconfiguration)" : AmpConfiguration
}
```

### YAML
<a name="aws-properties-aps-scraper-destination-syntax.yaml"></a>

```
  [AmpConfiguration](#cfn-aps-scraper-destination-ampconfiguration): 
    AmpConfiguration
```

## Properties
<a name="aws-properties-aps-scraper-destination-properties"></a>

`AmpConfiguration`  <a name="cfn-aps-scraper-destination-ampconfiguration"></a>
The Amazon Managed Service for Prometheus workspace to send metrics to.  
*Required*: No  
*Type*: [AmpConfiguration](aws-properties-aps-scraper-ampconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper EksConfiguration
<a name="aws-properties-aps-scraper-eksconfiguration"></a>

The `EksConfiguration` structure describes the connection to the Amazon EKS cluster from which a scraper collects metrics.

## Syntax
<a name="aws-properties-aps-scraper-eksconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-eksconfiguration-syntax.json"></a>

```
{
  "[ClusterArn](#cfn-aps-scraper-eksconfiguration-clusterarn)" : String,
  "[SecurityGroupIds](#cfn-aps-scraper-eksconfiguration-securitygroupids)" : [ String, ... ],
  "[SubnetIds](#cfn-aps-scraper-eksconfiguration-subnetids)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-aps-scraper-eksconfiguration-syntax.yaml"></a>

```
  [ClusterArn](#cfn-aps-scraper-eksconfiguration-clusterarn): String
  [SecurityGroupIds](#cfn-aps-scraper-eksconfiguration-securitygroupids): 
    - String
  [SubnetIds](#cfn-aps-scraper-eksconfiguration-subnetids): 
    - String
```

## Properties
<a name="aws-properties-aps-scraper-eksconfiguration-properties"></a>

`ClusterArn`  <a name="cfn-aps-scraper-eksconfiguration-clusterarn"></a>
ARN of the Amazon EKS cluster.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws[-a-z]*:eks:[-a-z0-9]+:[0-9]{12}:cluster/.+$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SecurityGroupIds`  <a name="cfn-aps-scraper-eksconfiguration-securitygroupids"></a>
A list of the security group IDs for the Amazon EKS cluster VPC configuration.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SubnetIds`  <a name="cfn-aps-scraper-eksconfiguration-subnetids"></a>
A list of subnet IDs for the Amazon EKS cluster VPC configuration.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::APS::Scraper RoleConfiguration
<a name="aws-properties-aps-scraper-roleconfiguration"></a>

The role configuration in an Amazon Managed Service for Prometheus scraper.

## Syntax
<a name="aws-properties-aps-scraper-roleconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-roleconfiguration-syntax.json"></a>

```
{
  "[SourceRoleArn](#cfn-aps-scraper-roleconfiguration-sourcerolearn)" : String,
  "[TargetRoleArn](#cfn-aps-scraper-roleconfiguration-targetrolearn)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-roleconfiguration-syntax.yaml"></a>

```
  [SourceRoleArn](#cfn-aps-scraper-roleconfiguration-sourcerolearn): String
  [TargetRoleArn](#cfn-aps-scraper-roleconfiguration-targetrolearn): String
```

## Properties
<a name="aws-properties-aps-scraper-roleconfiguration-properties"></a>

`SourceRoleArn`  <a name="cfn-aps-scraper-roleconfiguration-sourcerolearn"></a>
The ARN of the source role.   
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetRoleArn`  <a name="cfn-aps-scraper-roleconfiguration-targetrolearn"></a>
The ARN of the target role.   
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper ScrapeConfiguration
<a name="aws-properties-aps-scraper-scrapeconfiguration"></a>

A scrape configuration for a scraper, base 64 encoded. For more information, see [Scraper configuration](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html#AMP-collector-configuration) in the *Amazon Managed Service for Prometheus User Guide*.

## Syntax
<a name="aws-properties-aps-scraper-scrapeconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-scrapeconfiguration-syntax.json"></a>

```
{
  "[ConfigurationBlob](#cfn-aps-scraper-scrapeconfiguration-configurationblob)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-scrapeconfiguration-syntax.yaml"></a>

```
  [ConfigurationBlob](#cfn-aps-scraper-scrapeconfiguration-configurationblob): String
```

## Properties
<a name="aws-properties-aps-scraper-scrapeconfiguration-properties"></a>

`ConfigurationBlob`  <a name="cfn-aps-scraper-scrapeconfiguration-configurationblob"></a>
The base 64 encoded scrape configuration file.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper ScraperComponent
<a name="aws-properties-aps-scraper-scrapercomponent"></a>

A component of a Amazon Managed Service for Prometheus scraper that can be configured for logging.

## Syntax
<a name="aws-properties-aps-scraper-scrapercomponent-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-scrapercomponent-syntax.json"></a>

```
{
  "[Config](#cfn-aps-scraper-scrapercomponent-config)" : ComponentConfig,
  "[Type](#cfn-aps-scraper-scrapercomponent-type)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-scrapercomponent-syntax.yaml"></a>

```
  [Config](#cfn-aps-scraper-scrapercomponent-config): 
    ComponentConfig
  [Type](#cfn-aps-scraper-scrapercomponent-type): String
```

## Properties
<a name="aws-properties-aps-scraper-scrapercomponent-properties"></a>

`Config`  <a name="cfn-aps-scraper-scrapercomponent-config"></a>
The configuration settings for the scraper component.  
*Required*: No  
*Type*: [ComponentConfig](aws-properties-aps-scraper-componentconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-aps-scraper-scrapercomponent-type"></a>
The type of the scraper component.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SERVICE_DISCOVERY | COLLECTOR | EXPORTER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper ScraperLoggingConfiguration
<a name="aws-properties-aps-scraper-scraperloggingconfiguration"></a>

<a name="aws-properties-aps-scraper-scraperloggingconfiguration-description"></a>The `ScraperLoggingConfiguration` property type specifies Property description not available. for an [AWS::APS::Scraper](aws-resource-aps-scraper.md).

## Syntax
<a name="aws-properties-aps-scraper-scraperloggingconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-scraperloggingconfiguration-syntax.json"></a>

```
{
  "[LoggingDestination](#cfn-aps-scraper-scraperloggingconfiguration-loggingdestination)" : ScraperLoggingDestination,
  "[ScraperComponents](#cfn-aps-scraper-scraperloggingconfiguration-scrapercomponents)" : [ ScraperComponent, ... ]
}
```

### YAML
<a name="aws-properties-aps-scraper-scraperloggingconfiguration-syntax.yaml"></a>

```
  [LoggingDestination](#cfn-aps-scraper-scraperloggingconfiguration-loggingdestination): 
    ScraperLoggingDestination
  [ScraperComponents](#cfn-aps-scraper-scraperloggingconfiguration-scrapercomponents): 
    - ScraperComponent
```

## Properties
<a name="aws-properties-aps-scraper-scraperloggingconfiguration-properties"></a>

`LoggingDestination`  <a name="cfn-aps-scraper-scraperloggingconfiguration-loggingdestination"></a>
Property description not available.  
*Required*: Yes  
*Type*: [ScraperLoggingDestination](aws-properties-aps-scraper-scraperloggingdestination.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScraperComponents`  <a name="cfn-aps-scraper-scraperloggingconfiguration-scrapercomponents"></a>
Property description not available.  
*Required*: Yes  
*Type*: Array of [ScraperComponent](aws-properties-aps-scraper-scrapercomponent.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper ScraperLoggingDestination
<a name="aws-properties-aps-scraper-scraperloggingdestination"></a>

The destination where scraper logs are sent.

## Syntax
<a name="aws-properties-aps-scraper-scraperloggingdestination-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-scraperloggingdestination-syntax.json"></a>

```
{
  "[CloudWatchLogs](#cfn-aps-scraper-scraperloggingdestination-cloudwatchlogs)" : CloudWatchLogDestination
}
```

### YAML
<a name="aws-properties-aps-scraper-scraperloggingdestination-syntax.yaml"></a>

```
  [CloudWatchLogs](#cfn-aps-scraper-scraperloggingdestination-cloudwatchlogs): 
    CloudWatchLogDestination
```

## Properties
<a name="aws-properties-aps-scraper-scraperloggingdestination-properties"></a>

`CloudWatchLogs`  <a name="cfn-aps-scraper-scraperloggingdestination-cloudwatchlogs"></a>
The CloudWatch Logs configuration for the scraper logging destination.  
*Required*: No  
*Type*: [CloudWatchLogDestination](aws-properties-aps-scraper-cloudwatchlogdestination.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper Source
<a name="aws-properties-aps-scraper-source"></a>

The source of collected metrics for a scraper.

## Syntax
<a name="aws-properties-aps-scraper-source-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-source-syntax.json"></a>

```
{
  "[EksConfiguration](#cfn-aps-scraper-source-eksconfiguration)" : EksConfiguration,
  "[VpcConfiguration](#cfn-aps-scraper-source-vpcconfiguration)" : VpcConfiguration
}
```

### YAML
<a name="aws-properties-aps-scraper-source-syntax.yaml"></a>

```
  [EksConfiguration](#cfn-aps-scraper-source-eksconfiguration): 
    EksConfiguration
  [VpcConfiguration](#cfn-aps-scraper-source-vpcconfiguration): 
    VpcConfiguration
```

## Properties
<a name="aws-properties-aps-scraper-source-properties"></a>

`EksConfiguration`  <a name="cfn-aps-scraper-source-eksconfiguration"></a>
The Amazon EKS cluster from which a scraper collects metrics.  
*Required*: No  
*Type*: [EksConfiguration](aws-properties-aps-scraper-eksconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VpcConfiguration`  <a name="cfn-aps-scraper-source-vpcconfiguration"></a>
Property description not available.  
*Required*: No  
*Type*: [VpcConfiguration](aws-properties-aps-scraper-vpcconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::APS::Scraper Tag
<a name="aws-properties-aps-scraper-tag"></a>

A tag associated with a resource.

## Syntax
<a name="aws-properties-aps-scraper-tag-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-tag-syntax.json"></a>

```
{
  "[Key](#cfn-aps-scraper-tag-key)" : String,
  "[Value](#cfn-aps-scraper-tag-value)" : String
}
```

### YAML
<a name="aws-properties-aps-scraper-tag-syntax.yaml"></a>

```
  [Key](#cfn-aps-scraper-tag-key): String
  [Value](#cfn-aps-scraper-tag-value): String
```

## Properties
<a name="aws-properties-aps-scraper-tag-properties"></a>

`Key`  <a name="cfn-aps-scraper-tag-key"></a>
The key of the tag. Must not begin with `aws:`.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-aps-scraper-tag-value"></a>
The value of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::APS::Scraper VpcConfiguration
<a name="aws-properties-aps-scraper-vpcconfiguration"></a>

<a name="aws-properties-aps-scraper-vpcconfiguration-description"></a>The `VpcConfiguration` property type specifies Property description not available. for an [AWS::APS::Scraper](aws-resource-aps-scraper.md).

## Syntax
<a name="aws-properties-aps-scraper-vpcconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-aps-scraper-vpcconfiguration-syntax.json"></a>

```
{
  "[SecurityGroupIds](#cfn-aps-scraper-vpcconfiguration-securitygroupids)" : [ String, ... ],
  "[SubnetIds](#cfn-aps-scraper-vpcconfiguration-subnetids)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-aps-scraper-vpcconfiguration-syntax.yaml"></a>

```
  [SecurityGroupIds](#cfn-aps-scraper-vpcconfiguration-securitygroupids): 
    - String
  [SubnetIds](#cfn-aps-scraper-vpcconfiguration-subnetids): 
    - String
```

## Properties
<a name="aws-properties-aps-scraper-vpcconfiguration-properties"></a>

`SecurityGroupIds`  <a name="cfn-aps-scraper-vpcconfiguration-securitygroupids"></a>
Property description not available.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SubnetIds`  <a name="cfn-aps-scraper-vpcconfiguration-subnetids"></a>
Property description not available.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)