# Configurazione del monitoraggio

## Prerequisiti

Per trasmettere correttamente i log del traffico web a Netacea, assicurarsi di disporre di:

* Un account Akamai attivo con accesso completo alla Dashboard Akamai.
* Akamai DataStream 2 abilitato.

{% hint style="info" %}
DataStream 2 è incluso con la distribuzione dei contenuti senza costi aggiuntivi. Per abilitare questa funzionalità, contattare il team del proprio account Akamai.
{% endhint %}

* Un elenco dei casi d'uso di protezione e dei percorsi vulnerabili a ciascuno di essi.
* Un elenco di tutti gli utenti noti, sicuri e inseriti in whitelist. Questo include un elenco di bot affidabili, IP e geolocalizzazioni. Sono preziose anche eventuali informazioni su attori malevoli noti.
* I dettagli (percorso del bucket, nome, posizione, credenziali) di un Bucket AWS S3 ospitato e fornito da Netacea.

## Configurazione di DataStream 2

Seguire la documentazione Akamai disponibile [qui](https://techdocs.akamai.com/datastream2/docs/quick-start) per creare e attivare uno stream DataStream 2, in base alla seguente configurazione:

### Passaggio 1: Configurazione

Utilizzare la scheda **Configuration** per inserire i dettagli di base dello stream e scegliere le proprietà che si desidera monitorare.

### Passaggio 2: Set di Dati

Durante il passaggio di configurazione del Set di Dati, utilizzare il seguente set di dati minimo, definito da Netacea:

| **Campo Obbligatorio**                         | **Descrizione**                                                                                                                                            |
| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Request time                                   | L'orario in cui è stata ricevuta la richiesta                                                                                                              |
| Bytes                                          | I Byte inviati come parte della richiesta dell'utente                                                                                                      |
| Client IP                                      | L'indirizzo IP da cui è stata effettuata la richiesta                                                                                                      |
| HTTP status codes                              | Il codice di stato HTTP restituito dal server                                                                                                              |
| Protocol type                                  | Il protocollo del ciclo richiesta-risposta.                                                                                                                |
| Request host                                   | Il valore dell'header host nella richiesta                                                                                                                 |
| Request method                                 | Il metodo HTTP della richiesta                                                                                                                             |
| Request path                                   | Il percorso della risorsa richiesta                                                                                                                        |
| Query string                                   | La stringa di query della richiesta                                                                                                                        |
| User-Agent<mark style="color:red;">\*</mark>   | La stringa user agent inviata nell'header dal client                                                                                                       |
| Referer<mark style="color:red;">\*</mark>      | La pagina web da cui l'utente ha seguito un link                                                                                                           |
| Turn around time                               | Il tempo trascorso in millisecondi tra la ricezione dell'ultimo header della richiesta e la scrittura del primo byte della risposta sul socket del client. |
| Custom field<mark style="color:red;">\*</mark> | Questo campo supporta variabili ed è necessario per registrare campi personalizzati specifici di Netacea.                                                  |

{% hint style="info" %} <mark style="color:red;">\*</mark>Per monitorare questi campi è necessario abilitare la registrazione dei parametri del set di dati personalizzato nel behavior **Log Request Details** della proprietà Akamai associata. Vedere [Log custom parameters](https://techdocs.akamai.com/datastream2/docs/log-custom-parameters) per maggiori dettagli.
{% endhint %}

{% hint style="warning" %}
Assicurarsi di selezionare **JSON** come formato del Log.
{% endhint %}

### Passaggio 3: Consegna

* Selezionare **Amazon S3** come Destinazione.
* In **Name**, inserire una descrizione leggibile per la destinazione.
* In **Bucket**, inserire il nome del relativo Bucket S3 ospitato da Netacea.
* In **Folder path**, inserire "**logs/**", salvo diverse indicazioni da parte di Netacea.
* In **Region**, inserire il codice della regione AWS in cui risiede il bucket. Questo dovrebbe essere eu-west-1 (tutto minuscolo) salvo diverse indicazioni da parte di Netacea.
* In **Access key ID** e **Secret access key,** inserire i valori associati al bucket Amazon S3 fornito da Netacea.
* Fare clic su **Validate & Save** per convalidare la connessione alla destinazione e salvare i dettagli forniti.
* Assicurarsi che la **Push frequency** sia impostata sul valore più basso possibile.

### Passaggio 4: Riepilogo e Attivazione

Nella scheda **Summary**, verificare tutti i dettagli dello stream configurato e assicurarsi di seguire le istruzioni sopra indicate. Una volta pronti, selezionare la casella **Activate stream upon saving** e fare clic su **Save stream.**

### Passaggio 5: Abilitare il DataStream tramite una Rule

L'attivazione di uno stream **richiede fino a un'ora**, ma inizierà a raccogliere e trasmettere dati solo dopo aver aggiunto e abilitato il [DataStream behavior](https://techdocs.akamai.com/datastream2/docs/enable-datastream-behavior) tramite una Rule nella configurazione della proprietà che ospita il sito web. Seguire questi passaggi per creare la Rule per abilitare il proprio DataStream:

* Creare una nuova versione della proprietà dalla versione attiva esistente e modificare la versione appena creata.
* In **Property Configuration Settings,** selezionare +Rules per creare una nuova Rule
* Selezionare il **Blank Rule Template** e fornire un nome significativo per la rule prima di fare clic su **Insert Rule**.<br>

  <figure><img src="https://2460428468-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMcNTU10K5f93vQq5fvkT%2Fuploads%2Fgit-blob-481665751f49c248bbbf7453af292208532af100%2Fimage%20(5)%20(4).png?alt=media" alt=""><figcaption></figcaption></figure>
* Nella sezione **Criteria**, aggiungere la seguente regola di corrispondenza: `If Hostname is one of <hostname>`.

{% hint style="info" %}
Se Netacea sta monitorando più siti web è possibile aggiungere più hostname. Includere solo gli hostname che saranno monitorati dal DataStream creato in precedenza.
{% endhint %}

<figure><img src="https://2460428468-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMcNTU10K5f93vQq5fvkT%2Fuploads%2Fgit-blob-abf200ab839be8f43c24f23110fc719b3c059867%2Fimage%20(9)%20(3).png?alt=media" alt=""><figcaption><p>Criteri della Rule</p></figcaption></figure>

* Nella sezione **Behaviors**, aggiungere un behavior e **abilitare** il DataStream creato in precedenza.

{% hint style="info" %}
Una Rule esistente può essere duplicata e riutilizzata.
{% endhint %}

<figure><img src="https://2460428468-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMcNTU10K5f93vQq5fvkT%2Fuploads%2Fgit-blob-10d0e74a162432cba13d424d98267487b6e7a857%2Fimage%20(1)%20(1)%20(3).png?alt=media" alt=""><figcaption><p>Behavior della Rule</p></figcaption></figure>

* Inoltre, aggiungere un nuovo behavior **Log Request Details**. Impostare 'Include Custom Log Field' su 'on' e Custom Log Field su `{{user.PMUSER_NETACEA_DS2_CUSTOM_FIELD}}`

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

Il DataStream e la Rule associata sono ora creati.

{% hint style="info" %}
**Ripetere la procedura sopra indicata per ogni sito web separato (o gruppo di siti web) che Netacea monitorerà.**
{% endhint %}

## Attivare la Proprietà

Una volta creati tutti i DataStream e le Rule, fare clic su **Save** e utilizzare la scheda **Activate** per attivare (distribuire) le modifiche alla configurazione della proprietà.

{% hint style="success" %}
La configurazione del monitoraggio verrà ora distribuita sulla proprietà per cui è stata configurata. È possibile confermare che la distribuzione sia corretta:

* Richiedendo a Netacea di verificare le metriche di monitoraggio interne.
* Richiedendo a Netacea di validare il contenuto e il formato dei dati.
  {% endhint %}
