Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Сәлем, менің атым Евгений, мен Citymobil компаниясында B2B тобының жетекшісімін. Біздің команданың міндеттерінің бірі серіктестерден таксиге тапсырыс беру үшін интеграцияны қолдау болып табылады және тұрақты қызмет көрсетуді қамтамасыз ету үшін біз әрқашан микросервисімізде не болып жатқанын түсінуіміз керек. Және бұл үшін журналдарды үнемі бақылап отыру керек.

Citymobil-де журналдармен жұмыс істеу үшін біз ELK стекін (ElasticSearch, Logstash, Kibana) қолданамыз және ол жерге келетін деректер көлемі өте үлкен. Жаңа кодты енгізгеннен кейін пайда болуы мүмкін сұраныстардың осы массасынан ақауларды табу өте қиын. Оларды визуалды сәйкестендіру үшін Kibana-да бақылау тақтасы бөлімі бар.

Деректерді қабылдау және сақтау үшін ELK стекін орнату мысалдары бар Habré туралы бірнеше мақалалар бар, бірақ бақылау тақтасын жасау бойынша тиісті материалдар жоқ. Сондықтан мен Кибанадағы кіріс журналдарына негізделген деректердің көрнекі көрінісін қалай жасау керектігін көрсеткім келеді.

реттеу

Түсінікті болу үшін мен ELK және Filebeat көмегімен Docker кескінін жасадым. Және кішкене контейнерге орналастырылған бағдарлама Go ішінде, ол біздің мысал үшін сынақ журналдарын жасайды. Мен ELK конфигурациясын егжей-тегжейлі сипаттамаймын, бұл туралы Хабреде жеткілікті жазылған.

Конфигурация репозиторийін клондаңыз docker-compose және ELK параметрлерін таңдап, оны пәрменмен іске қосыңыз docker-compose up. Кілтті әдейі қоспау -dELK стекінің орындалу барысын көру үшін.

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

Егер бәрі дұрыс конфигурацияланса, біз журналдарда жазбаны көреміз (бірден емес, бүкіл стекпен контейнерді іске қосу процесі бірнеше минутқа созылуы мүмкін):

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

Мекенжай бойынша localhost:5061 Кибана ашылуы керек.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Конфигурациялауымыз керек жалғыз нәрсе - қандай деректерді көрсету керектігі туралы ақпараты бар Kibana үшін индекс үлгісін жасау. Ол үшін біз бұйра сұрауды орындаймыз немесе графикалық интерфейсте бірқатар әрекеттерді орындаймыз.

$ 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 арқылы индекс үлгісін жасау
Конфигурациялау үшін сол жақ мәзірдегі «Табу» бөлімін таңдап, Индекс үлгісін жасау бетіне өтіңіз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Индекс үлгісін жасау» түймесін басу арқылы біз индексті жасау бетіне өтеміз. «Индекс үлгісінің атауы» өрісіне «logstash-*» енгізіңіз. Егер бәрі дұрыс конфигурацияланса, төменде Кибана ережеге сәйкес келетін индекстерді көрсетеді.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Келесі бетте уақыт белгісі бар негізгі өрісті таңдаңыз, біздің жағдайда бұл @timestamp.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Бұл индекс параметрлері бетін ашады, бірақ қазір бізден қосымша әрекет талап етілмейді.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Енді біз «Табу» бөліміне қайта бара аламыз, онда журнал жазбаларын көреміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Dashboard

Сол жақ мәзірде бақылау тақтасын жасау бөлімін нұқыңыз және сәйкес бетке өтіңіз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Жаңа бақылау тақтасын жасау» түймесін басып, бақылау тақтасына нысандарды қосу бетіне өтіңіз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Жаңа жасау» түймесін басыңыз, жүйе деректерді көрсету түрін таңдауды ұсынады. Кибанада олардың саны өте көп, бірақ біз «Тік жолақтың» графикалық көрінісін және кестелік «Деректер кестесін» құруды қарастырамыз. Презентацияның басқа түрлері де дәл осылай конфигурацияланады. 
Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Кейбір қолжетімді нысандар B және E деп белгіленеді, бұл пішім эксперименттік немесе бета сынақта екенін білдіреді. Уақыт өте келе формат Кибанадан өзгеруі немесе толығымен жойылуы мүмкін.

Тік жолақ

«Тік жолақ» мысалы үшін қызметіміздің сәтті және сәтсіз жауап күйлерінің арақатынасының гистограммасын жасайық. Параметрлердің соңында біз келесі графикті аламыз:

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Жауап күйі < 400 болатын барлық сұрауларды сәтті және >= 400 проблемалы деп жіктейміз.

«Тік жолақ» диаграммасын құру үшін бізге деректер көзін таңдау керек. Біз бұрын жасаған индекс үлгісін таңдаңыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Әдепкі бойынша деректер көзін таңдағаннан кейін бір тұтас график пайда болады. Оны реттейік.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Шөміштер» блогында «Қосу» түймесін басып, «X-asis» таңдаңыз және X осін орнатыңыз Журналдағы жазбаларды қабылдау уақыт белгілерін бір жаққа қалдырайық. «Агрегация» өрісінде «Күн гистограммасы» тармағын, ал «Өріс» бөлімінде уақыт өрісін көрсете отырып, «@уақыт белгісін» таңдаңыз. «Ең аз аралықты» «Авто» күйінде қалдырайық, ол біздің дисплейге автоматты түрде реттеледі. 

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Жаңарту» түймесін басу арқылы біз әрбір 30 секунд сайын сұраулар саны бар графикті көреміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Енді Y осі бойынша бағандарды орнатамыз.Енді біз таңдалған уақыт аралығындағы сұраныстардың жалпы санын көрсетеміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Сәтті және сәтсіз сұраулар үшін деректерді біріктіруге мүмкіндік беретін «Агрегация» мәнін «Қосынды шелегіне» өзгертейік. Шелек -> Агрегация блогында "Сүзгілер" арқылы біріктіруді таңдап, "statusCode >= 400" арқылы сүзуді орнатыңыз. Ал «Таңдамалы белгі» өрісінде біз диаграммадағы және жалпы тізімдегі таңбашада түсінікті көрсету үшін индикатордың атын көрсетеміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Параметрлер блогының астындағы «Жаңарту» түймесін басу арқылы біз проблемалық сұраулар бар графикті аламыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Аңыздың жанындағы шеңберді бассаңыз, бағандардың түсін өзгертуге болатын терезе пайда болады.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Енді диаграммаға сәтті сұраныстар туралы деректерді қосамыз. «Метрика» бөлімінде «Қосу» түймесін басып, «Y осін» таңдаңыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Жасалған метрикада қате сұраулар сияқты параметрлерді жасаймыз. Тек сүзгіде біз «statusCode < 400» көрсетеміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Жаңа бағанның түсін өзгерту арқылы біз проблемалық және сәтті сұраныстардың арақатынасының дисплейін аламыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Экранның жоғарғы жағындағы «Сақтау» түймесін басу және атауды көрсету арқылы біз бақылау тақтасында бірінші диаграмманы көреміз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Мәліметтер кестесі

Енді «Деректер кестесі» кестелік көрінісін қарастырыңыз. Сұралған барлық URL мекенжайларының тізімі және сол сұраулардың саны бар кестені құрайық. Тік жолақ мысалындағыдай, біз алдымен деректер көзін таңдаймыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Осыдан кейін экранда таңдалған уақыт аралығы үшін сұраныстардың жалпы санын көрсететін бір бағанасы бар кесте көрсетіледі.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Біз тек «Шелектер» блогын өзгертеміз. «Қосу» түймесін басып, «Жолдарды бөлу» таңдаңыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Агрегация» өрісінде «Шарттарды» таңдаңыз. Ал пайда болған «Өріс» өрісінде «url.keyword» таңдаңыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
«Пайдаланушы белгі» өрісінде «Url» мәнін көрсету және «Жаңарту» түймесін басу арқылы біз таңдалған уақыт кезеңі үшін URL мекенжайларының әрқайсысына сұраулар саны бар қажетті кестені аламыз.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Экранның жоғарғы жағындағы «Сақтау» түймесін қайтадан басып, кестенің атын көрсетіңіз, мысалы, URL мекенжайлары. Басқару тақтасына оралайық және жасалған екі көріністі де көрейік.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау

Бақылау тақтасымен жұмыс

Бақылау тақтасын жасау кезінде дисплей нысанының параметрлерінде тек негізгі көрініс параметрлерін орнатамыз. Нысандардағы сүзгілер үшін деректерді көрсетудің мағынасы жоқ, мысалы, «күндер ауқымы», «пайдаланушы агенті бойынша сүзу», «сұрау елі бойынша сүзу» және т.б. Қажетті уақыт аралығын көрсету немесе нысандардың үстінде орналасқан сұраулар тақтасында қажетті сүзуді орнату әлдеқайда ыңғайлы.

Журналдарды бақылау үшін Кибанада бақылау тақтасын жасау
Бұл панельге қосылған сүзгілер бүкіл бақылау тақтасына қолданылады және барлық дисплей нысандары нақты сүзілген деректерге сәйкес қайта құрылады.

қорытынды

Кибана - кез келген деректерді ыңғайлы түрде визуализациялауға мүмкіндік беретін қуатты құрал. Мен дисплейдің екі негізгі түрінің параметрін көрсетуге тырыстым. Бірақ басқа түрлер ұқсас жолмен конфигурацияланады. Мен «сахна артында» қалдырған параметрлердің көптігі диаграммаларды қажеттіліктеріңізге сәйкес өте икемді түрде теңшеуге мүмкіндік береді.

Ақпарат көзі: www.habr.com

пікір қалдыру