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.2
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
Organizzazione 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 2016
4.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/FSE
Per 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