Skapa en instrumentpanel i Kibana för att övervaka loggar

Skapa en instrumentpanel i Kibana för att övervaka loggar

Hej, jag heter Evgeniy och jag Àr B2B-teamledare pÄ Citymobil. En av vÄra teams uppgifter Àr att stödja integrationer för taxibestÀllningar frÄn partners, och för att sÀkerstÀlla en stabil tjÀnst mÄste vi alltid förstÄ vad som hÀnder i vÄra mikrotjÀnster. Och för att göra detta mÄste du stÀndigt övervaka loggarna.

PÄ Citymobil anvÀnder vi ELK-stacken (ElasticSearch, Logstash, Kibana) för att arbeta med loggar, och mÀngden data som kommer in dit Àr enorm. Det Àr ganska svÄrt att hitta problem i den hÀr massan av förfrÄgningar som kan uppstÄ efter att ny kod har distribuerats. Och för att visuellt identifiera dem har Kibana en instrumentpanelssektion.

Det finns en hel del artiklar om Habr med exempel pÄ hur man konfigurerar en ELK-stack för att ta emot och lagra data, men det finns inget relevant material om hur man skapar en Dashboard. SÄ jag vill visa dig hur du skapar en visuell representation av data baserat pÄ inkommande loggar i Kibana.

justering

För att göra det mer visuellt skapade jag en Docker-avbildning med ELK och Filebeat. Och placerade en liten i behÄllaren programmet i Go, vilket i vÄrt exempel genererar testloggar. Jag kommer inte att beskriva ELK-konfigurationen i detalj, det finns tillrÀckligt skrivet om den pÄ Habr.

Klona arkivet med konfigurationen docker-compose och ELK-instÀllningar, och starta det med kommandot docker-compose up. Jag lÀgger avsiktligt inte till nyckeln -d, för att se ELK-stacken köras.

git clone https://github.com/et-soft/habr-elk
cd habr-elk
docker-compose up

Om allt Àr korrekt konfigurerat kommer vi att se en post i loggarna (kanske inte direkt, processen att starta en container med hela stacken kan ta flera minuter):

{"type":"log","@timestamp":"2020-09-20T05:55:14Z","tags":["info","http","server","Kibana"],"pid":6,"message":"http server running at http://0:5601"}

adress localhost:5061 Kibana borde öppna.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Skapa en instrumentpanel i Kibana för att övervaka loggar
Det enda vi behöver konfigurera Àr att skapa ett indexmönster för Kibana med information om vilken data som ska visas. För att göra detta kommer vi att köra en curl-förfrÄgan eller utföra ett antal ÄtgÀrder i det grafiska grÀnssnittet.

$ curl -XPOST -D- 'http://localhost:5601/api/saved_objects/index-pattern'
    -H 'Content-Type: application/json'
    -H 'kbn-xsrf: true'
    -d '{"attributes":{"title":"logstash-*","timeFieldName":"@timestamp"}}'

Skapa ett indexmönster via det grafiska anvÀndargrÀnssnittet
För att konfigurera, vÀlj avsnittet UpptÀck i vÀnstermenyn sÄ kommer du till sidan för att skapa indexmönster.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att klicka pĂ„ knappen ”Skapa indexmönster” kommer vi till sidan för att skapa index. I fĂ€ltet "Indexmönsternamn" anger du "logstash-*". Om allt Ă€r korrekt konfigurerat kommer Kibana att visa de index som matchar regeln nedan.

Skapa en instrumentpanel i Kibana för att övervaka loggar
PÄ nÀsta sida vÀljer du nyckelfÀltet med tidsstÀmpeln, i vÄrt fall Àr det @timestamp.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Som ett resultat kommer sidan med indexinstÀllningar att visas, men nu krÀvs inga ytterligare ÄtgÀrder frÄn oss.

Skapa en instrumentpanel i Kibana för att övervaka loggar

Nu kan vi gÄ tillbaka till avsnittet UpptÀck dÀr vi ser loggposterna.

Skapa en instrumentpanel i Kibana för att övervaka loggar

Dashboard

I vÀnstermenyn klickar du pÄ avsnittet Skapa instrumentpanel sÄ kommer du till motsvarande sida.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Klicka pÄ "Skapa ny instrumentpanel" sÄ kommer du till sidan för att lÀgga till objekt i instrumentpanelen.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Klicka pĂ„ knappen ”Skapa ny” sĂ„ uppmanas du att vĂ€lja typ av datavisning. Det finns mĂ„nga av dem i Kibana, men vi ska titta pĂ„ att skapa en grafisk representation av den "vertikala stapeln" och en tabellformad "datatabell". De andra typerna av vyer konfigureras pĂ„ ett liknande sĂ€tt. 
Skapa en instrumentpanel i Kibana för att övervaka loggar
Vissa tillgÀngliga objekt Àr mÀrkta B och E, vilket betyder att formatet Àr experimentellt eller i betatestning. Med tiden kan formatet Àndras eller försvinna helt och hÄllet frÄn Kibana.

Vertikal bar

För exemplet "Vertikal stapel", lÄt oss skapa ett histogram över förhÄllandet mellan lyckade och misslyckade svarsstatusar för vÄr tjÀnst. NÀr instÀllningarna Àr klara fÄr vi följande graf:

Skapa en instrumentpanel i Kibana för att övervaka loggar
Vi kommer att betrakta alla förfrÄgningar med en svarsstatus < 400 som lyckade och >= 400 som problematiska.

För att skapa ett "vertikalt stapeldiagram" mÄste vi vÀlja en datakÀlla. VÀlj indexmönstret som vi skapade tidigare.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Som standard visas ett enda heldraget diagram efter att en datakÀlla har valts. LÄt oss stÀlla in det.

Skapa en instrumentpanel i Kibana för att övervaka loggar
I blocket "Buckets" klickar du pĂ„ knappen "LĂ€gg till", vĂ€ljer "X-axel" och stĂ€ller in X-axeln. Vi kommer att plotta tidsstĂ€mplarna för de mottagna posterna i loggen lĂ€ngs den. I fĂ€ltet ”Aggregering” vĂ€ljer du ”Datumhistogram” och i ”FĂ€lt” vĂ€ljer du ”@tidsstĂ€mpel”, vilket anger tidsfĂ€ltet. Vi lĂ€mnar "Minsta intervall" i tillstĂ„ndet "Auto", och det kommer automatiskt att justeras till vĂ„r skĂ€rm. 

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att klicka pÄ knappen "Uppdatera" ser vi ett diagram med antalet förfrÄgningar var 30:e sekund.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Nu ska vi stÀlla in kolumnerna pÄ Y-axeln. Just nu visar vi det totala antalet förfrÄgningar under det valda tidsintervallet.

Skapa en instrumentpanel i Kibana för att övervaka loggar
LĂ„t oss Ă€ndra vĂ€rdet "Aggregering" till "Sum Bucket", vilket gör att vi kan kombinera data frĂ„n lyckade och misslyckade förfrĂ„gningar. I blocket Bucket -> Aggregation, vĂ€lj aggregering med "Filters" och stĂ€ll in filtrering med "statusCode >= 400". Och i fĂ€ltet ”Anpassad etikett” anger vi vĂ„rt indikatornamn för en tydligare visning i förklaringen pĂ„ grafen och i den allmĂ€nna listan.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att klicka pĂ„ knappen ”Uppdatera” under instĂ€llningsblocket fĂ„r vi upp ett diagram med problematiska frĂ„gor.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Om du klickar pÄ cirkeln bredvid förklaringen visas ett fönster dÀr du kan Àndra fÀrgen pÄ kolumnerna.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Nu ska vi lĂ€gga till data om lyckade förfrĂ„gningar i grafen. I avsnittet ”MĂ€tvĂ€rden” klickar du pĂ„ knappen ”LĂ€gg till” och vĂ€ljer ”Y-axel”.

Skapa en instrumentpanel i Kibana för att övervaka loggar
I det skapade mĂ€tvĂ€rdet gör vi samma instĂ€llningar som för felaktiga förfrĂ„gningar. Endast i filtret anger vi “statusCode < 400”.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att Àndra fÀrgen pÄ den nya kolumnen fÄr vi en visning av förhÄllandet mellan problematiska och lyckade förfrÄgningar.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att klicka pÄ knappen "Spara" högst upp pÄ skÀrmen och ange ett namn ser vi det första diagrammet pÄ instrumentpanelen.

Skapa en instrumentpanel i Kibana för att övervaka loggar

data~~POS=TRUNC

Nu ska vi titta pÄ tabellvyn "Datatabell". LÄt oss skapa en tabell med en lista över alla URL:er som begÀrdes och antalet dessa förfrÄgningar. Precis som i exemplet med den vertikala stapeln, vÀlj först datakÀllan.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Efter detta visas en tabell med en kolumn pÄ skÀrmen, som visar det totala antalet förfrÄgningar för det valda tidsintervallet.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Vi kommer bara att Ă€ndra blocket "Hinkar". Klicka pĂ„ knappen ”LĂ€gg till” och vĂ€lj ”Dela rader”.

Skapa en instrumentpanel i Kibana för att övervaka loggar
I fĂ€ltet ”Aggregering” vĂ€ljer du ”Termer”. Och i fĂ€ltet ”FĂ€lt” som visas vĂ€ljer du ”url.keyword”.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Genom att ange vĂ€rdet ”Url” i fĂ€ltet ”Anpassad etikett” och klicka pĂ„ ”Uppdatera” fĂ„r vi önskad tabell med antalet förfrĂ„gningar för varje URL under den valda tidsperioden.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Klicka pĂ„ knappen ”Spara” igen högst upp pĂ„ skĂ€rmen och ange namnet pĂ„ tabellen, till exempel URL:er. LĂ„t oss gĂ„ tillbaka till instrumentpanelen och se bĂ„da vyerna vi skapade.

Skapa en instrumentpanel i Kibana för att övervaka loggar

Arbeta med instrumentpanelen

NÀr vi skapar instrumentpanelen stÀller vi bara in de grundlÀggande vyparametrarna i visningsobjektinstÀllningarna. Det Àr ingen idé att ange data för filter i objekt, till exempel "datumintervall", "filtrering efter anvÀndaragent", "filtrering efter begÀranland" etc. Det Àr mycket bekvÀmare att ange önskad tidsperiod eller stÀlla in nödvÀndig filtrering i frÄgepanelen, som finns ovanför objekten.

Skapa en instrumentpanel i Kibana för att övervaka loggar
Filter som lÀggs till i den hÀr panelen kommer att tillÀmpas pÄ hela instrumentpanelen, och alla visningsobjekt kommer att byggas om enligt den aktuella filtrerade informationen.

Slutsats

Kibana Àr ett kraftfullt verktyg som lÄter dig visualisera all data pÄ ett bekvÀmt sÀtt. Jag försökte visa uppstÀllningen av tvÄ huvudtyper av skÀrmar. Men Àven andra typer Àr konfigurerade pÄ ett liknande sÀtt. Och det stora utbudet av instÀllningar som jag lÀmnade "bakom kulisserna" gör att du mycket flexibelt kan anpassa graferna efter dina behov.

KĂ€lla: will.com

Köp pĂ„litlig hosting för webbplatser med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster