CodeGym /Kursy /Docker SELF /Wizualizacja logów w Kibana

Wizualizacja logów w Kibana

Docker SELF
Poziom 22 , Lekcja 2
Dostępny

8.1 Konfiguracja indeksu dla logów Docker

Do demonstracji stworzyłem obraz Docker z ELK i Filebeat, który zawiera testowy program do generowania logów. W tym przykładzie skupimy się na konfiguracji indeksu dla logów Docker w Kibana.

Krok 1: Klonowanie repozytorium i uruchomienie steka ELK

Pobierz repozytorium z konfiguracją Docker Compose dla steka ELK i odpal go:

Terminal

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

Dla wygody pominięto flagę -d, aby można było zobaczyć proces uruchamiania steka ELK. Start może zająć kilka minut. Po pomyślnym uruchomieniu w logach powinien pojawić się wpis:

Terminal

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

Krok 2: Dostęp do Kibana

Otwórz przeglądarkę internetową i przejdź pod adres http://localhost:5601.

Krok 3: Konfiguracja indeksu dla logów

Wybierz w lewym menu Kibana sekcję Discover, aby przejść na stronę tworzenia indeksu.

Krok 4: Tworzenie nowego indeksu

Kliknij przycisk Create index pattern, aby otworzyć formularz konfiguracji. W polu Index pattern name wpisz logstash-*. Jeśli konfiguracja została wykonana poprawnie, Kibana pokaże indeksy zgodne z regułą.

Krok 5: Wybór pola czasowego

Na następnej stronie wybierz kluczowe pole z oznaczeniem czasu — @timestamp.

Krok 6: Sprawdzenie indeksu

Po zakończeniu konfiguracji zobaczysz stronę ustawień indeksu. Obecnie nie są wymagane dodatkowe działania.

Krok 7: Podgląd logów

Przejdź z powrotem do sekcji Discover, gdzie będą wyświetlane rekordy logów z kontenerów Docker.

8.2 Tworzenie dashboardów dla wizualizacji logów

Krok 1. Stwórz dashboardy dla wizualizacji logów

W lewym menu klikamy na sekcję "Dashboard" — to nas zaprowadzi na stronę, gdzie tworzymy dashboardy.

Krok 2. Klikamy na «Create new dashboard», a system przeniesie nas na ekran, gdzie możemy dodać obiekty do naszego Dashboarda.

Krok 3. Klikamy przycisk «Create new», a Kibana zaproponuje nam wybór sposobu prezentacji danych. Opcji jest sporo, ale jako przykład omówimy dwa — wykresy w stylu «Vertical Bar» oraz tabelaryczne przedstawienie «Data Table». Wszystko inne konfiguruje się podobnie.

8.3 Histogram logów

Zróbmy na przykładzie „Vertical Bar” histogram, który pokaże proporcję między udanymi a nieudanymi zapytaniami do serwisu. Po konfiguracji powstanie coś takiego:

Do udanych należą zapytania z kodem odpowiedzi < 400, a wszystkie >= 400 traktujemy jako problematyczne.

Najpierw trzeba wybrać źródło danych dla wykresu. Wybieramy Index Pattern, który stworzyliśmy wcześniej.

Po wybraniu źródła domyślnie pojawi się jeden ogólny wykres. Skonfigurujmy go.

W sekcji „Buckets” klikamy „Add”, wybieramy „X-axis” i konfigurujemy oś X. Będą na niej odkładane znaczniki czasu. W polu „Aggregation” wybieramy „Date Histogram”, a w „Field” podajemy „@timestamp”. Pole „Minimum interval” można zostawić na „Auto”.

Klikamy „Update”, i na wykresie wyświetli się liczba zapytań co 30 sekund.

Teraz zajmijmy się konfiguracją słupków na osi Y. Obecnie wyświetla się całkowita liczba zapytań w danym przedziale czasu. Zmienimy agregację na „Sum Bucket”, aby dodać udane i problematyczne zapytania. W sekcji Bucket → Aggregation wybieramy „Filters” i ustawiamy filtr: „statusCode >= 400”. W polu „Custom label” wpisujemy zrozumiałą nazwę dla metryki.

Klikamy „Update”, i wykres będzie pokazywał tylko problematyczne zapytania.

Chcesz zmienić kolor słupków? Kliknij na kółko w legendzie wykresu, i pojawi się okno do wyboru koloru.

Teraz dodamy dane o udanych zapytaniach. W sekcji „Metrics” klikamy „Add” i wybieramy „Y-axis”. Konfigurujemy analogicznie, ale dla filtra podajemy „statusCode < 400”.

Zmieniamy kolor dla nowego słupka, i otrzymujemy wizualizację proporcji udanych i problematycznych zapytań.

Nie zapomnij zapisać wykresu, klikając „Save” w górnej części ekranu. Podaj nazwę, i znajdzie się on na Dashboard.

8.4 Tabela logów

Stwórzmy tabelę „Data Table”, żeby zobaczyć listę wszystkich URL, do których były zapytania, oraz ich ilość. Zaczynamy, tak samo jak w przypadku Vertical Bar, od wyboru źródła danych.

Po wyborze źródła na ekranie pojawi się tabela z jedną kolumną, gdzie pokazana jest ogólna liczba zapytań za wybrany przedział czasowy.

Teraz skonfigurujmy tabelę. Przechodzimy do bloku „Buckets”, klikamy „Add” i wybieramy „Split rows”.

W nowo otwartym polu „Aggregation” wybieramy „Terms”, a w „Field” wskazujemy „url.keyword”.

W polu „Custom label” wpisujemy zrozumiałą nazwę, na przykład „Url”. Następnie klikamy „Update” — i nasza tabela jest gotowa. Wyświetla się w niej liczba zapytań do każdego URL za dany przedział czasowy.

Aby zapisać tabelę, klikamy „Save” w górnej części ekranu, podajemy nazwę (na przykład „Urls”), i wracamy na Dashboard. Teraz widzimy oba stworzone wcześniej widoki.

Gotowy Dashboard z tabelą i wykresem
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION