# Fastly

### **Fastly-loggströmning till S3**

För att skicka realtidsåtkomstloggar från Fastly till en Amazon S3-bucket kan du konfigurera **Fastly-loggströmning** med Amazon S3 som destination. Nedan finns de dokumenterade stegen som krävs för att konfigurera realtidsströmning till en Netacea-värd S3-bucket, med hjälp av Fastlys loggningsfunktionalitet och ett anpassat loggformat som uppfyller Netaceas krav.

### **Förutsättningar**

För att framgångsrikt strömma webbtrafikloggar till Netacea, säkerställ följande:

* Du har ett aktivt Fastly-konto med åtkomst till Fastly Control Panel.
* En Fastly-tjänst är tillgänglig och konfigurerad för att hantera din produktionstrafik.
* Du har fått de nödvändiga AWS S3-bucketdetaljerna (bucketnamn, region, sökväg och autentiseringsuppgifter) från Netacea. Dessa finns [här](https://netacea.gitbook.io/portal-docs/user-guides-and-videos/portal-setup-and-log-shipping-guide).
* Du är medveten om de [minsta datamängdsfält](#netacea-minimum-dataset) som krävs av Netacea för logganalys.

### Skicka data: Realtidsströmning

Detta alternativ loggar varje förfrågan och levererar loggar i omgångar. Detta är konfigurerbart för att passa kraven för POV.

### **Implementeringssteg**

1. Logga in på [Fastly control panel](https://manage.fastly.com/).
2. Från [startsidan](https://manage.fastly.com/home), välj lämplig tjänst. Du kan använda sökrutan för att söka efter ID, namn eller domän.
3. Klicka på **Edit configuration** och välj sedan alternativet att klona den aktiva versionen.

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-6cbf08792a7033c58fce6d5b179a35dc20c84ad9%2Fimage%20(119).png?alt=media" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-f00f50dce3b60448c39d99de0aa7c19a8881d494%2Fimage%20(120).png?alt=media" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Alla konfigurationsändringar nedan kommer att göras på den **nyligen klonade versionen.**
{% endhint %}

### **Konfiguration av loggströmning**

1. Navigera till området **Logging**.
2. Klicka på knappen **'Create endpoint'** för Amazon S3

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-c56c044e55e2825a508884b63243b5dc79d9ed45%2Fimage%20(121).png?alt=media" alt=""><figcaption></figcaption></figure>

3. Ange detaljerna från tabellen nedan:

XLOCKX109![](https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-f00f50dce3b60448c39d99de0aa7c19a8881d494%2Fimage%20\(120\).png?alt=media)110XLOCKX

<table><thead><tr><th width="196">Fält</th><th>Värde</th></tr></thead><tbody><tr><td>Name</td><td>Ange ett minnesvärt, läsbart namn för endpointen, såsom <strong>Netacea_Logging</strong></td></tr><tr><td>Placement</td><td>Format Version Default</td></tr><tr><td>Log Format</td><td>Klistra in <strong>Log Format</strong> som finns <a href="#log-format">här</a></td></tr><tr><td>Timestamp</td><td>Klistra in <strong>Timestamp Format</strong> som finns <a href="#timestamp-format">här</a></td></tr><tr><td>Bucket Name</td><td>Namnet på Amazon S3-bucketen som tillhandahålls av Netacea i <a href="https://portal.netacea.com/">adminportalen</a></td></tr><tr><td>Domain</td><td>s3.eu-west-1.amazonaws.com</td></tr><tr><td>Access Method</td><td>Välj <strong>'User Credentials'</strong></td></tr><tr><td>Access Key</td><td>Kopiera från Netaceas <a href="https://portal.netacea.com/">adminportal</a></td></tr><tr><td>Secret Key</td><td>Kopiera från Netaceas <a href="https://portal.netacea.com/">adminportal</a></td></tr><tr><td>Period</td><td></td></tr></tbody></table>

4. Expandera sektionen **'Advanced options'** och tillämpa de specifika värdena som anges i tabellen nedan:

| Alternativ             | Värde    |
| ---------------------- | -------- |
| Path                   | /        |
| PGP Public Key         | Blank    |
| Select Log line Format | Blank    |
| Compression            | Gzip     |
| Redundancy Level       | Standard |
| ACL                    | None     |
| Server Side Encryption | None     |
| Maximum Bytes          | 0        |

5. Klicka på **'Create'** för att spara loggningsendpointen.

### Loggformat

{% code overflow="wrap" %}

```
{"@timestamp": "%{%Y-%m-%dT%H:%M:%S%z}t","bc_type": %{if(req.http.netacea_bctype_string, "%u0022" + json.escape(req.http.netacea_bctype_string) + "%u0022", "null")}V,"bytes_sent": "%B","cookie_session_status": %{if(req.http.x-netacea:cookie_session_status, "%u0022" + json.escape(req.http.x-netacea:cookie_session_status) + "%u0022", "null")}V,"client": "%{json.escape(client.ip)}V","domain": %{if(req.http.host, "%u0022" + json.escape(req.http.host) + "%u0022", "null")}V,"integration_mode": %{"%u0022" + json.escape(req.http.x-netacea:integration_mode) + "%u0022"}V,"integration_type": %{if(req.http.integration_type, "%u0022" + json.escape(req.http.integration_type) + "%u0022", "null")}V,"integration_version": %{if(req.http.integration_version, "%u0022" + json.escape(req.http.integration_version) + "%u0022", "null")}V,"method": "%{json.escape(req.method)}V","path": "%{json.escape(req.url.path)}V","mit_svc_latency":%{if(req.http.x-netacea:mit_svc_latency, "%u0022" + json.escape(req.http.x-netacea:mit_svc_latency) + "%u0022", "0")}V,"mit_status":%{if(req.http.x-netacea:mit_status, "%u0022" + json.escape(req.http.x-netacea:mit_status) + "%u0022", "0")}V,"protocol": "%{json.escape(req.proto)}V","query": "%{json.escape(req.url.qs)}V","referrer": %{if(req.http.referer, "%u0022" + json.escape(req.http.referer) + "%u0022", "null")}V,"request_time": %{time.elapsed}V,"status": "%{json.escape(resp.status)}V","user_agent": %{if(req.http.user-agent, "%u0022" + json.escape(req.http.user-agent) + "%u0022", "null")}V,"user_id": %{if(req.http.x-netacea-userid, "%u0022" + json.escape(req.http.x-netacea-userid) + "%u0022", "null")}V,"client_ja3_md5": %{if(tls.client.ja3_md5, "%u0022" + json.escape(tls.client.ja3_md5) + "%u0022", "null")}V,"x_forwarded_for": %{if(req.http.X-Forwarded-For, "%u0022" + json.escape(req.http.X-Forwarded-For) + "%u0022", "null")}V}
```

{% endcode %}

### Tidsstämpelformat

```
%Y-%m-%dT%H:%M:%S.000
```

### Netaceas minimala datamängd

Ovanstående loggformat gör det möjligt för Netacea att samla in följande minimala datamängd för analys

<table><thead><tr><th width="215">Obligatoriska fält</th><th>Beskrivning</th></tr></thead><tbody><tr><td>Timestamp</td><td>Tidpunkten då förfrågan mottogs</td></tr><tr><td>IP Address</td><td>IP-adressen från vilken förfrågan gjordes</td></tr><tr><td>User Agent</td><td>User agent-strängen som skickades i headern av klienten</td></tr><tr><td>Method</td><td>HTTP-metoden för förfrågan</td></tr><tr><td>Path</td><td>Sökvägen till den begärda resursen</td></tr><tr><td>Query</td><td>Query-strängen för förfrågan</td></tr><tr><td>Status</td><td>HTTP-statuskoden som returnerades av servern</td></tr><tr><td>Referrer</td><td>Webbsidan som användaren följde en länk från</td></tr><tr><td>Bytes Sent</td><td>Antal bytes som skickades som del av serverns svars</td></tr><tr><td>Client JA3</td><td>Klientens JA3-fingerprint</td></tr><tr><td>X-Forwarded-For*</td><td>Ursprunglig IP-adress för en klientförfrågan</td></tr><tr><td>Host</td><td>Destinationsvärden för förfrågan</td></tr><tr><td>Protocol</td><td>Protokollet för förfrågan</td></tr><tr><td>Request Time</td><td>Den totala tiden det tog att behandla förfrågan</td></tr></tbody></table>

\* Användbart när proxyer finns i trafiklinjen från klient > ursprung

### Loggningsöverväganden

Vid konfiguration av Fastly-loggskickning skickas som standard alla förfrågningar, inklusive statiskt och mediainnehåll, till S3-bucketen. Denna data krävs inte av Netacea. För att lösa detta behöver vi lägga till ett loggningsvillkor till tjänsten och koppla det till loggningstjänsten som har skapats enligt stegen ovan.

#### Lägg till ett loggningsvillkor

1. Navigera till den nyligen skapade loggningsendpointen:

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-b869549315f09db6c5160d8bdc5195db79ee2cc8%2Fimage%20(122).png?alt=media" alt=""><figcaption></figcaption></figure>

2. Klicka på **'Create a new response condition'**

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-f9b1247afd61266eff997a4775fbd11e8d47dccb%2Fimage%20(123).png?alt=media" alt=""><figcaption></figcaption></figure>

3. Ange följande detaljer i popup-fönstret

| Fält     | Värde                                                                                     |
| -------- | ----------------------------------------------------------------------------------------- |
| Name     | t.ex. Netacea\_Log\_Visit                                                                 |
| Apply If | (req.url !\~ "/media/" && req.url !\~ "/static/") && fastly.ff.visits\_this\_service == 0 |
| Priority | 10                                                                                        |

{% hint style="warning" %}
Expandera sektionen **'Advanced option'** för att ange Priority
{% endhint %}

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-d98d1184fca3eb81e9f1b659d44ea50f6ecbebf1%2Fimage%20(124).png?alt=media" alt=""><figcaption></figcaption></figure>

4. Klicka på **'Save and apply'**

### Slutförande

* Kontrollera konfigurationen för eventuella felmeddelanden eller varningar.
* När du har bekräftat, distribuera dina ändringar genom att klicka på **Activate**.

<figure><img src="https://1757243805-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYGUMNWETAzwSHwJ2JpW3%2Fuploads%2Fgit-blob-ca57d8a8f917a2b559d8ff6bdc29885177aeeb27%2Fimage%20(126).png?alt=media" alt=""><figcaption></figcaption></figure>

Din Fastly-loggströmningskonfiguration är nu aktiv och bör skicka data till Netaceas S3-bucket.

### Slutliga steg

När logglevererans är aktiv, **meddela din Netacea Solutions Engineer**. Detta gör det möjligt för oss att:

* Bekräfta mottagande av data
* Validera datamängdens format och fullständighet
* Påbörja analys när en tillräcklig mängd data har samlats in

Om du behöver support under installationen finns Netacea SE-teamet här för att hjälpa till — tveka inte att höra av dig.


---

# 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.netacea.com/se/fastly.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.
