Kaabo, orukọ mi ni Eugene, Mo jẹ oludari ẹgbẹ B2B ni Citymobil. Ọkan ninu awọn iṣẹ-ṣiṣe ti ẹgbẹ wa ni lati ṣe atilẹyin awọn iṣọpọ fun pipaṣẹ takisi lati ọdọ awọn alabaṣepọ, ati lati rii daju iṣẹ iduroṣinṣin, a gbọdọ ni oye nigbagbogbo ohun ti n ṣẹlẹ ninu awọn iṣẹ microservices wa. Ati fun eyi o nilo lati ṣe atẹle nigbagbogbo awọn akọọlẹ.
Ni Ilumobil, a lo akopọ ELK (ElasticSearch, Logstash, Kibana) lati ṣiṣẹ pẹlu awọn akọọlẹ, ati iye data ti nbọ wa tobi. Wiwa awọn iṣoro ni ọpọlọpọ awọn ibeere ti o le han lẹhin imuṣiṣẹ koodu tuntun jẹ ohun ti o nira pupọ. Ati fun idanimọ wiwo wọn, Kibana ni apakan Dashboard kan.
Awọn nkan diẹ ni o wa lori Habré pẹlu awọn apẹẹrẹ ti bii o ṣe le ṣeto akopọ ELK lati gba ati tọju data, ṣugbọn ko si awọn ohun elo ti o yẹ lori ṣiṣẹda Dashboard kan. Nitorinaa, Mo fẹ ṣafihan bi o ṣe le ṣẹda aṣoju wiwo ti data ti o da lori awọn akọọlẹ ti nwọle ni Kibana.
Ṣe akanṣe
Lati jẹ ki o ṣe alaye diẹ sii, Mo ṣẹda aworan Docker pẹlu ELK ati Filebeat. Ati ki o gbe sinu apo kekere kan
Ti ẹda ibi ipamọ atunto docker-compose
ati awọn eto ELK, ati ṣe ifilọlẹ pẹlu aṣẹ naa docker-compose up
. Mọọmọ ko fi bọtini kan kun -d
lati wo ilọsiwaju ti akopọ ELK.
git clone https://github.com/et-soft/habr-elk
cd habr-elk
docker-compose up
Ti ohun gbogbo ba tunto ni deede, lẹhinna a yoo rii titẹsi kan ninu awọn akọọlẹ (boya kii ṣe lẹsẹkẹsẹ, ilana ti ifilọlẹ eiyan pẹlu gbogbo akopọ le gba awọn iṣẹju pupọ):
{"type":"log","@timestamp":"2020-09-20T05:55:14Z","tags":["info","http","server","Kibana"],"pid":6,"message":"http server running at http://0:5601"}
Nipa adirẹsi localhost:5061
Kibana yẹ ki o ṣii.
Ohun kan ṣoṣo ti a nilo lati tunto ni lati ṣẹda Atọka Atọka fun Kibana pẹlu alaye nipa kini data lati ṣafihan. Lati ṣe eyi, a yoo ṣiṣẹ ibeere curl tabi ṣe lẹsẹsẹ awọn iṣe ni wiwo ayaworan.
$ 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"}}'
Ṣiṣẹda Atọka Atọka nipasẹ GUI
Lati tunto, yan apakan Iwari ni akojọ osi, ki o lọ si oju-iwe ẹda Atọka.
Nipa tite lori bọtini “Ṣẹda ilana atọka”, a gba si oju-iwe ẹda atọka. Ni aaye "Orukọ apẹrẹ Atọka", tẹ "logstash-*". Ti ohun gbogbo ba tunto ni deede, ni isalẹ Kibana yoo ṣafihan awọn atọka ti o ṣubu labẹ ofin naa.
Ni oju-iwe ti o tẹle, yan aaye bọtini pẹlu aami timestamp, ninu ọran wa o jẹ @timestamp
.
Eyi yoo mu oju-iwe awọn eto atọka wa soke, ṣugbọn ko si iṣe siwaju ti o nilo lati ọdọ wa ni akoko yii.
Bayi a le lọ si apakan Iwari lẹẹkansi, nibiti a yoo rii awọn titẹ sii log.
Dashboard
Ni akojọ osi, tẹ lori apakan ẹda Dashboard ki o lọ si oju-iwe ti o baamu.
Tẹ “Ṣẹda dasibodu tuntun” ki o lọ si oju-iwe naa fun fifi awọn nkan kun si Dasibodu naa.
Tẹ bọtini “Ṣẹda tuntun”, eto naa yoo tọ ọ lati yan iru ifihan data. Kibana ni nọmba nla ninu wọn, ṣugbọn a yoo wo ṣiṣẹda aṣoju ayaworan ti “Pertical Bar” ati “Tabili Data” tabular kan. Awọn iru igbejade miiran ti wa ni tunto ni ọna kanna.
Diẹ ninu awọn nkan ti o wa ni aami B ati E, eyiti o tumọ si pe ọna kika jẹ idanwo tabi ni idanwo beta. Ni akoko pupọ, ọna kika le yipada tabi parẹ patapata lati Kibana.
Pẹpẹ inaro
Fun apẹẹrẹ “Pẹpẹ inaro”, jẹ ki a ṣẹda histogram kan ti ipin ti aṣeyọri ati awọn ipo idahun ti ko ni aṣeyọri ti iṣẹ wa. Ni ipari awọn eto, a gba aworan atẹle:
A yoo pin gbogbo awọn ibeere pẹlu ipo idahun <400 bi aṣeyọri, ati>= 400 bi iṣoro.
Lati ṣẹda iwe apẹrẹ “Pertical Bar”, a nilo lati yan orisun data kan. Yan Ilana Atọka ti a ṣẹda tẹlẹ.
Nipa aiyipada, aworan ti o lagbara kan yoo han lẹhin yiyan orisun data kan. Jẹ ká ṣeto soke.
Ninu “Buckets” bulọọki, tẹ bọtini “Fikun-un”, yan “X-asis” ki o ṣeto ipo X. Jẹ ki a ṣeto awọn akoko akoko fun gbigba awọn titẹ sii ninu akọọlẹ naa. Ninu aaye “Aggregation”, yan “Histogram Ọjọ”, ati ninu “Field” yan “@timestamp”, nfihan aaye akoko. Jẹ ki a fi “Aarin agbedemeji to kere” silẹ ni ipo “Aifọwọyi”, ati pe yoo ṣatunṣe laifọwọyi si ifihan wa.
Nipa tite bọtini “Imudojuiwọn”, a yoo rii aworan kan pẹlu nọmba awọn ibeere ni gbogbo iṣẹju-aaya 30.
Bayi jẹ ki ká ṣeto soke awọn ọwọn pẹlú awọn Y-axis. Bayi a ti wa ni han lapapọ nọmba ti awọn ibeere ni awọn ti o yan akoko aarin.
Jẹ ki a yipada iye “Aggregation” si “Apapọ Bucket”, eyiti yoo gba wa laaye lati ṣajọpọ data fun aṣeyọri ati awọn ibeere ti ko ni aṣeyọri. Ninu Bucket -> Àkọsílẹ Aggregation, yan akojọpọ nipasẹ "Awọn Ajọ" ati ṣeto sisẹ nipasẹ "statusCode>= 400". Ati ni aaye “aami Aṣa”, a tọka si orukọ atọka wa fun ifihan oye diẹ sii ninu itan-akọọlẹ lori chart ati ni atokọ gbogbogbo.
Nipa titẹ bọtini “Imudojuiwọn” labẹ idinamọ eto, a yoo gba ayaworan kan pẹlu awọn ibeere iṣoro.
Ti o ba tẹ lori Circle tókàn si arosọ, window kan yoo han ninu eyiti o le yi awọ ti awọn ọwọn pada.
Bayi jẹ ki a ṣafikun data lori awọn ibeere aṣeyọri si chart naa. Ni apakan "Metrics", tẹ bọtini "Fikun-un" ki o yan "Y-axis".
Ninu metiriki ti a ṣẹda, a ṣe awọn eto kanna bi fun awọn ibeere aṣiṣe. Nikan ninu àlẹmọ a pato "ipo koodu <400".
Nipa yiyipada awọ ti iwe tuntun, a gba ifihan ti ipin ti iṣoro ati awọn ibeere aṣeyọri.
Nipa tite bọtini “Fipamọ” ni oke iboju ati sisọ orukọ naa, a yoo rii apẹrẹ akọkọ lori Dasibodu naa.
Tabili data
Bayi ro awọn tabular view "Data Table". Jẹ ki a ṣẹda tabili kan pẹlu atokọ ti gbogbo awọn URL ti o beere ati nọmba awọn ibeere yẹn. Gẹgẹbi pẹlu apẹẹrẹ Pẹpẹ inaro, a kọkọ yan orisun data kan.
Lẹhin iyẹn, tabili pẹlu iwe kan yoo han loju iboju, eyiti o fihan nọmba lapapọ ti awọn ibeere fun aarin akoko ti o yan.
A yoo yi awọn Àkọsílẹ "Buckets" nikan. Tẹ bọtini “Fikun-un” ki o yan “Awọn ori ila pipin”.
Ni aaye "Akopọ", yan "Awọn ofin". Ati ninu aaye ti o han "Field" yan "url.keyword".
Nipa sisọ iye “Url” ni aaye “aami Aṣa” ati titẹ “Imudojuiwọn”, a yoo gba tabili ti o fẹ pẹlu nọmba awọn ibeere fun ọkọọkan awọn URL fun akoko ti a yan.
Ni oke iboju, tẹ bọtini "Fipamọ" lẹẹkansi ki o pato orukọ tabili, fun apẹẹrẹ Urls. Jẹ ki a pada si Dasibodu ki a wo awọn iwo mejeeji ti a ṣẹda.
Nṣiṣẹ pẹlu Dasibodu
Nigbati o ba ṣẹda Dasibodu, a ṣeto awọn aye wiwo akọkọ nikan ni awọn eto ohun ifihan. Ko ṣe oye lati pato data fun awọn asẹ ninu awọn nkan, fun apẹẹrẹ, “ibiti ọjọ”, “asẹjade nipasẹ oluṣe”, “sisẹ nipasẹ orilẹ-ede ibeere”, ati bẹbẹ lọ. O rọrun pupọ diẹ sii lati pato akoko akoko ti o fẹ tabi ṣeto sisẹ pataki ninu igbimọ ibeere, eyiti o wa loke awọn nkan naa.
Awọn asẹ ti a ṣafikun lori igbimọ yii yoo lo si gbogbo Dasibodu naa, ati pe gbogbo awọn ohun ifihan yoo jẹ atunko ni ibamu pẹlu data ti a ti yo gangan.
ipari
Kibana jẹ ohun elo ti o lagbara ti o fun ọ laaye lati wo eyikeyi data ni ọna irọrun. Mo gbiyanju lati ṣafihan eto ti awọn oriṣi akọkọ meji ti ifihan. Ṣugbọn awọn iru miiran ti wa ni tunto ni ọna kanna. Ati pe ọpọlọpọ awọn eto ti Mo fi silẹ “lẹhin awọn iwoye” yoo gba ọ laaye lati ṣe ni irọrun pupọ awọn shatti lati baamu awọn iwulo rẹ.
orisun: www.habr.com