Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

Halo, nami abdi Eugene, abdi pamimpin tim B2B di Citymobil. Salah sahiji tugas tim kami nyaéta ngadukung integrasi pikeun mesen taksi ti mitra, sareng pikeun mastikeun jasa anu stabil, urang kedah ngartos naon anu lumangsung dina layanan mikro kami. Sareng pikeun ieu anjeun kedah terus-terusan ngawas log.

Dina Citymobil, kami nganggo tumpukan ELK (ElasticSearch, Logstash, Kibana) pikeun damel sareng log, sareng jumlah data anu sumping di dinya ageung. Pananjung masalah dina massa ieu requests nu bisa muncul sanggeus deployment kode anyar rada hese. Sareng pikeun idéntifikasi visualna, Kibana gaduh bagian Dashboard.

Aya sababaraha tulisan ngeunaan Habré sareng conto kumaha nyetél tumpukan ELK pikeun nampi sareng nyimpen data, tapi henteu aya bahan anu relevan pikeun nyiptakeun Dashboard. Ku alatan éta, abdi hoyong nunjukkeun kumaha carana nyieun ngagambarkeun visual data dumasar kana log asup di Kibana.

carana ngatur

Pikeun langkung jelas, kuring nyiptakeun gambar Docker sareng ELK sareng Filebeat. Jeung disimpen dina wadah leutik programna di Go, nu keur conto urang bakal ngahasilkeun test log. Kuring moal ngajelaskeun di jéntré konfigurasi ELK, aya cukup ditulis ngeunaan eta dina Habré.

Kloning gudang config docker-compose sareng setelan ELK, sareng jalankeunana nganggo paréntah docker-compose up. Ngahaja teu nambahan konci -dpikeun ningali kamajuan tumpukan ELK.

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

Upami sadayana dikonpigurasi leres, maka urang bakal ningali éntri dina log (panginten henteu langsung, prosés ngamimitian wadahna sareng sadayana tumpukan tiasa nyandak sababaraha menit):

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

Ku alamatna localhost:5061 Kibana kudu muka.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Hiji-hijina hal anu urang kedah ngonpigurasikeun nyaéta nyiptakeun Pola Indéks pikeun Kibana kalayan inpormasi ngeunaan data anu bakal ditampilkeun. Jang ngalampahkeun ieu, urang bakal ngaéksekusi pamundut curl atawa ngalakukeun runtuyan lampah dina panganteur grafis.

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

Nyiptakeun Pola Indéks via GUI
Pikeun ngonpigurasikeun, pilih bagian Discover dina ménu kénca, sareng angkat ka halaman nyiptakeun pola indéks.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku ngaklik tombol "Jieun pola indéks", urang nuju ka halaman nyiptakeun indéks. Dina widang "Ngaran pola indéks", lebetkeun "logstash-*". Upami sadayana dikonpigurasi leres, di handap Kibana bakal nunjukkeun indéks anu aya dina aturan.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Dina kaca hareup, pilih widang konci kalawan timestamp a, bisi urang éta @timestamp.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ieu bakal muka halaman setélan indéks, tapi teu aya tindakan salajengna anu diperyogikeun ti kami ayeuna.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

Ayeuna urang tiasa angkat ka bagian Discover deui, dimana urang bakal ningali éntri log.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

dasbor

Dina ménu kénca, klik dina bagian nyiptakeun Dashboard sareng angkat ka halaman anu saluyu.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Pencét "Jieun dasbor énggal" sareng angkat ka halaman pikeun nambihan objék kana Dashboard.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Pencét kana tombol "Jieun énggal", sareng sistem bakal nyarankeun anjeun milih jinis tampilan data. Kibana boga angka nu gede ngarupakeun aranjeunna, tapi urang bakal kasampak di nyieun ngagambarkeun grafis tina "Vertical Bar" sarta tabular "Data Table". Jenis presentasi anu sanés dikonpigurasi ku cara anu sami. 
Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Sababaraha objék anu aya dilabélan B sareng E, anu hartosna formatna ékspérimén atanapi dina uji béta. Lila-lila, formatna tiasa robih atanapi ngaleungit lengkep ti Kibana.

Bar nangtung

Pikeun conto "Vertical Bar", hayu urang jieun histogram rasio status réspon anu suksés sareng henteu suksés tina jasa kami. Dina ahir setélan, urang nampi grafik ieu:

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Urang bakal mengklasifikasikan sadaya pamundut kalayan status réspon <400 salaku suksés, sareng> = 400 salaku masalah.

Pikeun nyieun bagan "Vertical Bar", urang kedah milih sumber data. Pilih Pola Indéks anu urang jieun tadi.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Sacara standar, grafik solid tunggal bakal muncul saatos milih sumber data. Hayu urang nyetél éta.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Dina blok "Ember", pencét "Tambahkeun" tombol, pilih "X-asis" tur nyetel sumbu X. Hayu urang sisihkan timestamps tina éntri dina log sapanjang eta. Dina widang "Aggregation", pilih "Histogram Tanggal", sarta dina "Lapang" pilih "@timestamp", nunjukkeun widang waktu. Hayu urang tinggalkeun "interval minimum" dina kaayaan "Otomatis", sareng éta bakal otomatis nyaluyukeun kana tampilan urang. 

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku ngaklik tombol "Update", urang bakal ningali grafik kalayan jumlah pamundut unggal 30 detik.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ayeuna hayu urang nyetél kolom sapanjang sumbu Y. Ayeuna urang mintonkeun total jumlah requests dina interval waktu nu dipilih.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Hayu urang ngarobah nilai "Aggregation" jadi "Sum Ember", nu bakal ngidinan urang pikeun ngagabungkeun data pikeun requests suksés tur gagal. Dina blok Ember -> Aggregation, pilih aggregation ku "Filters" tur nyetel nyaring ku "statusCode>= 400". Sareng dina widang "Label khusus", kami nunjukkeun nami indikator pikeun tampilan anu langkung kaharti dina legenda dina bagan sareng dina daptar umum.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku ngaklik tombol "Update" dina blok setélan, urang bakal nampi grafik kalayan pamundut masalah.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Upami anjeun ngaklik bunderan gigireun legenda, jandela bakal muncul dimana anjeun tiasa ngarobih warna kolom.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ayeuna hayu urang tambahkeun data dina pamundut suksés ka bagan. Dina bagian "Metrics", klik tombol "Tambahkeun" tur pilih "Y-axis".

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Dina métrik anu diciptakeun, urang ngadamel setélan anu sami sareng pamundut anu salah. Ngan dina saringan urang tangtukeun "statusCode <400".

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku cara ngarobah warna kolom anyar, urang meunang tampilan rasio requests masalah jeung suksés.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku ngaklik tombol "Simpen" di luhureun layar tur nangtukeun nami, urang bakal ningali bagan munggaran dina Dashboard nu.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

Méja Data

Ayeuna mertimbangkeun tempoan tabular "Data Table". Hayu urang ngadamel méja kalayan daptar sadaya URL anu dipénta sareng jumlah pamundut éta. Sapertos conto Vertical Bar, urang mimiti milih sumber data.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Saatos éta, méja kalayan hiji kolom bakal ditingalikeun dina layar, anu nunjukkeun jumlah total pamundut pikeun interval waktos anu dipilih.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Urang ngan bakal ngarobah blok "Ember". Klik tombol "Tambahkeun" tur pilih "Split baris".

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Dina widang "Aggregation", pilih "Syarat". Sarta dina widang mucunghul "Lapang" pilih "url.keyword".

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Ku netepkeun nilai "Url" dina widang "Label khusus" sareng ngaklik "Update", urang bakal nampi tabel anu dipikahoyong kalayan jumlah pamundut pikeun tiap URL pikeun waktos anu dipilih.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Di luhureun layar, klik tombol "Simpen" deui jeung nangtukeun nami tabel, contona Urls. Hayu urang balik deui ka Dashboard tur tingal duanana pintonan dijieun.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log

Gawe sareng Dashboard

Nalika nyiptakeun Dashboard, urang ngan ukur nyetél parameter tampilan utama dina setélan obyék tampilan. Teu aya akal pikeun netepkeun data pikeun saringan dina objék, contona, "rentang tanggal", "nyaring ku agén pangguna", "nyaring ku nagara pamundut", jsb. Leuwih merenah pikeun nangtukeun periode waktu nu dipikahoyong atawa nyetel nyaring diperlukeun dina panel query, nu lokasina di luhur objék.

Nyiptakeun Dashboard di Kibana pikeun Ngawas Log
Saringan nu ditambahkeun kana panel ieu bakal dilarapkeun ka sakabéh Dashboard, sarta sakabeh objék tampilan bakal diwangun deui luyu jeung data disaring sabenerna.

kacindekan

Kibana mangrupikeun alat anu kuat anu ngamungkinkeun anjeun ngabayangkeun data naon waé dina cara anu gampang. Kuring diusahakeun nembongkeun setelan tina dua jenis utama tampilan. Tapi tipe séjén ngonpigurasi dina cara nu sarupa. Sareng seueur setélan anu kuring tinggalkeun "balik layar" bakal ngamungkinkeun anjeun sacara fleksibel ngaropea grafik pikeun nyocogkeun ka kabutuhan anjeun.

sumber: www.habr.com

Tambahkeun komentar