Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Bonjou, non mwen se Eugene, mwen se yon lidè ekip B2B nan Citymobil. Youn nan travay ekip nou an se sipòte entegrasyon pou kòmande yon taksi nan men patnè yo, epi pou nou asire yon sèvis ki estab, nou dwe toujou konprann sa k ap pase nan mikwosèvis nou yo. Se pou sa ou bezwen toujou ap kontwole mòso bwa yo.

Nan Citymobil, nou itilize pile ELK (ElasticSearch, Logstash, Kibana) pou travay ak mòso bwa, ak kantite done k ap vini la se gwo. Jwenn pwoblèm nan mas sa a nan demann ki ka parèt apre deplwaman nan nouvo kòd se byen difisil. Ak pou idantifikasyon vizyèl yo, Kibana gen yon seksyon Dashboard.

Gen kèk atik sou Habré ak egzanp sou fason yo mete kanpe yon pil ELK pou resevwa ak estoke done, men pa gen okenn materyèl ki enpòtan sou kreye yon Dashboard. Se poutèt sa, mwen vle montre ki jan yo kreye yon reprezantasyon vizyèl nan done ki baze sou mòso bwa ki fèk ap rantre nan Kibana.

ajisteman

Pou fè li pi klè, mwen te kreye yon imaj Docker ak ELK ak Filebeat. Epi mete yo nan yon veso yon ti pwogram lan nan Go, ki pou egzanp nou an pral jenere mòso bwa tès yo. Mwen pa pral dekri an detay konfigirasyon ELK, gen ase ekri sou li sou Habré.

Klone repozitwa konfigirasyon an docker-compose ak anviwònman ELK, epi lanse li ak lòd la docker-compose up. Entansyon pa ajoute yon kle -dpou wè pwogrè nan pil ELK la.

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

Si tout bagay configured kòrèkteman, Lè sa a, nou pral wè yon antre nan mòso bwa yo (petèt pa imedyatman, pwosesis la nan lanse yon veso ak chemine a tout antye ka pran plizyè minit):

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

Pa adrès la localhost:5061 Kibana ta dwe louvri.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Bagay la sèlman nou bezwen konfigirasyon se kreye yon Modèl Index pou Kibana ak enfòmasyon sou ki done yo montre. Pou fè sa, nou pral egzekite yon demann boukl oswa fè yon seri de aksyon nan koòdone grafik la.

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

Kreye yon modèl endèks atravè entèfas la
Pou konfigirasyon, chwazi seksyon Dekouvri nan meni gòch la, epi ale nan paj kreyasyon modèl Index la.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè nou klike sou bouton "Kreye modèl endèks la", nou rive nan paj kreyasyon endèks la. Nan jaden an "Non modèl Index", antre "logstash-*". Si tout bagay se configuré kòrèkteman, anba a Kibana pral montre endèks yo ki tonbe anba règ la.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nan pwochen paj la, chwazi jaden kle a ak yon timestamp, nan ka nou an li ye @timestamp.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Sa a pral parèt paj paramèt endèks la, men pa gen okenn lòt aksyon ki nesesè nan men nou nan moman sa a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Koulye a, nou ka ale nan Dekouvri seksyon an ankò, kote nou pral wè antre yo boutèy demi lit.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Dachbord

Nan meni gòch la, klike sou seksyon kreyasyon Dashboard la epi ale nan paj ki koresponn lan.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Klike sou "Kreye nouvo tablodbò" epi ale nan paj la pou ajoute objè nan tablodbò a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Klike sou "Kreye nouvo" bouton an, epi sistèm nan ap mande w chwazi ki kalite ekspozisyon done. Kibana gen yon gwo kantite yo, men nou pral gade nan kreye yon reprezantasyon grafik nan "Vètikal Bar la" ak yon tablo "Tablo Done". Lòt kalite prezantasyon yo configuré nan yon fason menm jan an. 
Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Gen kèk objè ki disponib yo make B ak E, ki vle di ke fòma a se eksperimantal oswa nan tès beta. Apre yon sèten tan, fòma a ka chanje oswa konplètman disparèt nan Kibana.

Bar vètikal

Pou egzanp "Vètikal Bar", ann kreye yon istogram nan rapò a nan sitiyasyon repons siksè ak san siksè nan sèvis nou an. Nan fen paramèt yo, nou jwenn graf sa a:

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nou pral klase tout demann ki gen yon sitiyasyon repons <400 kòm siksè, ak >= 400 kòm pwoblèm.

Pou kreye yon tablo "Vètikal Bar", nou bezwen chwazi yon sous done. Chwazi Modèl Index ke nou te kreye pi bonè.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Pa default, yon sèl graf solid ap parèt apre w fin chwazi yon sous done. Ann mete l kanpe.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nan blòk "Bokit la", peze bouton "Ajoute", chwazi "X-asis" epi mete kanpe aks X. Ann mete sou kote timestamps yo pou resevwa antre nan boutèy la. Nan jaden an "Agrégation", chwazi "Istogram Dat", ak nan "Jaden an" chwazi "@timestamp", ki endike jaden an tan. Ann kite "Entèval minimòm" nan eta "Oto", epi li pral otomatikman ajiste nan ekspozisyon nou an. 

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè w klike sou bouton "Mizajou", nou pral wè yon graf ak kantite demann chak 30 segonn.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Koulye a, ann mete kanpe kolòn yo sou aks Y a. Koulye a, nou ap montre kantite total demann nan entèval tan chwazi a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Ann chanje valè "Agrégation" an "Sum Bucket", ki pral pèmèt nou konbine done pou demann ki gen siksè ak demann san siksè. Nan Bokit la -> Blòk Agregasyon, chwazi agrégasyon an pa "Filtè" epi mete filtraj la pa "statusCode >= 400". Ak nan jaden "Personalize etikèt la", nou endike non nou an nan endikatè a pou yon ekspozisyon pi konprann nan lejand la sou tablo a ak nan lis jeneral la.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè w klike sou bouton "Mizajou" anba blòk paramèt la, n ap jwenn yon graf ak demann pwoblèm.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Si w klike sou sèk ki akote lejand la, yon fenèt ap parèt kote ou ka chanje koulè kolòn yo.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Koulye a, an n ajoute done sou demann siksè nan tablo a. Nan seksyon "Metrics", klike sou bouton "Ajoute" epi chwazi "Y-aks".

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nan metrik kreye a, nou fè menm paramèt ak demann inèg. Se sèlman nan filtè a nou presize "statusCode < 400".

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè nou chanje koulè nouvo kolòn nan, nou jwenn yon ekspozisyon nan rapò a nan demann pwoblèm ak siksè.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè nou klike sou bouton "Save" ki anlè ekran an epi nou espesifye non an, nou pral wè premye tablo a sou tablodbò a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Tablo Done

Koulye a, konsidere tabular View "Tablo Done". Ann kreye yon tablo ak yon lis tout URL yo te mande yo ak kantite demann sa yo. Menm jan ak egzanp nan Bar vètikal, nou premye chwazi yon sous done.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Apre sa, yon tablo ak yon kolòn pral parèt sou ekran an, ki montre kantite total demann pou entèval tan chwazi a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nou pral sèlman chanje blòk "Bokit la". Klike sou bouton "Ajoute" epi chwazi "Divize ranje".

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nan jaden an "Agrégation", chwazi "Tèm". Ak nan jaden an parèt "Jaden" chwazi "url.keyword".

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Lè nou espesifye valè "Url" nan jaden "Personalize etikèt la" epi klike sou "Mizajou", nou pral jwenn tablo a vle ak kantite demann pou chak nan URL yo pou peryòd tan chwazi a.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Nan tèt ekran an, klike sou bouton an "Save" ankò epi presize non tab la, pou egzanp URL. Ann tounen nan tablodbò a epi wè tou de opinyon yo kreye.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa

Travay ak Dashboard

Lè nou kreye tablodbò a, nou mete sèlman paramèt vi prensipal yo nan paramèt objè ekspozisyon yo. Li pa fè okenn sans pou presize done pou filtè nan objè, pou egzanp, "ranje dat", "filtre pa useragent", "filtre pa peyi demann", elatriye. Li se pi plis pratik presize peryòd tan an vle oswa mete filtraj ki nesesè nan panèl la rechèch, ki sitiye pi wo a objè yo.

Kreye yon tablodbò nan Kibana pou kontwole mòso bwa
Filtè yo ajoute sou panèl sa a pral aplike nan tout Dashboard la, epi tout objè ekspozisyon yo pral rebati an akò ak done aktyèl filtre yo.

Konklizyon

Kibana se yon zouti pwisan ki pèmèt ou vizyalize nenpòt done nan yon fason pratik. Mwen te eseye montre anviwònman an nan de kalite prensipal yo nan ekspozisyon. Men, lòt kalite yo configuré nan yon fason menm jan an. Ak abondans nan anviwònman ke mwen te kite "dèyè sèn nan" pral pèmèt ou trè fleksib Customize tablo yo adapte bezwen ou yo.

Sous: www.habr.com

Add nouvo kòmantè