# Tutorial dashboard di Kibana per principianti

Il motore di ricerca e analisi Elasticsearch è una delle soluzioni open source per l’**indicizzazione e la strutturazione di grandi volumi di dati**. Spesso si possono acquisire informazioni preziose solo nell’analisi successiva dei dati grezzi, sempre se vengono **visualizzati in una forma chiara e facilmente comprensibile**. Per la presentazione dei dati Elasticsearch in particolare è stato sviluppato lo strumento di visualizzazione Kibana, che verrà utilizzato in questo tutorial.

## Che cos’è Kibana?

**Kibana** è un’interfaccia web estensibile per la presentazione visiva dei dati raccolti. Insieme ad **Elasticsearch** e allo strumento di elaborazione **Logstash** forma il cosiddetto **stack ELK** (chiamato anche stack elastico). Questa suite open source consente agli utenti di acquisire, organizzare e preparare i dati da diverse **origini server** (e in qualsiasi formato) ai fini di analisi. Oltre alla possibilità di visualizzare i dati elaborati da Logstash ed Elasticsearch, Kibana fornisce anche un’**analisi automatica in tempo reale**, un **algoritmo di ricerca molto flessibile** e **vari tipi di visualizzazione** (istogrammi, grafici, ecc.) per i singoli dati. Nella dashboard le singole visualizzazioni interattive possono quindi essere combinate in un’immagine complessiva dinamica che può essere filtrata e ricercata.

[YouTube video](https://www.youtube.com/watch?v=Mz8avM1oOKQ) Come applicazione web scritta in **JavaScript**, Kibana può essere **utilizzato su diverse piattaforme**. Occorre pagare solamente se si utilizza un servizio di hosting Elastic Cloud fornito dallo sviluppatore. Questo servizio a pagamento vi consente di **implementare e organizzare un cluster sicuro Elasticsearch Kibana su Amazon o Google** senza dover mettere a disposizione le vostre risorse.

## Tutorial per Kibana: primi passi con il tool di visualizzazione

Kibana offre una vasta gamma di funzioni che possono essere utilizzate per visualizzare file di database analizzati. Tuttavia avete davanti a voi molto lavoro prima di poter filtrare e visualizzare le informazioni nella dashboard in modo da poter facilmente tenere sott’occhio, analizzare e valutare i **valori chiave** che desiderate. Con questo tutorial di Kibana vogliamo rendere più semplice il primo impatto con la potente interfaccia web. Questo articolo spiega come installare correttamente Kibana, creare la propria dashboard e integrare i database esistenti nello strumento di visualizzazione di Elastic.

### Passo 1: come far funzionare Kibana

Siccome Kibana è stato progettato per visualizzare i dati indicizzati con **Elasticsearch**, è necessario innanzitutto un’installazione funzionante del motore di ricerca e analisi. I **pacchetti corrispondenti per Windows, macOS e Linux** sono disponibili nell’ [Elasticsearch download center](https://www.elastic.co/downloads/elasticsearch "Download di Elasticsearch"). Il prerequisito è che sia installato un ambiente di runtime Java corrente (64 bit).

Kibana è anche disponibile come software multipiattaforma per Windows, macOS e Linux (RPM, DEB). Poiché l’applicazione si basa sull’ambiente di runtime Javascript [Node.js](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/introduzione-a-nodejs/ "Introduzione a Node.js"), i vari pacchetti di installazione contengono anche i dati binari node.js necessari per eseguire l’ambiente di visualizzazione: le versioni gestite separatamente non sono supportate. I diversi pacchetti (ZIP compressi) si possono trovare come Elasticsearch nella [**Homepage di Elastic**](https://www.elastic.co/downloads/kibana "Download di Kibana").

---

### N.B.

Gli utenti di Linux e Mac possono anche installare Kibana **attraverso il repository Elastic** utilizzando i gestori di pacchetti **apt** e **yum**. Istruzioni dettagliate in merito sono disponibili nel [manuale online](https://www.elastic.co/guide/en/kibana/current/install.html "Documenti online di Kibana: installazione").

---

Se avete decompresso il pacchetto Kibana, eseguite il file **bin/kibana** (macOS, Linux) o **bin\\kibana.bat** (Windows) per far funzionare il server Kibana.

[![Immagine: Riga di comando su Windows 10: Inizializzazione del server Kibana](https://www.ionos.it/digitalguide/fileadmin/_processed_/f/d/csm_kibana-ES-1_b86cbdff6b.webp "Riga di comando su Windows 10: Inizializzazione del server Kibana")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-1.jpg) L’inizializzazione del server Kibana dura qualche secondo.       Infine potete richiamare il **back end Kibana** nel vostro browser tramite l’indirizzo **'http://localhost:5601'** (Elasticsearch deve già essere in esecuzione).

[![Immagine: Kibana: schermata iniziale](https://www.ionos.it/digitalguide/fileadmin/_processed_/3/e/csm_kibana-ES-2_067addcb43.webp "Kibana: schermata iniziale")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-2.jpg) Per l’interfaccia utente di Kibana è disponibile soltanto la versione in inglese.       ###  Passo 2: inserire dati su Kibana

Per far luce sulla dashboard di Kibana e sulle sue funzionalità, l’applicazione deve essere dotata di dati. Sul [sito web di Elastic](https://www.elastic.co/guide/index.html "elastic.co: caricare dati di esempio") ci sono tre database scaricabili gratuitamente che in questo tutorial utilizziamo a scopo di test. Si tratta dei tre database menzionati sopra “**shakespeare.json**” (database di opere complete di William Shakespeare), “**accounts.zip**” (set di account fittizi) e “**logs.jsonl.gz**” (set di file log generati casualmente).

Scaricate e decomprimete i tre file (file account e file log) e salvateli nella posizione che desiderate.

[![Immagine: Esempi di database per Kibana su elastic.co](https://www.ionos.it/digitalguide/fileadmin/_processed_/c/2/csm_kibana-ES-3_9dea40af0a.webp "Esempi di database per Kibana su elastic.co")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-3.jpg) Per scaricare i database di esempio è sufficiente fare clic sui rispettivi link: il download verrà avviato automaticamente.       Prima di immettere i dati è necessario creare **mapping** (mappature) per i campi del database di Shakespeare e server log. Queste mappature **dividono i documenti nell’indice in gruppi logici** e specificano anche le proprietà dei cambi, come ad esempio la loro ricercabilità. Lo strumento giusto per la configurazione dei mapping è la console, che può essere trovata nell’interfaccia di Kibana sotto le voci di menu “**Dev Tools**” “**Console**”.

[![Immagine: Kibana: plug-in della console](https://www.ionos.it/digitalguide/fileadmin/_processed_/4/d/csm_kibana-ES-4_98e430014d.webp "Kibana: plug-in della console")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-4.jpg) Il plug-in della console di Kibana fornisce un’interfaccia che consente di interagire direttamente con a REST API di Elasticsearch.       Ora inserite i seguenti mapping in successione tramite PUT request:

```none
PUT /shakespeare
{
 "mappings": {
  "doc": {
   "properties": {
    "speaker": {"type": "keyword"},
    "play_name": {"type": "keyword"},
    "line_id": {"type": "integer"},
    "speech_number": {"type": "integer"}
   }
  }
 }
}
```

```none
PUT /logstash-2015.05.18
{
    "mappings": {
        "log": {
            "properties": {
                "geo": {
                    "properties": {
                        "coordinates": {
                            "type": "geo_point"
                        }
                    }
                }
            }
        }
    }
}
```

```none
PUT /logstash-2015.05.19
{
    "mappings": {
        "log": {
            "properties": {
                "geo": {
                    "properties": {
                        "coordinates": {
                            "type": "geo_point"
                        }
                    }
                }
            }
        }
    }
}
```

```none
PUT /logstash-2015.05.20
{
    "mappings": {
        "log": {
            "properties": {
                "geo": {
                    "properties": {
                        "coordinates": {
                            "type": "geo_point"
                        }
                    }
                }
            }
        }
    }
}
```

[![Immagine: Console Kibaan: inserimento dei mapping del database](https://www.ionos.it/digitalguide/fileadmin/_processed_/8/e/csm_kibana-ES-5_e78f4e5231.webp "Console Kibaan: inserimento dei mapping del database")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-5.jpg) Facendo clic sul simbolo del triangolo verde potete visualizzare la risposta alla richiesta inserita nella console di Kibana.     Ora utilizzate l’API bulk di Elastic per caricare i set di dati con Curl attraverso il terminale. Su Windows invece utilizzate PowerShell con il Invoke-RestMethod (di seguito un esempio di codice):

```none
curl -H 'Content-Type: application/x-ndjson' -XPOST 'localhost:9200/bank/account/_bulk?pretty' --data-binary @accounts.json
curl -H 'Content-Type: application/x-ndjson' -XPOST 'localhost:9200/shakespeare/doc/_bulk?pretty' --data-binary @shakespeare_6.0.json
curl -H 'Content-Type: application/x-ndjson' -XPOST 'localhost:9200/_bulk?pretty' --data-binary @logs.jsonl
```

```none
Invoke-RestMethod "http://localhost:9200/bank/account/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "accounts.json"
Invoke-RestMethod "http://localhost:9200/shakespeare/doc/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "shakespeare_6.0.json"
Invoke-RestMethod "http://localhost:9200/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "logs.jsonl"
```

[![Immagine: Windows PowerShell che mostra il caricamento dei record di Kibana](https://www.ionos.it/digitalguide/fileadmin/_processed_/8/8/csm_kibana-ES-6_86bfce87bb.webp "Windows PowerShell che mostra il caricamento dei record di Kibana")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-6.jpg) Assicuratevi di eseguire i comandi per caricare i record di dati di Kibana nella directory in cui risiedono i tre database di esempio.       ---

### N.B.

A seconda della potenza di calcolo potrebbero essere necessari alcuni minuti per immettere i dati.

---

Tornate alla console di Kibana per verificare il successo del **processo di caricamento con la seguente GET Request**:

```none
GET /_cat/indices?v
```

Se i dati sono inseriti come pianificato, l’**output** sarà simile al seguente:

[![Immagine: Console di Kibana: outbut della query Index](https://www.ionos.it/digitalguide/fileadmin/_processed_/e/e/csm_kibana-ES-7_021eb51636.webp "Console di Kibana: outbut della query Index")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-7.jpg) Lo health status “yellow” indica che Elasticsearch ha assegnato tutti gli shard primari (sezioni di un indice di dati), ma non tutte le repliche (backup di shard).       ###  Passo 3: definire un primo modello di indice

Affinché Kibana venga a conoscenza di quali dati debba elaborare, è necessario **creare** **modelli per gli Indices** “**shakespeare**”, “**bank**” e “**logstash**”. Definite il primo come segue:

1. Aprite il menu “**Management**” e cliccate su “**Index patterns**”. Quando si crea il primo pattern di indice la pagina “**Create index pattern**” si apre automaticamente. In alternativa potete richiamarla tramite il pulsante corrispondente che porta lo stesso nome.
2. Inserite “**shakes\***” nel campo “**Index pattern**” e cliccate su “**Next step**”.
3. Poiché non è necessaria alcuna particolare configurazione per questo modello, saltate il passo successivo di configurazione e terminate la creazione del modello direttamente facendo clic su “**Create index pattern**”

[![Immagine: L’interfaccia Kibana: menu della creazione del modello di indice](https://www.ionos.it/digitalguide/fileadmin/_processed_/3/f/csm_kibana-ES-8_b401e71c41.webp "L’interfaccia Kibana: menu della creazione del modello di indice")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-8.jpg) Un modello di indice appena creato deve corrispondere ad almeno un indice contenente dati esistenti. Altrimenti, non potete continuare nel processo di installazione.       Ripetete i passaggi per il pattern “**ba\***” che viene automaticamente assegnato all’indice “bank”. Infine definite anche un modello di indice denominato “logstash\*” per gli indici dei tre server log. Tuttavia con questo modello non si salta il menu di configurazione, ma si seleziona invece la voce **“@timestamp**” nel menu a discesa “Time Filter field name”, poiché questi record contengono dati di serie temporali. Infine fate clic come nei due modelli precedenti su “**Create index pattern**”.

[![Immagine: Kibana: menu di configurazione del filtro temporale per il modello logstash*](https://www.ionos.it/digitalguide/fileadmin/_processed_/a/c/csm_kibana-ES-9_d6640ae47b.webp "Kibana: menu di configurazione del filtro temporale per il modello logstash*")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-9.jpg) I dati delle serie temporali, come i server log, sono record di dati che vengono registrati continuamente.       ###  Passo 4: ricerca nei record inseriti

Dopo aver popolato il server Kibana con i record potete avviare una **query Elasticsearch** per cercare in quei record e filtrare i risultati. Andate al menu “**Discover**” e selezionate il modello di indice per la vostra ricerca attraverso l’icona del piccolo triangolo nella barra dei menu a sinistra. Come parte di questo tutorial di Kibana Dashboard abbiamo scelto il record dell’account (ba\*):

[![Immagine: Kibana: elenco delle voci di un record di dati di esempio](https://www.ionos.it/digitalguide/fileadmin/_processed_/e/5/csm_kibana-ES-10_3b9b624041.webp "Kibana: elenco delle voci di un record di dati di esempio")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-10.jpg) Kibana elenca le singole voci del set di dati selezionato in cui il set di dati ba\* contiene le tipiche categorie di conti bancari come il saldo del conto, il nome, l’età, ecc.       Come test potete filtrare il record del conto bancario una sola volta in modo da visualizzare solo gli account che **soddisfano determinati criteri**. Ad esempio, per cercare conti che abbiano un **saldo superiore a 47.500** e che appartengano a persone che abbiano **più di 38 anni**, immettete il seguente comando nella casella di ricerca:

```none
balance:>47500 AND age:>38
```

Discover restituirà quindi le voci per i **quattro conti 97, 177, 878 e 916** che corrispondono alle caratteristiche selezionate.

[![Immagine: Kibana: risultati di un filtraggio di set di dati](https://www.ionos.it/digitalguide/fileadmin/_processed_/f/3/csm_kibana-ES-11_3ab1aa72e6.webp "Kibana: risultati di un filtraggio di set di dati")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-11.jpg) Utilizzando il pulsante “Add filter” potete facilmente definire i vostri filtri per il database selezionato.       Utilizzate il pulsante “**Save**” nella barra dei menu in alto per salvare le ricerche filtrate con il nome desiderato.

### Passo 5: visualizzare i dati

Con i preparativi fatti finora in questo tutorial di Kibana siete ora in grado di visualizzare i dati che sono stati implementati per dare vita alla vostra dashboard. A titolo di esempio, a questo punto deve essere generato un **grafico a torta per il database del conto bancario**. Da un lato questo grafico dovrebbe mostrare quale percentuale del totale di 1.000 conti rientra in determinati intervalli di saldo e dall’altro come cade la distribuzione specifica per età all’interno di questi intervalli.

Aprite in primo luogo il menu “**Visualize**” e cliccate su “**Create a visualization**” per ottenere un elenco dei tipi di visualizzazione disponibili. Quindi selezionate l’opzione “**Pie**”.

[![Immagine: Kibana: menu per la scelta della tipologia di visualizzazione](https://www.ionos.it/digitalguide/fileadmin/_processed_/7/1/csm_kibana-ES-12_f9c1d4739b.webp "Kibana: menu per la scelta della tipologia di visualizzazione")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-12.jpg) Tra i tipi di visualizzazione disponibili in Kibana rientrano tra gli altri anche Heatmaps, istogrammi e grafici ad area.       All’inizio si vede soltanto un cerchio semplice, che riassume tutte le voci del database, perché **nessuna categoria è stata ancora definita**. Esse in Kibana sono anche chiamate “**Buckets**” e possono essere create sotto la voce di menu che porta lo stesso nome.

Per definire innanzitutto ciascuna sezione del saldo del conto, fate clic su “**Split Slices**” e scegliete “**Range**” dal menu a discesa “**Aggregation**”:

[![Immagine: Kibana: finestra per la definizione delle categorie di diagrammi](https://www.ionos.it/digitalguide/fileadmin/_processed_/e/c/csm_kibana-ES-13_6defad577c.webp "Kibana: finestra per la definizione delle categorie di diagrammi")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-13.jpg) Con l’aiuto del tipo “Range” püotete creare intervalli di valori individuali per i campi selezionati di un record di dati.       Alla voce “**Field**” cercate ora la voce “**balance**” e cliccatela, quindi fate clic quattro volte sul pulsante “**Add Range**” per definire le seguenti sei categorie di saldo del conto:

<table>
  <thead>
    <tr>
      <th>0</th>
      <th>999</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>1000</td>
      <td>2999</td>
    </tr>
    <tr>
      <td>3000</td>
      <td>6999</td>
    </tr>
    <tr>
      <td>7000</td>
      <td>14999</td>
    </tr>
    <tr>
      <td>15000</td>
      <td>30999</td>
    </tr>
    <tr>
      <td>31000</td>
      <td>50000</td>
    </tr>
  </tbody>
</table>

Alla fine cliccate su “**Apply Changes**” (icona a forma di triangolo). In questo modo il diagramma a torta mostra la distribuzione dei conti tenendo conto degli intervalli di saldo stabiliti.

[![Immagine: Kibana: diagramma a torta con categorie definite](https://www.ionos.it/digitalguide/fileadmin/_processed_/0/a/csm_kibana-ES-14_659f6ac875.webp "Kibana: diagramma a torta con categorie definite")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-14.jpg) Kibana crea automaticamente una legenda sul grafico creato la cui posizione (destra, sinistra, alto e basso) si può decidere nelle opzioni.       Nella seconda fase aggiungete un altro anello al grafico che visualizza la distribuzione delle fasce d’età per ciascuna area dello stato del conto corrente. Per fare ciò cliccate su “**Add sub-buckets**” quindi su “**Split slices**” e selezionate poi “**Terms**” nel menu a discesa. Cercate sotto “**Field**” la voce “**age**” e applicate le modifiche con “**Apply change**”.

[![Immagine: Kibana: diagramma a torta con categorie e sottocategorie definite](https://www.ionos.it/digitalguide/fileadmin/_processed_/f/d/csm_kibana-ES-15_7a8f6d29d3.webp "Kibana: diagramma a torta con categorie e sottocategorie definite")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-15.jpg) Se passate con il mouse sopra la singola area di un diagramma, Kibana vi mostra ulteriori suggerimenti, a meno che non lo abbiate disattivato nelle opzioni.       La visualizzazione può ora facilmente essere salvata tramite il pulsante “**Save**” situato nella barra superiore del menu.

### Passo 6: organizzare la dashboard

In questo tutorial verrà presa in considerazione brevemente anche la dashboard di Kibana. Ora potete utilizzare la ricerca e la visualizzazione salvate nei passaggi 4 e 5 per creare una **prima dashboard di prova**. Per fare ciò selezionate la dashboard nella navigazione della pagina e cliccate su “**Create new dashboard**” e quindi su “**Add**”. Kibana a questo punto elencherà automaticamente tutte le visualizzazioni memorizzate o le ricerche Elasticsearch:

[![Immagine: Dashboard di Kibana: menu per inserire nuovi pannelli](https://www.ionos.it/digitalguide/fileadmin/_processed_/c/f/csm_kibana-ES-16_fdbd6df876.webp "Dashboard di Kibana: menu per inserire nuovi pannelli")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-16.jpg) La funzione di ricerca consente di trovare facilmente i componenti desiderati della dashboard, anche con un numero elevato di visualizzazioni o risultati di ricerca Elasticsearch.       Facendo clic con il tasto sinistro del mouse sulla dashboard si aggiunge la visualizzazione del saldo del conto corrente e il risultato della ricerca di esempio, dopodiché è possibile visualizzarli entrambi in pannelli separati nella dashboard:

[![Immagine: Dashboard di Kibana: tutorial esempio di prova](https://www.ionos.it/digitalguide/fileadmin/_processed_/3/b/csm_kibana-ES-17_49f3884e07.webp "Dashboard di Kibana: tutorial esempio di prova")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2019/kibana-ES-17.jpg) Con il pulsante “Share” potete condividere la vostra dashboard di Kibana con altri utenti o collegarla al vostro sito web in ogni momento.       È ora possibile modificare i pannelli, ad esempio **regolando le dimensioni** o **modificando il posizionamento**. È anche possibile mostrare una visualizzazione o un risultato di ricerca a tutto schermo o **eliminarlo dalla dashboard**. Tramite “Inspect” è inoltre possibile visualizzare ulteriori informazioni sui dati e le query sottostanti.

---

### N.B.

La rimozione di un pannello dalla dashboard di Kibana mantiene tuttavia la visualizzazione o la ricerca salvata.

---


This is a markdown version of: [https://www.ionos.it/digitalguide/online-marketing/analisi-web/tutorial-kibana/](https://www.ionos.it/digitalguide/online-marketing/analisi-web/tutorial-kibana/) for AI/LLM consumption.