Kibana Basics: installazione e ricerca

Kibana è la componente di visualizzazione dello stack ELK, composto da Elasticsearch, FluentD e Kibana, utilizzato per l’analisi dei log: ma come sfruttarlo a pieno?
Questo post vi spiegherà passo-passo come installare Kibana, come sfruttare gli indici di ES, comprendere i campi e utilizzare ricerche con wildcards e operatori logici.
TOC
- Installazione di Kibana
- Definizione di un Index Pattern
- Cosa sono i campi
- Esempi di Ricerca con Wildcards e Operatori Logici
Installazione di Kibana
Per installare Kibana, è necessario avere già Elasticsearch configurato e raggiungibile. Ipotizzando che questo sia disponibile in locale tramite la porta 9200, questi sono i passaggi per l’installazione di Kibana su un sistema Ubuntu:
Scaricare la chiave di firma pubblica per la verifica:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Aggiungere il repository alla lista locale:
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
Aggiornare i repository e installare Kibana:
sudo apt-get update sudo apt-get install kibana
Configurare Kibana: Modificare il file di configurazione
/etc/kibana/kibana.yml
per impostare le seguenti configurazioni:server.port: 5601 elasticsearch.url: "http://localhost:9200"
Avviare Kibana:
sudo service kibana start
Accedere a Kibana: Aprire il browser all’indirizzo
http://<yourServerIP>:5601
.
Definizione di un Index Pattern
Dopo l’installazione, il passo successivo è definire un index pattern, che indica a Kibana quali dati analizzare tra quelli presenti in Elasticsearch. Per farlo:
- Vai su Management → Kibana Index Patterns.
- Seleziona il pattern di interesse, ad esempio, “app-*” e imposta
@timestamp
come campo di filtro temporale. - Clicca su Create index pattern.
Cosa sono i campi
In Kibana, i fields, o campi, rappresentano le colonne dei dati indicizzati in Elasticsearch. Ogni campo può contenere vari tipi di dati, come stringhe, numeri o date, e vengono utilizzati per filtrare e cercare informazioni specifiche nei log.
In altre parole, sono quelli mostrati nella colonna di sinistra della pagina principale della dashboard di Kibana:
Esempi di Ricerca con Wildcards e Operatori Logici
Ricerca semplice
Per eseguire una ricerca semplice, è sufficiente guarda nel dettaglio come la finestra principale si Kibana si presenta:
Al punto 1, è possibile scegliere l’intervallo di tempo che preferisci verificare. Tieni presente che, in base alla configurazione di sistema, i risultati più vecchi di una settimana o un mese potrebbero non essere disponibili: dipende dai dati che sono stati salvati.
Seguendo la freccia 2, vedrai tutti i log selezionati e trovati all’interno di un grafico temporale che rappresenta il conteggio dei risultati raccolti al minuto.
Puoi selezionare dai campi disponibili tra quelli che desideri mostrare nella tabella mostrata al punto 2 sfruttando la colonna sulla sinistra indicata dalla freccia 3.
Infine, puoi inserire la query che filtrerà i tuoi risultati tramite la barra di ricerca indicata con la freccia 4, che accetterà query utilizzando il formato Elasticsearch.
Nella barra di ricerca potrai scrivere le tue query seguendo queste semplici regole - ce ne sono molte di più, ma queste sono sufficienti!:
- usa uno dei campi disponibili nella colonna mostrata al punto 3
- usando i due punti (":"), inserisci il valore necessario.
Il valore può essere esatto o può usare un pattern. Nel primo caso, puoi usare le doppie virgolette per definire il valore cercato:
Ricerca tramite wildcards
Le wildcards consentono ricerche flessibili, perché permettono di filtrare i dati in maniera parziale. Vediamo qualche esempio:
cat*
trova tutte le parole che iniziano con “cat” (es. “category”).n?m
trova parole che hanno una lettera al posto del punto interrogativo (es. “npm” o “num”).
Operatori logici
Inoltre, è possibile combinare ricerche usando gli operatori logici e quindi combinare uno o più cambi:
Chrome AND Firefox
: cerca documenti che contengono entrambi i termini.Chrome OR Firefox
: cerca documenti che contengono almeno uno dei termini.NOT Chrome
: cerca documenti che non contengono “Chrome”.
Un esempio pratico usando i campi è il seguente: immaginiamo di voler cercare tutti i log il cui campo “message” contiene l’espressione vista in precedenza, e che abbiano anche il campo “level” pari a info:
Utilizzando questi strumenti, gli utenti possono esplorare e analizzare efficacemente i dati raccolti in Kibana, migliorando la comprensione delle informazioni contenute nei log.
Se ti interessa saperne di più, seguici: a breve pubblicheremo la seconda parte per mostrare come creare dashboard e visualizzazioni con Kibana!