> For the complete documentation index, see [llms.txt](https://docs.getlimy.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.getlimy.ai/limy-pixel/cdn-integration/amazon-cloudfront.md).

# Amazon CloudFront

### Overview <a href="#overview" id="overview"></a>

This integration uses Amazon Data Firehose to deliver CloudFront logs directly to our Agent Monitor. Amazon Data Firehose (formerly Kinesis Data Firehose) is a fully managed AWS service for loading streaming data into a variety of destinations, including HTTP endpoints.

For additional details, refer to the[ AWS documentation](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html).

### Setup <a href="#configuration" id="configuration"></a>

{% stepper %}
{% step %}
Log into your AWS Console and head over to the Amazon Data Firehose section. This is where we'll create the pipeline that sends you to Limy.

<figure><img src="/files/nRUN33aIH6gtCRI5Eey4" alt=""><figcaption></figcaption></figure>

<br>
{% endstep %}

{% step %}
Click to create a new delivery stream and configure it with these settings:

* **Source:** Choose "Direct PUT"
* **Destination:** Select "HTTP Endpoint"\
  These settings tell Data Firehose to accept data directly and send it to an HTTP endpoint (which will be Limy's API).
* **Content encoding:** Choose "Disabled"

<figure><img src="/files/D5ijCCN37jZesgTaWzIe" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Now for the important part - connecting to Limy:

```
https://stream.getlimy.ai
```

**Authentication:** You'll need to provide your Limy key as the access key. We strongly recommend using AWS Secrets Manager to store this securely.

Create a secret in AWS Secrets Manager with this JSON structure:

```json
{ "api_key": "your_limy_api_key" }
```

{% hint style="warning" %}
I**mportant Settings:**\
**Backup S3 Bucket:**\
AWS requires you to specify an S3 bucket for failed deliveries. Create a new bucket or select an existing one - this is just for error cases.
{% endhint %}

<figure><img src="/files/VNd9WP4Q3GwaDJVy2gHQ" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Navigate to your CloudFront distribution in the AWS Console and click over to the "Logging" tab. Hit the "Add" button and choose "Kinesis Data Firehose" as your destination.

{% hint style="warning" %}
**Note:**

You might see it called "Kinesis Data Firehose" in CloudFront even though AWS renamed it to Amazon Data Firehose - they're the same thing.
{% endhint %}

<figure><img src="/files/0lxgE293e34S8VpqF4Cg" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
You'll be on the "Add standard logging destination" screen now. Pick the delivery stream you just created, then scroll down to "Additional settings - optional" and select these fields:

<figure><img src="/files/80oWGMcAinj6EHfttT7a" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/TN20RjGWDSGsMk7W4cDq" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/EBM7TVieKUAgZPN9jBAa" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/TN20RjGWDSGsMk7W4cDq" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/nLEABEF1UTldxNXJJm6V" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Under "Output format", select **JSON**. This ensures the data is structured properly for Limy to process.

<figure><img src="/files/w6mmEzoiinDMY2iz0x71" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Add the `LogDeliveryEnabled = true`  Tag

In order to enable the log delivery, the Kinesis firehose must have this tag included.

{% endstep %}
{% endstepper %}

### Need More Help?

* Contact `answers@limy.ai` for any further questions
