# 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.&#x20;

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/w3RHlwxd3myAXUoHq29T" 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 %}
{% endstepper %}

### Need More Help?

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


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.getlimy.ai/limy-pixel/cdn-integration/amazon-cloudfront.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
