Hello, magacaygu waa Eugene, waxaan ahay hogaamiyaha kooxda B2B ee Citymobil. Mid ka mid ah hawlaha kooxdayadu waa in aan taageerno isdhexgalka si looga dalbado tagsiga lammaaneyaasha, iyo si loo xaqiijiyo adeeg xasilloon, waa inaan mar walba fahamnaa waxa ka dhacaya adeegyadeena yaryar. Oo tan waxaad u baahan tahay inaad si joogto ah ula socoto diiwaannada.
Citymobil gudaheeda, waxaan isticmaalnaa xirmada ELK (ElasticSearch, Logstash, Kibana) si aan ugu shaqayno logs, iyo cadadka xogta halkaas ka imanaysa waa mid aad u badan. Helitaanka mashaakil ka mid ah codsiyada tirada badan ee soo bixi kara ka dib dejinta kood cusub waa arrin adag. Iyo aqoonsigooda aragga, Kibana waxay leedahay qayb Dashboard ah.
Waxaa jira maqaallo dhowr ah oo ku saabsan HabrΓ© oo wata tusaalayaal ku saabsan sida loo dejiyo xirmo ELK si loo helo loona kaydiyo xogta, laakiin ma jiraan waxyaabo khuseeya samaynta Dashboard-ka. Sidaa darteed, waxaan rabaa inaan tuso sida loo abuuro matalaad muuqaal ah oo xog ah oo ku saleysan diiwaannada soo galaya ee Kibana.
sixitaanka
Si aan u caddeeyo, waxaan sameeyay sawirka Docker oo leh ELK iyo Filebeat. Oo weel lagu riday in yar
Xir kaydka habaynta docker-compose
iyo ELK settings, oo ku bilow amarka docker-compose up
. Si ula kac ah oo aan furaha loogu darin -d
si loo arko horumarka xirmada ELK.
git clone https://github.com/et-soft/habr-elk
cd habr-elk
docker-compose up
Haddii wax walba si sax ah loo habeeyey, markaa waxaan arki doonaa gelitaanka diiwaanka (laga yaabee isla markiiba, habka bilaabista weelka oo dhan wuxuu qaadan karaa daqiiqado badan):
{"type":"log","@timestamp":"2020-09-20T05:55:14Z","tags":["info","http","server","Kibana"],"pid":6,"message":"http server running at http://0:5601"}
By ciwaanka localhost:5061
Kibana waa in la furaa.
Waxa kaliya ee aan u baahanahay inaan habeyno waa inaan abuurno Tusaha Tusaha ee Kibana oo wata macluumaadka ku saabsan xogta la muujinayo. Si tan loo sameeyo, waxaanu fulin doonaa codsiga curlka ama waxaanu samayn doonaa ficilo taxane ah gudaha garaafka garaafka.
$ 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"}}'
Abuuritaanka Hannaanka Tusaha iyada oo loo marayo GUI
Si loo habeeyo, dooro qaybta Discover ee liiska bidix, oo aad bogga abuurista Tusmada.
Markaad gujiso badhanka "Create index pattern", waxaan helnaa bogga abuurista index. Gudaha "Magaca Tusmada Tusmada", geli "logstash-*". Haddii wax walba si sax ah loo habeeyey, hoos Kibana waxay muujin doontaa tusmooyinka hoos yimaada qaanuunka.
Bogga xiga, dooro goobta muhiimka ah oo leh shaambad waqti, xaaladeena waa @timestamp
.
Tani waxay soo kicin doontaa bogga habaynta tusaha, laakiin wax tallaabo ah oo dheeraad ah noogama baahna wakhtigan.
Hadda waxaan mar kale aadi karnaa qaybta Discover, halkaas oo aan ku arki doono galitaanka log.
Looxaaga
Liiska bidix, dhagsii qaybta abuurista Dashboardka oo hel bogga u dhigma.
Guji "Sare dashboard cusub" oo hel bogga walxaha lagu daro Dashboard-ka.
Guji badhanka "Create new", oo nidaamku wuxuu kuu sheegi doonaa inaad doorato nooca xogta. Kibana waxay leedahay tiro badan oo iyaga ka mid ah, laakiin waxaan eegi doonaa samaynta sawir garaaf ah ee "Bar taagan" iyo tabular "Data Table". Noocyada kale ee soo bandhigida waxaa loo habeeyey si la mid ah.
Walxaha la heli karo qaarkood ayaa lagu calaamadeeyay B iyo E, taas oo macnaheedu yahay in qaabku yahay tijaabo ama tijaabada beta. Muddo ka dib, qaabka ayaa laga yaabaa inuu beddelo ama gebi ahaanba ka waayo Kibana.
Bar toosan
Tusaalaha βBarta toosanβ, aan abuurno histogaraam saamiga heerka jawaab celinta guusha iyo guul-darrada ee adeegeena. Dhammaadka dejinta, waxaan helnaa garaafka soo socda:
Waxaan u kala saari doonaa dhammaan codsiyada heerka jawaabta <400 inay yihiin kuwo guulaystay, iyo>= 400 inay yihiin dhibaato.
Si loo abuuro jaantus "Bar toosan", waxaan u baahanahay inaan doorano isha xogta. Dooro Tusmada Tusmada ee aan hore u abuurnay.
Sida caadiga ah, hal garaaf adag ayaa soo bixi doona ka dib marka la doorto ilaha xogta. Aan dhigno.
Qeybta "Baaldiyada", taabo batoonka "Add", dooro "X-asis" oo deji dhidibka X. Aynu dhinac iska dhigno jaangooyooyinka waqtiyada gelitaanka logga agtiisa ah. Goobta "Aggregation", dooro "Taariikhda Histogram", iyo "Field" dooro "@timestamp", taas oo muujinaysa goobta wakhtiga. Aan uga tagno "interval ugu yar" gobolka "Auto", oo waxay si toos ah ula qabsan doontaa bandhigayada.
Markaad gujiso badhanka "Cusbooneysii", waxaan arki doonaa garaaf leh tirada codsiyada 30 ilbiriqsi kasta.
Hadda aynu dejinno tiirarka ku teedsan dhidibka Y. Hadda waxaan soo bandhigaynaa tirada guud ee codsiyada muddada la doortay.
Aynu u beddelno qiimaha "Aggregation" una beddelno "Sum Bucket", taas oo noo oggolaan doonta inaan isku darno xogta codsiyada guuleysta iyo kuwa aan guulaysan. Baaldiga -> Isku-darka block, dooro isku-darka "Filters" oo ku dheji shaandhaynta "statusCode>= 400". Iyo goobta "calaamadaha gaarka ah", waxaan ku muujineynaa magacayada tilmaame si loo muujiyo muujinta la fahmi karo ee halyeeyga shaxda iyo liiska guud.
Markaad gujiso badhanka "Cusbooneysii" ee hoos yimaada xannibaadaha, waxaan heli doonaa garaaf leh codsiyo dhib ah.
Haddii aad gujiso goobada ku xigta halyeeyga, daaqad ayaa kuu soo baxaysa taas oo aad ka bedeli karto midabka tiirarka.
Hadda aan ku darno xogta codsiyada guulaystay shaxda Qeybta "Metrics", dhagsii badhanka "Add" oo dooro "dhidibka Y".
Halbeegga la abuuray, waxaanu ku samaynaa isla jaantusyada codsiyada khaldan. Kaliya shaandhada waxaan ku qeexnaa "statusCode <400".
Beddelidda midabka tiirka cusub, waxaan helnaa muujinta saamiga codsiyada dhibka leh iyo kuwa guuleysta.
Adigoo gujinaya batoonka "Save" ee ku yaala dhinaca sare ee shaashadda oo tilmaamaya magaca, waxaan ku arki doonaa shaxda ugu horeysa ee Dashboard-ka.
Jadwalka Xogta
Hadda ka fiirso aragtida shaxda "Table Data". Aan abuurno miis ay ku qoran yihiin dhammaan URL-yada la codsaday iyo tirada codsiyadaas. Sida tusaalaha Bar Tooska ah, waxaan marka hore dooranaa isha xogta.
Intaa ka dib, miis leh hal tiir ayaa lagu soo bandhigi doonaa shaashadda, kaas oo muujinaya tirada guud ee codsiyada muddada la doortay.
Waxaan kaliya bedeli doonaa block "Baaldiyada". Guji badhanka "Add" oo dooro "Split safs".
Goobta "Aggregation", dooro "Shuruudaha". Iyo goobta muuqata "Field" dooro "url.keyword".
Marka la qeexo qiimaha "Url" ee goobta "calaamadaha gaarka ah" oo gujinaya "Cusbooneysii", waxaan heli doonaa shaxda la rabo oo leh tirada codsiyada URL kasta ee muddada la doortay.
Dhanka sare ee shaashadda, dhagsii badhanka "Save" mar kale oo cadee magaca miiska, tusaale ahaan Urls. Aan ku noqonno Dashboard-ka oo aragno labada aragtiyood ee la sameeyay.
La shaqaynta Dashboardka
Marka la abuurayo Dashboard-ka, waxaan dejineynaa kaliya cabbirrada aragtida ugu weyn ee goobaha shayga. Wax macno ah ma samaynayso in la cayimo xogta shaandhada shayga, tusaale ahaan, "kala duwanaanta taariikhda", "shaandhaynta adeegsadaha", "shaandhaynta codsiga waddanka", iwm. Aad bay ugu habboon tahay in la cayimo xilliga la rabo ama lagu dejiyo shaandhaynta lagama maarmaanka ah ee guddiga weydiinta, kaas oo ku yaal korka walxaha.
Shaandhooyinka lagu daray guddigan ayaa lagu dabaqi doonaa dhammaan Dashboard-ka, dhammaan walxaha la soo bandhigayna waa la dhisi doonaa si waafaqsan xogta dhabta ah ee la sifeeyay.
gunaanad
Kibana waa qalab awood leh oo kuu ogolaanaya inaad sawir kasta oo xog ah si habboon u sawirto. Waxaan isku dayay inaan muujiyo goobta labada nooc ee bandhigga ugu waaweyn. Laakiin noocyada kale waxaa loo habeeyey si la mid ah. Iyo dejinta faraha badan ee aan uga tagay "muuqaalka gadaasha" waxay kuu ogolaan doontaa inaad si dabacsanaan leh u habayso jaantusyada ku habboon baahiyahaaga.
Source: www.habr.com