Moni, dzina langa ndine Eugene, ndine mtsogoleri wa gulu la B2B ku Citymobil. Imodzi mwa ntchito za gulu lathu ndikuthandizira kuphatikizika kwa kuyitanitsa taxi kuchokera kwa othandizana nawo, ndipo kuti tiwonetsetse kuti ntchito yokhazikika, tiyenera kumvetsetsa nthawi zonse zomwe zikuchitika mu ma microservices athu. Ndipo chifukwa cha izi muyenera kuyang'anira zipika nthawi zonse.
Ku Citymobil, timagwiritsa ntchito stack ELK (ElasticSearch, Logstash, Kibana) kuti tigwire ntchito ndi zipika, ndipo kuchuluka kwa deta komwe kumabwera kumeneko ndi kwakukulu. Kupeza zovuta pazopempha izi zomwe zingawonekere pambuyo pa kutumizidwa kwa code yatsopano ndizovuta. Ndipo pakuzindikiritsa kwawo, Kibana ali ndi gawo la Dashboard.
Pali zolemba zingapo za HabrΓ© zomwe zili ndi zitsanzo zamomwe mungakhazikitsire stack ya ELK kuti mulandire ndikusunga deta, koma palibe zida zoyenera pakupanga Dashboard. Chifukwa chake, ndikufuna kuwonetsa momwe ndingapangire chiwonetsero chazithunzi cha data potengera zipika zomwe zikubwera ku Kibana.
kusintha
Kuti zimveke bwino, ndinapanga chithunzi cha Docker ndi ELK ndi Filebeat. Ndipo anaika mu chidebe yaing'ono
Tsegulani config repository docker-compose
ndi makonda a ELK, ndikuyambitsa ndi lamulo docker-compose up
. Mwadala osawonjezera kiyi -d
kuti muwone kupita patsogolo kwa ELK stack.
git clone https://github.com/et-soft/habr-elk
cd habr-elk
docker-compose up
Ngati zonse zakonzedwa bwino, ndiye kuti tiwona kulowa mu zipika (mwina osati nthawi yomweyo, njira yoyambira chidebe ndi mulu wonse zingatenge mphindi zingapo):
{"type":"log","@timestamp":"2020-09-20T05:55:14Z","tags":["info","http","server","Kibana"],"pid":6,"message":"http server running at http://0:5601"}
Ndi adilesi localhost:5061
Kibana atsegule.
Chokhacho chomwe tikufunika kukonza ndikupanga Index Pattern ya Kibana yokhala ndi chidziwitso cha zomwe zikuyenera kuwonetsa. Kuti tichite izi, tipereka pempho la ma curl kapena kuchita zinthu zingapo pamawonekedwe azithunzi.
$ 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"}}'
Kupanga Index Pattern kudzera pa GUI
Kuti mukonze, sankhani gawo la Discover kumanzere kumanzere, ndikufika patsamba lopanga index la Index.
Mwa kuwonekera pa batani la "Pangani index index", timafika patsamba lopanga index. M'munda wa "Index pattern name", lowetsani "logstash-*". Ngati zonse zakonzedwa bwino, pansipa Kibana adzawonetsa ma index omwe amagwera pansi pa lamulo.
Patsamba lotsatira, sankhani gawo lofunikira lomwe lili ndi sitampu yanthawi, kwa ife ndi @timestamp
.
Izi zibweretsa tsamba la zokonda za index, koma palibe china chomwe chikufunika kuchokera kwa ife pakadali pano.
Tsopano tikhoza kupita ku gawo la Discover kachiwiri, kumene tidzawona zolemba za log.
lakutsogolo
Pamndandanda wakumanzere, dinani pagawo lopanga Dashboard ndikufika patsamba lofananira.
Dinani pa "Pangani dashboard yatsopano" ndikufika patsamba lowonjezera zinthu mu Dashboard.
Dinani pa batani la "Pangani chatsopano", ndipo dongosololi lidzakupangitsani kusankha mtundu wa chiwonetsero cha deta. Kibana ali ndi chiwerengero chachikulu cha iwo, koma tiwona kupanga chithunzithunzi cha "Vertical Bar" ndi tabular "Data Table". Mitundu ina ya mawonedwe amakonzedwa mofananamo.
Zinthu zina zomwe zilipo zimalembedwa B ndi E, zomwe zikutanthauza kuti mawonekedwe ake ndi oyesera kapena kuyesa kwa beta. M'kupita kwa nthawi, mawonekedwe akhoza kusintha kapena kutha kwathunthu ku Kibana.
Chotsatira cha Bar
Pachitsanzo cha "Vertical Bar", tiyeni tipange histogram ya chiyerekezo cha mayankho opambana komanso osachita bwino a ntchito yathu. Pamapeto pa zoikamo, timapeza graph iyi:
Tidzayika zopempha zonse ndi mayankho <400 monga opambana, ndi>= 400 ngati zovuta.
Kuti tipange tchati cha "Vertical Bar", tiyenera kusankha gwero la data. Sankhani Mtundu wa Index womwe tidapanga kale.
Mwachikhazikitso, graph imodzi yolimba idzawonekera mutasankha gwero la deta. Tiyeni tiyime.
Mu "Zidebe", pezani batani la "Add", sankhani "X-asis" ndikukhazikitsa X axis. M'munda wa "Aggregation", sankhani "Date Histogram", ndipo mu "Field" sankhani "@timestamp", kusonyeza nthawi. Tiyeni tisiye "Minimum interval" mu "Auto" state, ndipo imangosintha mawonekedwe athu.
Podina batani la "Sinthani", tiwona chithunzi chokhala ndi kuchuluka kwa zopempha masekondi 30 aliwonse.
Tsopano tiyeni tiyike mizati pamodzi ndi Y-axis Tsopano tikuwonetsa chiwerengero cha zopempha mu nthawi yosankhidwa.
Tiyeni tisinthe mtengo wa "Aggregation" kukhala "Sum Bucket", zomwe zitilola kuphatikizira deta pazopempha zopambana komanso zosachita bwino. Mu Chidebe -> Aggregation block, sankhani kuphatikiza ndi "Zosefera" ndikuyika kusefa ndi "statusCode> = 400". Ndipo m'gawo la "Custom label", tikuwonetsa dzina lathu lachizindikiro kuti tiwonetse bwino mu nthano yomwe ili pa tchati komanso pamndandanda wamba.
Podina batani la "Sinthani" pansi pa zoikamo, tipeza graph yokhala ndi zopempha zovuta.
Mukadina pabwalo pafupi ndi nthano, zenera lidzawonekera momwe mungasinthire mtundu wa mizati.
Tsopano tiyeni tiwonjeze zambiri pazopempha zopambana ku tchati. Mugawo la "Metrics", dinani batani la "Add" ndikusankha "Y-axis".
Mu metric yopangidwa, timapanga zosintha zomwezo ngati zopempha zolakwika. Pokhapokha mu fyuluta timatchula "statusCode <400".
Posintha mtundu wa gawo latsopano, timapeza chiwonetsero chazofunsa zovuta komanso zopambana.
Mwa kuwonekera batani la "Sungani" pamwamba pa chinsalu ndikutchula dzina, tidzawona tchati choyamba pa Dashboard.
Tebulo la Zambiri
Tsopano ganizirani mawonekedwe a tabular "Data Table". Tiyeni tipange tebulo lokhala ndi mndandanda wa ma URL onse omwe adafunsidwa komanso kuchuluka kwa zopemphazo. Monga chitsanzo cha Vertical Bar, choyamba timasankha gwero la deta.
Pambuyo pake, tebulo lomwe lili ndi gawo limodzi lidzawonetsedwa pazenera, zomwe zikuwonetsa kuchuluka kwa zopempha za nthawi yosankhidwa.
Tidzangosintha chipika cha "Buckets". Dinani "Add" batani ndi kusankha "Gawani mizere".
M'munda wa "Aggregation", sankhani "Terms". Ndipo m'munda wowonekera "Field" sankhani "url.keyword".
Potchula mtengo wa "Url" mugawo la "Custom label" ndikudina "Sinthani", tidzapeza tebulo lomwe mukufuna ndi kuchuluka kwa zopempha pa URL iliyonse pa nthawi yomwe mwasankha.
Pamwamba pa chinsalu, dinani batani la "Sungani" ndikutchula dzina la tebulo, mwachitsanzo ma Urls. Tiyeni tibwerere ku Dashboard kuti tiwone mawonedwe onse apangidwa.
Kugwira ntchito ndi Dashboard
Popanga Dashboard, timayika magawo akulu okha pazowonetsera zinthu. Ndizosamveka kutchula zosefera muzinthu, mwachitsanzo, "deti", "sefa ndi wogwiritsa ntchito", "sefa ndi dziko lofunsira", ndi zina. Ndikosavuta kutchula nthawi yomwe mukufuna kapena kuyika kusefa kofunikira mu gulu lamafunso, lomwe lili pamwamba pa zinthuzo.
Zosefera zomwe zawonjezeredwa pagululi zidzagwiritsidwa ntchito ku Dashboard yonse, ndipo zinthu zonse zowonetsera zidzamangidwanso motsatira zomwe zasefedwa.
Pomaliza
Kibana ndi chida champhamvu chomwe chimakupatsani mwayi wowonera deta iliyonse m'njira yabwino. Ndinayesa kusonyeza makonzedwe a mitundu iwiri ikuluikulu yowonetsera. Koma mitundu ina imakonzedwa mofananamo. Ndipo kuchuluka kwa makonda omwe ndidasiya "kumbuyo" kumakupatsani mwayi wosintha ma chart kuti agwirizane ndi zosowa zanu.
Source: www.habr.com