Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

Salam, mənim adım Eugene, mən Citymobildə B2B komandasının lideriyəm. Komandamızın vəzifələrindən biri partnyorlardan taksi sifariş etmək üçün inteqrasiyaları dəstəkləməkdir və dayanıqlı xidmət təmin etmək üçün mikroservislərimizdə nə baş verdiyini həmişə başa düşməliyik. Və bunun üçün qeydləri daim izləmək lazımdır.

Citymobil-də biz loglarla işləmək üçün ELK yığınından (ElasticSearch, Logstash, Kibana) istifadə edirik və ora gələn məlumatların miqdarı böyükdür. Yeni kodun yerləşdirilməsindən sonra yarana biləcək bu sorğu kütləsində problemləri tapmaq olduqca çətindir. Və onların vizual identifikasiyası üçün Kibanada Dashboard bölməsi var.

Habré-də məlumatların qəbulu və saxlanması üçün ELK yığınının necə qurulacağına dair nümunələrlə kifayət qədər bir neçə məqalə var, lakin İdarə Paneli yaratmaq üçün müvafiq materiallar yoxdur. Buna görə də, Kibana-da daxil olan qeydlər əsasında verilənlərin vizual təsvirinin necə yaradılacağını göstərmək istəyirəm.

nizamlama

Daha aydın olmaq üçün mən ELK və Filebeat ilə Docker şəkli yaratdım. Və kiçik bir konteynerə qoyulur proqramı Go-da, bizim nümunəmiz üçün test qeydləri yaradacaq. ELK konfiqurasiyasını ətraflı təsvir etməyəcəyəm, Habré-də bu barədə kifayət qədər yazılmışdır.

Konfiqurasiya deposunu klonlayın docker-compose və ELK parametrlərini seçin və əmrlə işə salın docker-compose up. Qəsdən açar əlavə etməmək -dELK yığınının gedişatını görmək üçün.

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

Hər şey düzgün konfiqurasiya edilibsə, onda biz qeydlərdə bir giriş görəcəyik (bəlkə də dərhal deyil, bütün yığınla konteynerin işə salınması prosesi bir neçə dəqiqə çəkə bilər):

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

Ünvan üzrə localhost:5061 Kibana açılmalıdır.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Konfiqurasiya etməmiz lazım olan yeganə şey, hansı məlumatların göstəriləcəyi ilə bağlı Kibana üçün İndeks Nümunəsi yaratmaqdır. Bunun üçün biz curl sorğusunu yerinə yetirəcəyik və ya qrafik interfeysdə bir sıra hərəkətləri yerinə yetirəcəyik.

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

GUI vasitəsilə İndeks Nümunəsinin yaradılması
Konfiqurasiya etmək üçün sol menyudan Discover bölməsini seçin və İndeks nümunəsinin yaradılması səhifəsinə keçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"İndeks nümunəsi yarat" düyməsini sıxaraq, indeks yaratma səhifəsinə keçirik. "İndeks nümunəsinin adı" sahəsinə "logstash-*" daxil edin. Hər şey düzgün konfiqurasiya edilibsə, aşağıda Kibana qaydaya düşən indeksləri göstərəcək.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Növbəti səhifədə vaxt möhürü olan açar sahəsini seçin, bizim vəziyyətimizdə belədir @timestamp.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Bu, indeks parametrləri səhifəsini açacaq, lakin hazırda bizdən əlavə hərəkət tələb olunmur.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

İndi biz yenidən Discover bölməsinə keçə bilərik, burada jurnal qeydlərini görəcəyik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

İdarə paneli

Sol menyuda Dashboard yaradılması bölməsinə klikləyin və müvafiq səhifəyə keçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Yeni tablosunu yarat" üzərinə klikləyin və İdarə panelinə obyektlər əlavə etmək üçün səhifəyə keçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Yeni yaradın" düyməsini basın və sistem sizə məlumat ekranının növünü seçməyi təklif edəcək. Kibana onların sayı çoxdur, lakin biz "Şaquli zolağın" qrafik təsvirinin və cədvəlli "Məlumat cədvəli"nin yaradılmasına baxacağıq. Digər təqdimat növləri də oxşar şəkildə konfiqurasiya edilmişdir. 
Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Bəzi mövcud obyektlər B və E ilə etiketlənir, bu o deməkdir ki, format eksperimentaldır və ya beta testdədir. Vaxt keçdikcə format Kibanadan dəyişə və ya tamamilə yox ola bilər.

Şaquli bar

"Şaquli Bar" nümunəsi üçün xidmətimizin uğurlu və uğursuz cavab statuslarının nisbətinin histoqramını yaradaq. Parametrlərin sonunda aşağıdakı qrafiki alırıq:

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Cavab statusu < 400 olan bütün sorğuları uğurlu, >= 400 isə problemli kimi təsnif edəcəyik.

"Şaquli Bar" diaqramı yaratmaq üçün məlumat mənbəyi seçməliyik. Daha əvvəl yaratdığımız İndeks Nümunəsini seçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Varsayılan olaraq, məlumat mənbəyi seçildikdən sonra tək möhkəm qrafik görünəcək. Gəlin onu quraşdıraq.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Buckets" blokunda "Əlavə et" düyməsini sıxın, "X-asis" seçin və X oxunu qurun.Gəlin jurnalda qeydlərin qəbulu üçün vaxt ştamplarını bir kənara qoyaq. “Aqreqasiya” sahəsində “Tarix histoqramı”nı, “Sahə”də isə vaxt sahəsini göstərən “@zaman damgası”nı seçin. Gəlin "Minimum interval"ı "Avtomatik" vəziyyətində buraxaq və o, avtomatik olaraq bizim displeyimizə uyğunlaşacaq. 

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Yeniləmə" düyməsini klikləməklə, hər 30 saniyədən bir sorğuların sayı ilə bir qrafik görəcəyik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
İndi Y oxu boyunca sütunları quraşdıraq.İndi biz seçilmiş vaxt intervalında sorğuların ümumi sayını göstəririk.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Uğurlu və uğursuz sorğular üçün məlumatları birləşdirməyə imkan verəcək "Aqreqasiya" dəyərini "Cəmi Kod" olaraq dəyişdirək. Bucket -> Aqreqasiya blokunda "Filtrlər" üzrə aqreqasiyanı seçin və filtrləməni "statusCode >= 400" ilə təyin edin. Və "Xüsusi etiket" sahəsində, diaqramdakı əfsanədə və ümumi siyahıda daha başa düşülən ekran üçün göstəricinin adını göstəririk.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Parametrlər blokunun altındakı "Yeniləmə" düyməsini klikləməklə, problem sorğuları olan bir qrafik alacağıq.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Əfsanənin yanındakı dairəni klikləsəniz, sütunların rəngini dəyişdirə biləcəyiniz bir pəncərə görünəcəkdir.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
İndi diaqrama uğurlu sorğular haqqında məlumatları əlavə edək. "Metriklər" bölməsində "Əlavə et" düyməsini basın və "Y oxu"nu seçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Yaradılmış metrikada biz səhv sorğularla eyni parametrləri edirik. Yalnız filtrdə biz "statusCode < 400" təyin edirik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Yeni sütunun rəngini dəyişdirməklə, problemli və uğurlu sorğuların nisbətinin görüntüsünü əldə edirik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Ekranın yuxarısındakı “Saxla” düyməsini sıxaraq və adı qeyd etməklə, İdarə panelində ilk diaqramı görəcəyik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

Məlumat Cədvəli

İndi "Məlumat Cədvəli" cədvəlli görünüşünü nəzərdən keçirin. Gəlin tələb olunan bütün URL-lərin siyahısı və həmin sorğuların sayı ilə cədvəl yaradaq. Vertical Bar nümunəsində olduğu kimi, biz əvvəlcə məlumat mənbəyi seçirik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Bundan sonra ekranda seçilmiş vaxt intervalı üçün sorğuların ümumi sayını göstərən bir sütunlu bir cədvəl görünəcək.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Biz yalnız "Buckets" blokunu dəyişəcəyik. "Əlavə et" düyməsini basın və "Sətirləri ayır" seçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Aqreqasiya" sahəsində "Şərtlər" seçin. Və görünən "Sahə" sahəsində "url.keyword" seçin.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
"Xüsusi etiket" sahəsində "Url" dəyərini göstərərək və "Yeniləmə" düyməsini klikləməklə, seçilmiş müddət üçün URL-lərin hər biri üçün sorğuların sayı ilə istədiyiniz cədvəli əldə edəcəyik.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Ekranın yuxarı hissəsində, yenidən "Saxla" düyməsini basın və cədvəlin adını, məsələn, Url-ləri göstərin. Gəlin İdarə Panelinə qayıdaq və yaradılan hər iki görünüşə baxaq.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq

Dashboard ilə işləmək

Dashboard yaratarkən, biz ekran obyekti parametrlərində yalnız əsas görünüş parametrlərini təyin edirik. Obyektlərdəki filtrlər üçün məlumatların təyin edilməsi mənasızdır, məsələn, “tarix diapazonu”, “istifadəçi agenti ilə filtrləmə”, “sorğu ölkəsi üzrə filtrləmə” və s. İstədiyiniz vaxt müddətini təyin etmək və ya obyektlərin üstündə yerləşən sorğu panelində lazımi filtrasiyanı təyin etmək daha rahatdır.

Qeydləri izləmək üçün Kibanada İdarə Paneli yaratmaq
Bu panelə əlavə edilmiş filtrlər bütün İdarə Panelinə tətbiq ediləcək və bütün displey obyektləri faktiki süzülmüş məlumatlara uyğun olaraq yenidən qurulacaq.

Nəticə

Kibana istənilən məlumatı rahat şəkildə vizuallaşdırmağa imkan verən güclü vasitədir. Mən iki əsas ekran növünün parametrlərini göstərməyə çalışdım. Ancaq digər növlər oxşar şəkildə konfiqurasiya edilir. Və "pərdə arxasında" qoyduğum parametrlərin çoxluğu sizə ehtiyaclarınıza uyğun olaraq qrafikləri çox çevik şəkildə fərdiləşdirməyə imkan verəcəkdir.

Mənbə: www.habr.com

Добавить комментарий