Infrastrutture e Tecnologie per lo Sviluppo della Società dell'Informazione - Introduzione all'uso del tool Kibana per la visualizzazione log ...
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
Organizzazione
e
Sistemi Informativi
Infrastrutture e Tecnologie per lo Sviluppo della Società
dell'Informazione
Introduzione all'uso del tool Kibana
per la visualizzazione log
gennaio 2016 Versione 1.1.2Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
DOCUMENTO: Documento illustrativo – Ambienti di sviluppo e produzione
Standard Tecnologici
EMISSIONE - VERIFICA - APPROVAZIONE
Funzione Nome firma
Emissione Specialista Tecnico Luciano Billi
Emissione Specialista Tecnico Domenico Commisso
Verifica Specialista Tecnico Vincenzo Martiello
Verifica Specialista Tecnico
Verifica Specialista Tecnico
Approvazione Responsabile Vincenzo Martiello
Approvazione Responsabile
LISTA DI DISTRIBUZIONE :
AGGIORNAMENTI
Versione Data Paragrafi Motivo Modifica
Modificati
1.0 02/11/15 Prima stesura
.1.1 20/11/15 4 Aggiunto altro esempio
.1.1.2 26/01/16 4 Aggiunto caso filtro url e istogramma
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Indice
1 - PREMESSA...................................................................................................................................................................4
2 - ACCESSO AL SERVIZIO.............................................................................................................................................5
3 - FUNZIONALITÀ DI RICERCA...................................................................................................................................6
3.1 KIBANA ......................................................................................................................................................................6
3.2 TIPOLOGIE DI QUERY....................................................................................................................................................6
3.3 ESEMPIO BOOLEAN:......................................................................................................................................................7
3.4 QUERY MULTIPLE........................................................................................................................................................7
3.5 FILTRAGGIO DEI DATI DI LOG PRESENTI.........................................................................................................................8
3.6 ESEMPIO:.....................................................................................................................................................................9
3.7 FILTRI AVANZATI.................................................................................................................................................9
3.8 FILTRO AUTOMATICO........................................................................................................................................10
4 - GRAFICI......................................................................................................................................................................12
4.1 AGGIUNTA DI NUOVO PANNELLO CON GRAFICO......................................................................................12
4.2 SALVATAGGIO DELLA DASHBOARD.............................................................................................................17
4.3 ALTRO ESEMPIO DI VISUALIZZAZIONE GRAFICA:..........................................................................................................18
4.4 ISTOGRAMMA SU BASE URL:.......................................................................................................................................23
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
1 - Premessa
ElasticSearch è una tecnologia open source divenuta nel tempo molto popolare (viene
utilizzata da Facebook, Wikipedia, GitHub, ecc.) grazie alla capacità di ricerca ed analisi di dati
contenuti in documenti nel formato JSON, con interrogazioni che avvengono quasi in tempo reale.
Solitamente ci si riferisce all'architettura ELK, acronimo di:
➔ Elasticsearch: un database NoSQL con funzionalità avanzate di ricerca basate su Apache
Lucene
➔ Logstash: un aggregatore di log provenienti da sistemi operativi, database, applicazioni e servizi
( i log recuperati da logstash vengono generalmente conservati su elasticsearch)
➔ Kibana: una web application per l'analisi e la visualizzazione di dati di elasticsearch
Nel caso di slam-test che andiamo ad approfondire è stato inoltre utilizzato rsyslog, un'utility per il
forwarding di log in rete.
Questo schema architetturale mostra a grandi linee come interagiscono le tre componenti:
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
2 - Accesso al servizio
In base a quanto detto sopra, le url di accesso puntano a files JSON, costruiti a partire dai log
del frontend HTTP e formattati opportunamente dalle componenti intermedie.
Le url disponibili si trovano alla pagina sperimentale iniziale (di test)
https://slam-test.tix.it/
dalla quale, il primo link rimanda alla pagina
https://slam-test.tix.it/kibana/#/dashboard/file/sis_fse.json
che mostra il monitoraggio delle richieste http filtrato per tipo di Browser, mentre il secondo link
https://slam-test.tix.it/kibana/#/dashboard/file/sis_fse_logs.json
riporta una dashboard generalizzata che è possibile personalizzare come vedremo nel seguito.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
3 - Funzionalità di ricerca
3.1 Kibana
Kibana permette l'interrogazione user-friendly dei logs attraverso dashboard personalizzabili:
accedendo alla dashboard, si distinguono dall'alto verso il basso, le principali aree
• QUERY
• FILTERING
• DOCUMENTS
Nella sezione QUERY in alto nella pagina, vengono immesse le stringhe per la ricerca a testo libero
sul log, che viene rappresentato in basso nella sezione DOCUMENTS (un documento
nell'accezione No-SQL corrisponde ad una riga nella base dati costituita dall'indice json).
Cliccando nel cursore si vede un carattere '*',
che sarebbe la query di default e come tale non
esegue alcun filtro.
In generale, il formato di ricerca è lo standard
“Lucene” e questi sono i principali tipi di query
ammesse (il case è non-sensitive):
3.2 Tipologie di query.
Query generica: pink panther => filtra sulle stringhe pink OR panther
Query a blocchi: “pink panther“ => filtra su tutta la stringa
Operatori booleani: “pink panther“ AND return oppure “pink panther“ +return
=> filtra solo i record che contengono entrambe le
stringhe. Gli operatori vanno scritti in maiuscolo
Query per campi: title:“pink panther“ => i campi disponibili sono visibili nella sezione
DOCUMENTS
Wildcard: pant?er oppure panther*
Fuzzy: panther~ oppure panther~0.2
=> ricerca stringhe che differiscano di 2 caratteri in
punti qualunque di essa
Range: mod_date:[20070101 TO 20071001] oppure responsetime: [10 TO *]
Gruppi: title:(+return +"pink panther")
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
3.3 Esempio boolean:
Come si diceva nell'introduzione, il filtro agisce
sulla visualizzazione in pochi istanti.
3.4 Query Multiple
Cliccando sul simbolo + è possibile aggiungere query;
notare che quest'ultime sono eseguite in modalità OR
Il colore di ogni query è diverso per una migliore leggibilità.
Cliccando sulla lente si effettua il refresh e parte la ricerca sul documento.
Le query possono essere attivate/disattivate cliccando sul pallino ed il
tasto “Deactivate”, mentre per rimuoverle si può cliccare sulla “x”.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
3.5 Filtraggio dei dati di log presenti
Nella parte inferiore della pagina, come si diceva è presente la sezione DOCUMENTS, con sulla
sinistra in blu i campi (FIELDS, corrispondono alle colonne) preimpostati del record log generico,
mentre sulla destra viene riportato il flusso dei log.
NOTA: La visualizzazione dei log dipende, sia dalla presenza di query attivate nella sezione
QUERY, ma anche dal TIMESTAMP in uso, il quale può essere definito agendo sul filtro
temporale:
Il filtro è visibile in alto nella pagina, a partire dagli ultimi 30gg fino a pochi minuti,
eventualmente customizzabile:
oppure se vogliamo analizzare i log in tempo reale, con auto refresh
della pagina.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
3.6 Esempio:
Si vogliono evidenziare tutti i log in cui siano presenti le seguenti stringhe:
Confermando con invio la query immessa, oppure utilizzando il comando di reload , dopo
pochi secondi il flusso viene filtrato:
3.7 FILTRI AVANZATI
Nella terza ed ultima sezione FILTERING è possibile eseguire query più elaborate, grazie alle
opzioni must / must not /either che è possibile applicare a partire da una stringa:
Ad esempio, se volessimo vedere tutti i log in cui non
sia presente la stringa POST.
(Il pallino rosso indica che il filtro è attivo)
Anche in questo caso, dopo pochi attimi il filtro viene
applicato in aggiunta a quelli già presenti, oppure in modo indipendente se non presenti:
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Nella sezione Documents si possono attivare ulteriori filtri in base ai campi chiave in blu disponibili
sulla sinistra, in particolare si possono selezionare uno o più campi con la checkbox.
Per facilitare la scelta dei campi da usare come filtro, si può iniziare a scrivere
una stringa per visualizzare i filtri disponibili:
Inoltre, cliccando su uno dei campi, si apre una
finestra di summarizzazione, con i risultati dei
10 risultati con maggiori occorrenze in base a
quella voce:
3.8 FILTRO AUTOMATICO
Normalmente, cliccando
su una singola riga del
log, questa si espanderà
mostrando nel dettaglio
tutti i campi presenti:
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Per ogni campo sono visibili 3 iconcine: cliccando sulla
lente si andrà a creare in automatico un filtro
con quel valore:
Prendiamo ad esempio il campo “os”: il filtro agirà subito sui risultati della ricerca:
Se si aggiungono altri filtri, è poi possibile attivarli/disattivarli facilmente, cliccando la checkbox
centrale
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
4 - Grafici
4.1 AGGIUNTA DI NUOVO PANNELLO CON GRAFICO
In fondo alla pagina web
visualizzata, cliccare su
“ADD A ROW” per aggiungere
una riga all’interfaccia
Scegliere nome e altezza della riga nei
campi della parte a destra del pannello
cliccare su “Create Row”
E successivamente la sua posizione nella
pagina, agendo sulle frecce:
Quindi cliccare su “Save”
A questo punto è possibile vedere la riga
inserita e scegliere di aggiungere un
Pannello con il seguente tasto:
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Selezionare il Panel Type (per
questa particolare visualizzazione
quello più indicato), Terms e
cliccare su “Save”
Tra i tipi di pannello, scelgo terms:
Una volta cliccato su “terms” (vedi nota 1*) si apre il seguente pannello, nel quale è possibile
decidere le principali impostazioni del grafico, evidenziate in giallo nella figura: nel caso in
esempio scelgo: il nome del grafico (GraficoAtorta), il tipo di grafico a torta “pie”, che viene
alimentato in funzione del parametro “os”.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Salvo cliccando su Save
dopodichè viene visualizzato il
grafico creato:
Nota 1:
Su alcuni browser, a questo punto il pannello non presenta subito le opzioni, ma bisogna
prima salvare e poi, a partire dalla schermata seguente,
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
cliccare sull'icona a forma di rotella della configurazione del grafico, qui indicata dalla freccia
gialla e procedere, selezionando “Panel” ed inserendo i campi come evidenziato, salvando le
impostazioni al termine.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Nota 2: lo stesso grafico si può vedere, ma solo in anteprima, anche cliccando nella sezione
Documents sul campo di interesse, che in questo caso è “os” e poi in basso scegliere come tipo
di grafico il “pie” (torta)
Viene generata una finestra dinamica che riporta il grafico a tutto schermo
Tuttavia in questa seconda modalità, non è possibile salvare le impostazioni del grafico.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
4.2 SALVATAGGIO DELLA DASHBOARD
Per salvare le modifiche, è possibile esportare lo schema in locale, cliccando sull’icona
Save, poi Advanced e “Export schema”
Successivamente sarà possibile
caricare la dashboard
personalizzata, cliccando
sull’icona Load
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
4.3 Altro esempio di visualizzazione grafica:
1.
partiamo dall’immissione di alcune query sul campo “query-string” che contiene istruzioni come
getFarmaci, getPs, ecc:
Per comodità etichettiamo le query (si vedranno meglio nel grafico): ad esempio la seconda:
Si clicca sul pallino, si immette il nome della query nel campo 'Legend value' e per salvare si clicca
sul 'Close'
2.
Poi selezioniamo nella sezione Documents la checkbox sul relativo campo:
3.
Quindi in fondo a destra della pagina, aggiungiamo una riga:
4.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Dopodichè nel pannello che si apre, sulla destra inserisco il titolo del grafico, ad esempio
“Dominio” e quindi “Create Row”
Una volta creata la riga è possibile per comodità farla salire verso l'alto, agendo sulle frecce in
modo che il grafico resti nella parte alta dello schermo.
A questo punto salviamo con
e si torna sulla dashboard principale, dove cliccando sulla rotella arancione è possibile impostare le
caratteristiche del grafico.
Selezioniamo “Add Panel” e quindi il tipo 'hits'
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
che si presta meglio per questo caso, poiché si basa sulle query create.
Impostando il tipo di queries come “selected” e poi cliccando sulle query disponibili (nella
selezione, da piccole diventano più grandi), e poi salvando con
si ottiene il grafico desiderato:
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Se si vuole ingrandire l'area del grafico, agire sulla configurazione del pannello
impostando lo span a 12.
Versione 1.1.2 – Gennaio 2016Organizzazione e Sistemi Informativi
Introduzione all'uso del tool Kibana
Infrastrutture e Tecnologie per lo Sviluppo della
per la visualizzazione log
Società dell'Informazione
Per avere un'idea dei valori che non si stanno prendendo in considerazione, è possibile aggiungere
una query di tipo FULL *
Al termine, salvare le modifiche, procedendo come nel caso precedente, esportando lo schema in
locale, cliccando sull’icona
Save, poi Advanced e “Export schema”
Successivamente sarà possibile
caricare la dashboard
personalizzata, cliccando
sull’icona Load
Versione 1.1.2 – Gennaio 20164.4 Istogramma su base url:
Caso d'uso: Cercare su Kibana i log relativi agli ultimi 30 giorni contenenti nel campo URL la
stringa /sis/FSE/, e impostare un grafico a Istogramma
In Time Filter scelgo “Last 30d”
Il filtro impostato compare correttamente nella sezione apposite:
Ora, nei log, scelgo un ulteriore filtro in base al campo URL:
Cliccando su URL posso scegliere il valore da filtrare, in questo caso /sis/FSEPer impostare il filtro clicco sulla A questo punto visualizzo insieme al filtro relativo alla data, il nuovo filtro impostato correttamente: Volendo contare solo gli accessi alla home, devo togliere le chiamate diverse. Per farlo imposto ancora un filtro sul campo URL, stavolta con il valore "/sis/FSE/help.json" e scegliendo poi, nel riquadro Filtering, la condizione “Must Not”: Procedo allo stesso modo per eliminare tutte le chiamate che contengono /sis/FSE :
A questo punto posso cliccare su Add Panel e scegliere HISTOGRAM: Poi confermo cliccando su Save Così facendo ho impostato un Istogramma come questo:
Agendo sulla tendina Interval scelgo l’intervallo di date da visualizzare:
Puoi anche leggere