Monitoring aplikacji i usług na Elastic APM
Sprawdzamy, czy aplikacje i usługi działają, jak szybko odpowiadają i gdzie pojawiają się błędy. Łączymy metryki, logi i ślady żądań (APM) w Elastic Observability, a dane zbieramy także przez OpenTelemetry. Dzięki temu zespół szybciej znajduje przyczynę problemu.
Z czym zgłaszają się zespoły aplikacyjne
-
Aplikacja jest wolna, a nie wiadomo dlaczego
Użytkownicy narzekają, a metryki serwera wyglądają dobrze. Ślady żądań pokazują, która część aplikacji lub zapytanie do bazy zajmuje najwięcej czasu.
-
Błędy wychodzą dopiero ze zgłoszeń
Wyjątki w kodzie zostają w logach, których nikt nie czyta. Zbieramy je i pokazujemy razem z kontekstem żądania.
-
Nie wiadomo, czy usługa jest dostępna
Strona albo API przestaje odpowiadać poza godzinami pracy. Sprawdzamy dostępność z zewnątrz i alarmujemy od razu.
-
Wiele usług, jedna awaria
W architekturze z mikroserwisami trudno odnaleźć źródło problemu. Ślady rozproszone pokazują drogę żądania przez wszystkie usługi.
Monitoring infrastruktury mówi, że serwer działa. Monitoring aplikacji mówi, czy działa to, po co ten serwer powstał: czy użytkownik może zalogować się, złożyć zamówienie albo pobrać dane i ile to trwa.
Dane o aplikacjach zbieramy w tej samej platformie co infrastrukturę i logi, więc przejście od objawu do przyczyny nie wymaga zmiany narzędzia. Wyniki pokazujemy na dashboardach dostosowanych do zespołów.
Jak wyceniamy
Cenę ustalamy po poznaniu aplikacji. Zależy od liczby aplikacji i usług, technologii, ilości danych, czasu ich przechowywania oraz zakresu utrzymania i dyżuru.
Co robimy
- Monitorujemy dostępność usług, stron WWW i interfejsów API sprawdzanych z zewnątrz
- Mierzymy czasy odpowiedzi i wskazujemy wolne fragmenty aplikacji
- Zbieramy błędy i wyjątki razem z kontekstem żądania
- Wdrażamy śledzenie żądań (APM) w aplikacjach, także z użyciem OpenTelemetry
- Łączymy metryki, logi i ślady, żeby przejść od alarmu do przyczyny
- Monitorujemy aplikacje webowe, usługi w chmurze i w środowiskach lokalnych
- Budujemy dashboardy i alerty dla zespołów aplikacyjnych
- Utrzymujemy platformę i pełnimy dyżur w zakresie z umowy
Dla kogo
- Odpowiadasz za aplikację, której przestój kosztuje firmę przychodu albo reputację
- Masz architekturę z wieloma usługami i trudno Ci znaleźć przyczynę błędu
- Chcesz wiedzieć o problemie przed klientami
- Rozwijasz aplikacje i potrzebujesz danych o ich wydajności po każdym wdrożeniu
Od alarmu do przyczyny
Sam alarm o błędzie to połowa informacji. Łączymy metryki, logi i ślady żądań, więc z jednego miejsca widać, co się zepsuło, gdzie i po jakim wdrożeniu.
- Ślady żądań przez wszystkie usługi (APM)
- Logi aplikacji powiązane z konkretnym żądaniem
- Porównanie zachowania aplikacji przed i po wdrożeniu
Dostępność i aplikacje webowe
Sprawdzamy, czy strona i API odpowiadają, jak szybko i z jakim kodem. Monitorujemy aplikacje webowe od strony użytkownika, a zespołom dajemy dane, na których oprą decyzje o wydajności.
- Kontrola dostępności z zewnątrz
- Czasy odpowiedzi i kody błędów
- Alerty z eskalacją do właściwego zespołu
Jak pracujemy
- 1
Rozpoznanie aplikacji
Poznajemy architekturę, technologie i miejsca, w których najczęściej pojawiają się problemy.
- 2
Plan pomiarów
Ustalamy, co mierzyć: dostępność, czasy odpowiedzi, błędy i ślady. Wybieramy agentów lub OpenTelemetry.
- 3
Wdrożenie
Instrumentujemy aplikacje, podłączamy źródła, budujemy dashboardy i alerty.
- 4
Utrzymanie i dyżur
Dostrajamy alerty po zmianach w aplikacji i reagujemy na zdarzenia w zakresie z umowy.
Doświadczenie
- Relipoint jest oficjalnym partnerem Elastic, a zespół ma akredytacje producenta w obszarze Observability.
Najczęstsze pytania
Czym jest APM?
APM (application performance monitoring) to śledzenie wydajności aplikacji. Pokazuje, ile trwa każde żądanie, które usługi przy nim pracują i gdzie powstają błędy.
Czy trzeba zmieniać kod aplikacji?
Zwykle niewiele. W wielu technologiach wystarczy dodać agenta lub bibliotekę OpenTelemetry. Zakres zmian ustalamy po przeglądzie aplikacji.
Czy monitorujecie aplikacje w chmurze?
Tak. Pracujemy z AWS, Azure i Google Cloud oraz z aplikacjami na własnych serwerach, i pokazujemy je w jednym systemie.
Czym monitoring aplikacji różni się od monitoringu infrastruktury?
Infrastruktura to serwery, sieć i chmura. Aplikacje to usługi, strony i API, które na nich działają. Zwykle wdrażamy oba rodzaje monitoringu, bo problem często leży na styku.
Zobacz także
-
Monitoring infrastruktury IT na Elastic
Serwery, sieć, serwerownia, sprzęt i chmury w jednym systemie monitoringu: dane, dashboardy i alerty na Elastic Stack.
-
Zarządzanie logami w Elasticsearch i Kibanie
Logi aplikacji, chmur, sieci, maszyn wirtualnych i hypervisorów w jednym miejscu: zbieranie, wyszukiwanie, retencja i alerty.
-
Dashboardy w Kibanie: wizualizacja danych, raporty i alerty
Dashboardy w Kibanie, a przy innych źródłach danych także w Grafanie: wykresy, mapy, tabele, raporty i alerty dla zespołów IT i zarządu.