# Fastly

### **Fastlyn lokisuoratoisto S3:een**

Lähettääksesi reaaliaikaiset pääsylokit Fastlysta Amazon S3 -säilöön voit määrittää **Fastlyn lokisuoratoiston** käyttämällä Amazon S3:a kohteena. Alla on dokumentoidut vaiheet, jotka vaaditaan reaaliaikaisen suoratoiston määrittämiseen Netaicean isännöimään S3-säilöön Fastlyn lokitoiminnallisuuden ja mukautetun lokimuodon avulla, joka täyttää Netaicean vaatimukset.

### **Edellytykset**

Verkkoliikenteen lokien onnistuneeksi suoratoistamiseksi Netaiceaan varmista seuraavat asiat:

* Sinulla on aktiivinen Fastly-tili, jolla on pääsy Fastlyn hallintapaneeliin.
* Fastly-palvelu on käytettävissä ja määritetty käsittelemään tuotantoliikennettäsi.
* Olet saanut tarvittavat AWS S3 -säilötiedot (säilön nimi, alue, polku ja tunnistetiedot) Netaicealta. Nämä löytyvät [täältä](https://netacea.gitbook.io/portal-docs/user-guides-and-videos/portal-setup-and-log-shipping-guide).
* Tunnet [vähimmäistietojoukko](#netacea-minimum-dataset)-kentät, joita Netacea tarvitsee lokianalyysiin.

### Datan lähettäminen: Reaaliaikainen suoratoisto

Tämä vaihtoehto kirjaa jokaisen pyynnön ja toimittaa lokit erissä. Tämä on määritettävissä POV:n vaatimusten mukaisesti.

### **Toteutusvaiheet**

1. Kirjaudu sisään [Fastlyn hallintapaneeliin](https://manage.fastly.com/).
2. Valitse [Aloitussivulta](https://manage.fastly.com/home) sopiva palvelu. Voit käyttää hakukenttää hakeaksesi tunnuksen, nimen tai verkkotunnuksen perusteella.
3. Klikkaa **Muokkaa määritystä** ja valitse sitten vaihtoehto aktiivisen version kloonaamiseksi.

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

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

{% hint style="warning" %}
Kaikki alla olevat määritysmuutokset tehdään **äskettäin kloonattuun versioon.**
{% endhint %}

### **Lokisuoratoiston määritys**

1. Siirry **Lokitus**-alueelle.
2. Klikkaa **'Luo päätepiste'** -painiketta Amazon S3:lle

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

3. Syötä alla olevan taulukon tiedot:

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

<table><thead><tr><th width="196">Kenttä</th><th>Arvo</th></tr></thead><tbody><tr><td>Nimi</td><td>Syötä muistettava, ihmisen luettavissa oleva nimi päätepisteelle, kuten <strong>Netacea_Logging</strong></td></tr><tr><td>Sijoitus</td><td>Muodon versio Oletus</td></tr><tr><td>Lokimuoto</td><td>Liitä <strong>Lokimuoto</strong>, joka löytyy <a href="#log-format">täältä</a></td></tr><tr><td>Aikaleim</td><td>Liitä <strong>Aikaleimamuoto</strong>, joka löytyy <a href="#timestamp-format">täältä</a></td></tr><tr><td>Säilön nimi</td><td>Netaicean toimittaman Amazon S3 -säilön nimi, joka löytyy <a href="https://portal.netacea.com/">hallintaportaalista</a></td></tr><tr><td>Verkkotunnus</td><td>s3.eu-west-1.amazonaws.com</td></tr><tr><td>Pääsytapa</td><td>Valitse <strong>'Käyttäjätunnistetiedot'</strong></td></tr><tr><td>Pääsyavain</td><td>Kopioi Netaicean <a href="https://portal.netacea.com/">hallintaportaalista</a></td></tr><tr><td>Salainen avain</td><td>Kopioi Netaicean <a href="https://portal.netacea.com/">hallintaportaalista</a></td></tr><tr><td>Jakso</td><td></td></tr></tbody></table>

4. Laajenna **'Lisäasetukset'**-osio ja käytä alla olevassa taulukossa lueteltuja arvoja:

| Vaihtoehto               | Arvo     |
| ------------------------ | -------- |
| Polku                    | /        |
| PGP-julkinen avain       | Tyhjä    |
| Valitse lokirivien muoto | Tyhjä    |
| Pakkaus                  | Gzip     |
| Redundanssitaso          | Standard |
| ACL                      | None     |
| Palvelinpuolen salaus    | None     |
| Enimmäistavut            | 0        |

5. Klikkaa **'Luo'** tallentaaksesi lokituspäätepisteen.

### Lokimuoto

{% 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 %}

### Aikaleimamuoto

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

### Netaicean vähimmäistietojoukko

Yllä oleva lokimuoto mahdollistaa Netaicean kerätä seuraavan vähimmäistietojoukon analyysiin

<table><thead><tr><th width="215">Pakolliset kentät</th><th>Kuvaus</th></tr></thead><tbody><tr><td>Aikaleima</td><td>Ajankohta, jolloin pyyntö vastaanotettin</td></tr><tr><td>IP-osoite</td><td>IP-osoite, josta pyyntö tehtii</td></tr><tr><td>Käyttäjäagentti</td><td>Asiakkaan otsikossa lähettämä käyttäjäagenttimerkkinjono</td></tr><tr><td>Metodi</td><td>Pyynnön HTTP-metodi</td></tr><tr><td>Polku</td><td>Pyydetyn resurssin polku</td></tr><tr><td>Kysely</td><td>Pyynnön kyselymerkkijono</td></tr><tr><td>Tila</td><td>Palvelimen palauttama HTTP-tilakoodi</td></tr><tr><td>Viittaaja</td><td>Verkkosivi, jolta käyttäjä seurasi linkkiä</td></tr><tr><td>Lähetetyt tavut</td><td>Palvelimen vastauksena lähetetyt tavut</td></tr><tr><td>Asiakas JA3</td><td>Asiakkaan JA3-sormenjälki</td></tr><tr><td>X-Forwarded-For*</td><td>Asiakaspyynnön alkuperäinen IP-osoite</td></tr><tr><td>Isäntä</td><td>Pyynnön kohdeiäntä</td></tr><tr><td>Protokolla</td><td>Pyynnön protokolla</td></tr><tr><td>Pyyntöaika</td><td>Pyynnön käsittelyyn kulunut kokonaisaika</td></tr></tbody></table>

\* Hyödyllinen, kun välityspalvelimia on liikenteen linjalla asiakkaalta > lähtöpalvelimelle

### Lokitushuomiot

Fastlyn lokitoimitusta määritettäessä se lähettää oletuksena kaikki pyynnöt, mukaan lukien staattiset ja mediatiedostot S3-säilöön. Netacea ei tarvitse tätä dataa. Tämän ratkaisemiseksi meidän on lisättävä lokitusehto palveluun ja liitettävä se yllä olevien vaiheiden mukaisesti luotuun lokituspalveluun.

#### Lokitusehdon lisääminen

1. Siirry äskettäin luotuun lokituspäätepisteeseen:

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

2. Klikkaa **'Luo uusi vastausehto'**

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

3. Syötä seuraavat tiedot ponnahdusikkunaan

| Kenttä       | Arvo                                                                                      |
| ------------ | ----------------------------------------------------------------------------------------- |
| Nimi         | esim. Netacea\_Log\_Visit                                                                 |
| Käytä jos    | (req.url !\~ "/media/" && req.url !\~ "/static/") && fastly.ff.visits\_this\_service == 0 |
| Prioriteetti | 10                                                                                        |

{% hint style="warning" %}
Laajenna **'Lisäasetus'**-osio asettaaksesi Prioriteetin
{% endhint %}

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

4. Klikkaa **'Tallenna ja ota käyttöön'**

### Viimeistely

* Tarkista määritys


---

# 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/fi/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.
