# Akamai DataStream 2

### **Dostarczanie logów Akamai DataStream 2 do S3**

Aby wysyłać logi dostępu z Akamai do zasobnika Amazon S3, można użyć **Akamai DataStream 2**, który jest standardową i zalecaną przez Akamai metodą dostarczania logów w czasie rzeczywistym. Poniżej znajdują się udokumentowane kroki koncentrujące się na konfiguracji **DataStream 2**, wraz ze wskazówkami konfiguracyjnymi dotyczącymi dostarczania do zasobnika S3 hostowanego przez Netacea.

### Wymagania wstępne

Aby pomyślnie przesyłać strumieniowo logi ruchu webowego do Netacea, należy upewnić się, że:

* Posiadasz aktywne konto Akamai z pełnym dostępem do panelu Akamai Dashboard.
* Akamai DataStream 2 jest włączony.

{% hint style="info" %}
DataStream 2 jest dołączony do usługi dostarczania treści i nie wiąże się z dodatkową opłatą. Aby włączyć tę funkcję, skontaktuj się ze swoim zespołem opiekuna konta Akamai.
{% endhint %}

* Otrzymałeś od Netacea niezbędne dane zasobnika AWS S3 (ścieżka zasobnika, nazwa, region i dane uwierzytelniające). Można je znaleźć [tutaj](https://netacea.gitbook.io/portal-docs/user-guides-and-videos/portal-setup-and-log-shipping-guide).
* Znasz [minimalny wymagany zestaw danych](#step-2-data-set) pól niezbędnych dla Netacea do analizy logów.

## Konfiguracja DataStream 2

Postępuj zgodnie z dokumentacją Akamai znajdującą się [tutaj](https://techdocs.akamai.com/datastream2/docs/quick-start), aby utworzyć i aktywować strumień DataStream 2 w oparciu o następującą konfigurację:

#### Krok 1: Konfiguracja

Użyj zakładki **Configuration**, aby wprowadzić podstawowe dane strumienia i wybrać właściwości, które chcesz monitorować.

#### Krok 2: Zestaw danych

Podczas kroku konfiguracji zestawu danych użyj następującego minimalnego zestawu danych zdefiniowanego przez Netacea:

| **Wymagane pole**                              | **Opis**                                                                                                                    |
| ---------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| Request time                                   | Czas otrzymania żądania                                                                                                     |
| Bytes                                          | Bajty wysłane jako część żądania użytkownika                                                                                |
| Client IP                                      | Adres IP, z którego zostało wysłane żądanie                                                                                 |
| HTTP status codes                              | Kod statusu HTTP zwrócony przez serwer                                                                                      |
| Protocol type                                  | Protokół cyklu żądanie-odpowiedź.                                                                                           |
| Request host                                   | Wartość nagłówka host w żądaniu                                                                                             |
| Request method                                 | Metoda HTTP żądania                                                                                                         |
| Request path                                   | Ścieżka żądanego zasobu                                                                                                     |
| Query string                                   | Ciąg zapytania żądania                                                                                                      |
| User-Agent<mark style="color:red;">\*</mark>   | Ciąg user agent wysłany w nagłówku przez klienta                                                                            |
| Referer<mark style="color:red;">\*</mark>      | Strona internetowa, z której użytkownik przeszedł przez link                                                                |
| Turn around time                               | Czas w milisekundach od otrzymania ostatniego nagłówka żądania do zapisania pierwszego bajtu odpowiedzi do gniazda klienta. |
| Custom field<mark style="color:red;">\*</mark> | To pole obsługuje zmienne i jest wymagane do logowania niestandardowych pól specyficznych dla Netacea.                      |
| True-Client-IP\*\*                             | Zaufane źródło oryginalnego adresu IP klienta                                                                               |
| X-Forwarded-For\*\*                            | Adres IP połączenia \[tablica] żądania klienta, jeśli przechodzi przez proxy                                                |

\*Aby monitorować te pola, należy włączyć logowanie niestandardowych parametrów zestawu danych w zachowaniu **Log Request Details** powiązanej właściwości Akamai. Zobacz [Log custom parameters](https://techdocs.akamai.com/datastream2/docs/log-custom-parameters), aby uzyskać więcej informacji.

\*\* Przydatne, gdy serwery proxy znajdują się na trasie ruchu od klienta do serwera źródłowego

{% hint style="warning" %}
Upewnij się, że wybrano **JSON** jako format logów.
{% endhint %}

#### Krok 3: Dostarczanie

1. Wybierz **Amazon S3** jako miejsce docelowe.
2. W polu **Name** wprowadź czytelny opis miejsca docelowego.
3. W polu **Bucket** wprowadź nazwę odpowiedniego zasobnika S3 hostowanego przez Netacea.
4. W polu **Folder path** wpisz "**`logs/"`**, chyba że Netacea poinstruuje inaczej.
5. W polu **Region** wprowadź kod regionu AWS, w którym znajduje się zasobnik. Powinien to być `eu-west-1` (małe litery), chyba że zalecono inaczej.
6. W polach **Access key ID** i **Secret access key** wprowadź dane uwierzytelniające dostarczone przez Netacea.
7. Kliknij **Validate & Save**, aby zweryfikować połączenie z miejscem docelowym i zapisać konfigurację.
8. Upewnij się, że **Push frequency** jest ustawione na najniższą możliwą wartość.

#### Krok 4: Podsumowanie i aktywacja

1. Na zakładce **Summary** dokładnie przejrzyj wszystkie skonfigurowane szczegóły.
2. Po potwierdzeniu zaznacz pole **Activate stream upon saving**.
3. Kliknij **Save stream**, aby zakończyć konfigurację.

#### Krok 5: Włączenie DataStream poprzez regułę

Aktywacja strumienia może potrwać do godziny. Jednak dane będą zbierane i przesyłane strumieniowo **dopiero po** dodaniu i włączeniu [zachowania DataStream](https://techdocs.akamai.com/datastream2/docs/enable-datastream-behavior) poprzez regułę w konfiguracji właściwości Twojej witryny.

Aby to zrobić:

1. Utwórz nową wersję właściwości aktualnie aktywnej właściwości.
2. Edytuj nową wersję.
3. W sekcji **Property Configuration Settings** kliknij **+Rules**, aby dodać nową regułę.
4. Wybierz **Blank Rule Template**, podaj znaczącą nazwę i kliknij **Insert Rule**.

<figure><img src="https://1527802543-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu9Wa2WiFkCND3fktx8wd%2Fuploads%2Fgit-blob-481665751f49c248bbbf7453af292208532af100%2Fimage%20(5)%20(4).png?alt=media" alt=""><figcaption></figcaption></figure>

**Konfiguracja reguły**

* **Sekcja Criteria**\
  Dodaj następujący warunek dopasowania:
  * **If Hostname is one of `<hostname>`**

<figure><img src="https://1527802543-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu9Wa2WiFkCND3fktx8wd%2Fuploads%2Fgit-blob-abf200ab839be8f43c24f23110fc719b3c059867%2Fimage%20(9)%20(3).png?alt=media" alt=""><figcaption><p>Kryteria reguły</p></figcaption></figure>

{% hint style="info" %}
Jeśli Netacea monitoruje wiele witryn, można uwzględnić wiele nazw hostów. Uwzględnij tylko te, które mają być monitorowane przez utworzony wcześniej DataStream.
{% endhint %}

**Sekcja Behaviors**

* Dodaj zachowanie, aby **włączyć DataStream** utworzony wcześniej.

  > Możesz również zduplikować i ponownie wykorzystać istniejącą regułę, jeśli to właściwe.

<figure><img src="https://1527802543-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu9Wa2WiFkCND3fktx8wd%2Fuploads%2Fgit-blob-10d0e74a162432cba13d424d98267487b6e7a857%2Fimage%20(1)%20(1)%20(3).png?alt=media" alt=""><figcaption><p>Zachowania reguły</p></figcaption></figure>

* Dodaj kolejne zachowanie: **Log Request Details**
  * Ustaw **Include Custom Log Field** na `on`
  * Ustaw **Custom Log Field** na `{{user.PMUSER_NETACEA_DS2_CUSTOM_FIELD}}`

<figure><img src="https://1527802543-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fu9Wa2WiFkCND3fktx8wd%2Fuploads%2Fgit-blob-904e3b8952ca40de8eb9533cf912bdc84f8ad8fb%2Fimage%20(11).png?alt=media" alt=""><figcaption><p>Log Request Details</p></figcaption></figure>

DataStream i powiązana reguła zostały utworzone.

{% hint style="info" %}
**Powtórz powyższą procedurę dla każdej osobnej witryny (lub grupy witryn), którą Netacea będzie monitorować.**
{% endhint %}

### Aktywacja właściwości

Po utworzeniu wszystkich DataStreamów i reguł kliknij **Save** i użyj zakładki **Activate**, aby aktywować (wdrożyć) zmiany w konfiguracji właściwości.

{% hint style="success" %}
Konfiguracja monitorowania zostanie teraz wdrożona na właściwości, dla której została skonfigurowana. Możesz potwierdzić poprawność wdrożenia poprzez:

* Poproszenie Netacea o przegląd wewnętrznych metryk monitorowania.
* Poproszenie Netacea o walidację zawartości i formatu danych.
  {% endhint %}

### Ostatnie kroki

Po uruchomieniu dostarczania logów **powiadom swojego Netacea Solutions Engineer**. Pozwoli nam to:

* Potwierdzić odbiór danych
* Zwalidować format i kompletność zestawu danych
* Rozpocząć analizę po zebraniu wystarczającej ilości danych

Jeśli potrzebujesz wsparcia podczas konfiguracji, zespół Netacea SE jest do Twojej dyspozycji — nie wahaj się skontaktować.
