Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Përshëndetje, emri im është Eugene, unë jam një drejtues ekipi B2B në Citymobil. Një nga detyrat e ekipit tonë është të mbështesë integrimet për porositjen e një taksi nga partnerët, dhe për të siguruar një shërbim të qëndrueshëm, duhet të kuptojmë gjithmonë se çfarë po ndodh në mikroshërbimet tona. Dhe për këtë ju duhet të monitoroni vazhdimisht regjistrat.

Në Citymobil, ne përdorim grupin ELK (ElasticSearch, Logstash, Kibana) për të punuar me regjistrat dhe sasia e të dhënave që vijnë atje është e madhe. Gjetja e problemeve në këtë masë kërkesash që mund të shfaqen pas vendosjes së kodit të ri është mjaft e vështirë. Dhe për identifikimin e tyre vizual, Kibana ka një seksion Dashboard.

Ka mjaft artikuj në Habré me shembuj se si të konfiguroni një pirg ELK për të marrë dhe ruajtur të dhëna, por nuk ka materiale përkatëse për krijimin e një Paneli. Prandaj, unë dua të tregoj se si të krijoj një paraqitje vizuale të të dhënave bazuar në regjistrat hyrës në Kibana.

rregullim

Për ta bërë më të qartë, krijova një imazh Docker me ELK dhe Filebeat. Dhe vendosim një të vogël në një enë programi në Go, e cila për shembullin tonë do të gjenerojë regjistrat e testimit. Unë nuk do të përshkruaj në detaje konfigurimin e ELK, ka mjaft të shkruara për të në Habré.

Klononi depon e konfigurimit docker-compose dhe cilësimet ELK dhe niseni me komandën docker-compose up. Mos shtimi i qëllimshëm i një çelësi -dpër të parë ecurinë e pirgut ELK.

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

Nëse gjithçka është konfiguruar saktë, atëherë do të shohim një hyrje në regjistrat (ndoshta jo menjëherë, procesi i nisjes së një kontejneri me të gjithë pirgun mund të zgjasë disa minuta):

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

Nga adresa localhost:5061 Kibana duhet të hapet.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
E vetmja gjë që duhet të konfigurojmë është të krijojmë një model indeksi për Kibana me informacion se cilat të dhëna duhet të shfaqen. Për ta bërë këtë, ne do të ekzekutojmë një kërkesë curl ose do të kryejmë një sërë veprimesh në ndërfaqen grafike.

$ 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"}}'

Krijimi i një modeli indeksi përmes GUI
Për të konfiguruar, zgjidhni seksionin Zbuloni në menynë e majtë dhe shkoni te faqja e krijimit të modelit të Indeksit.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke klikuar në butonin "Krijo modelin e indeksit", arrijmë në faqen e krijimit të indeksit. Në fushën "Emri i modelit të indeksit", shkruani "logstash-*". Nëse gjithçka është konfiguruar saktë, më poshtë Kibana do të tregojë indekset që bien nën rregull.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Në faqen tjetër, zgjidhni fushën kryesore me një vulë kohore, në rastin tonë është @timestamp.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Kjo do të shfaqë faqen e cilësimeve të indeksit, por nuk kërkohet asnjë veprim i mëtejshëm nga ne në këtë moment.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Tani mund të shkojmë sërish te seksioni "Zbulo", ku do të shohim hyrjet e regjistrit.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Profili

Në menunë e majtë, klikoni në seksionin e krijimit të panelit dhe shkoni në faqen përkatëse.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Klikoni në "Krijo pult të ri" dhe shkoni në faqen për shtimin e objekteve në panel.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Klikoni në butonin "Krijo të re" dhe sistemi do t'ju kërkojë të zgjidhni llojin e shfaqjes së të dhënave. Kibana ka një numër të madh të tyre, por ne do të shikojmë krijimin e një paraqitje grafike të "Shirit vertikal" dhe një "Tabela të të dhënave" në formë tabele. Llojet e tjera të prezantimit janë konfiguruar në mënyrë të ngjashme. 
Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Disa objekte të disponueshme emërtohen B dhe E, që do të thotë se formati është eksperimental ose në testim beta. Me kalimin e kohës, formati mund të ndryshojë ose të zhduket plotësisht nga Kibana.

Shirit vertikal

Për shembullin e "Shirit vertikal", le të krijojmë një histogram të raportit të statuseve të përgjigjeve të suksesshme dhe të pasuksesshme të shërbimit tonë. Në fund të cilësimeve, marrim grafikun e mëposhtëm:

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Ne do t'i klasifikojmë të gjitha kërkesat me status përgjigjeje < 400 si të suksesshme dhe >= 400 si problematike.

Për të krijuar një grafik "Shirit vertikal", duhet të zgjedhim një burim të dhënash. Zgjidhni modelin e indeksit që kemi krijuar më parë.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Si parazgjedhje, një grafik i vetëm solid do të shfaqet pas zgjedhjes së një burimi të dhënash. Le ta vendosim.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Në bllokun "Buckets", shtypni butonin "Shto", zgjidhni "X-asis" dhe vendosni boshtin X. Le të lëmë mënjanë vulat kohore të hyrjeve në regjistrin përgjatë tij. Në fushën "Aggregation", zgjidhni "Date Histogram", dhe në "Field" zgjidhni "@timestamp", duke treguar fushën e kohës. Le ta lëmë "Intervalin minimal" në gjendjen "Auto" dhe ai automatikisht do të përshtatet me ekranin tonë. 

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke klikuar në butonin "Përditëso", do të shohim një grafik me numrin e kërkesave çdo 30 sekonda.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Tani le të vendosim kolonat përgjatë boshtit Y. Tani po shfaqim numrin total të kërkesave në intervalin kohor të zgjedhur.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Le të ndryshojmë vlerën "Aggregation" në "Sum Bucket", e cila do të na lejojë të kombinojmë të dhënat për kërkesat e suksesshme dhe të pasuksesshme. Në bllokun Bucket -> Agregation, zgjidhni grumbullimin sipas "Filters" dhe vendosni filtrimin sipas "statusCode >= 400". Dhe në fushën "Etiketa me porosi", ne tregojmë emrin tonë të treguesit për një shfaqje më të kuptueshme në legjendë në grafik dhe në listën e përgjithshme.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke klikuar butonin "Përditëso" nën bllokun e cilësimeve, do të marrim një grafik me kërkesat e problemeve.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Nëse klikoni në rrethin pranë legjendës, do të shfaqet një dritare në të cilën mund të ndryshoni ngjyrën e kolonave.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Tani le të shtojmë të dhëna për kërkesat e suksesshme në grafik. Në seksionin "Metrics", klikoni butonin "Shto" dhe zgjidhni "Y-axis".

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Në metrikën e krijuar, ne bëjmë të njëjtat cilësime si për kërkesat e gabuara. Vetëm në filtër specifikojmë "statusCode < 400".

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke ndryshuar ngjyrën e kolonës së re, marrim një shfaqje të raportit të kërkesave problematike dhe të suksesshme.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke klikuar butonin "Ruaj" në krye të ekranit dhe duke specifikuar emrin, do të shohim grafikun e parë në Panel.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Tabela e të Dhënave

Tani merrni parasysh pamjen tabelare "Tabela e të dhënave". Le të krijojmë një tabelë me një listë të të gjitha URL-ve që janë kërkuar dhe numrin e atyre kërkesave. Ashtu si me shembullin e shiritit vertikal, ne fillimisht zgjedhim një burim të dhënash.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Pas kësaj, në ekran do të shfaqet një tabelë me një kolonë, e cila tregon numrin total të kërkesave për intervalin kohor të zgjedhur.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Ne do të ndryshojmë vetëm bllokun "Buckets". Klikoni butonin "Shto" dhe zgjidhni "Ndarja e rreshtave".

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Në fushën "Aggregation", zgjidhni "Terms". Dhe në fushën e shfaqur "Fusha" zgjidhni "url.keyword".

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Duke specifikuar vlerën "Url" në fushën "Etiketa e personalizuar" dhe duke klikuar "Përditëso", do të marrim tabelën e dëshiruar me numrin e kërkesave për secilën prej URL-ve për periudhën e zgjedhur kohore.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Në krye të ekranit, klikoni përsëri butonin "Ruaj" dhe specifikoni emrin e tabelës, për shembull Url. Le të kthehemi te Paneli dhe të shohim të dyja pamjet e krijuara.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat

Puna me panelin e kontrollit

Kur krijojmë panelin e kontrollit, ne vendosim vetëm parametrat kryesorë të pamjes në cilësimet e objektit të ekranit. Nuk ka kuptim të specifikoni të dhënat për filtrat në objekte, për shembull, "gama e datave", "filtrimi sipas agjentit të përdoruesit", "filtrimi sipas vendit të kërkesës", etj. Është shumë më i përshtatshëm të specifikoni periudhën kohore të dëshiruar ose të vendosni filtrimin e nevojshëm në panelin e pyetjeve, i cili ndodhet sipër objekteve.

Krijimi i një paneli kontrolli në Kibana për të monitoruar regjistrat
Filtrat e shtuar në këtë panel do të aplikohen në të gjithë panelin e kontrollit dhe të gjitha objektet e ekranit do të rindërtohen në përputhje me të dhënat aktuale të filtruara.

Përfundim

Kibana është një mjet i fuqishëm që ju lejon të vizualizoni çdo të dhënë në një mënyrë të përshtatshme. Unë u përpoqa të tregoja cilësimin e dy llojeve kryesore të ekranit. Por llojet e tjera janë konfiguruar në një mënyrë të ngjashme. Dhe bollëku i cilësimeve që lashë "prapa skenave" do t'ju lejojë të personalizoni në mënyrë shumë fleksibël grafikët për t'iu përshtatur nevojave tuaja.

Burimi: www.habr.com

Shto një koment