Flopsar APM Diagnostyka i monitoring aplikacji Java performance analysis debugging aplikacji, problemy aplikacji w produkcji proces wytwarzania oprogramowania skalowanie oprogramowania
2. Agenda
Co to jest Flopsar
G坦wne cechy produktu
Po甜yteczne informacje
3. Co to jest Flopsar
Flopsar to:
Narzdzie do Detekcji Symptom坦w nieprawidowego dziaania
aplikacji w silnie obci甜onych rodowiskach produkcyjnych.
Narzdzie do Penej Diagnostyki aplikacji uruchamianych w
rodowiskach dev/test/prod.
W wersji 4 dla aplikacji opartych o JAVA.
Flopsar to:
System wspomagajcy zarzdzania wydajnoci i jakoci
oprogramowania dla zespo坦w DevOps.
O pomijalnie maym czasie wdro甜enia i konfiguracji.
Z minimaln krzyw nauki
System z elastyczn polityk licencyjn
4. Symptom Driven Diagnostics (SDD)
Autorska, automatyczna metoda odkrywania i
diagnostyki problem坦w w aplikacjach bazujca na
mechanizmach sztucznej inteligencji.
SDD skada si z 2 element坦w:
Kokpitu
Detekcja (czujki)
Klasyfikacja (kontrolki)
Notyfikacja (zapal-zga)
Komputera serwisowego
5. SDD - Automatyczna detekcja i
klasyfikacja
Kontrolki dla aplikacji (tu konakart)
Trzy typy kontolek:
Liczba wyjtk坦w/bd坦w
Wykres obci甜enia (Load) i wtk坦w (Thread)
Badane w kwantach czasowych (5 sek) czasy
odpowiedzi aplikacji
Niski (zielony)
redni (甜坦ty)
Wysoki (czerwony)
Liczba zarejestrowanych
symptom坦w
Szczeg坦y symptomu:
Dotyczce czasu odpowiedzi
Dotyczce bd坦w
6. PO CO CI TO?
Aby by informowany o anomaliach w
przetwarzaniu w aplikacji
Z pudeka. Bez konfiguracji
Aby natychmiast reagowa na problemy
Aby klasyfikowa i precyzowa problem
Bez wiedzy programistycznej
Bez wiedzy o merytoryce aplikacji
Aby w prosty spos坦b kierowa problem do dalszej
analizy, lub ignorowa nieistotne problemy
7. SDD Semi-Automatyczna Diagnostyka
Analiza czasu odpowiedzi aplikacji wraz z list metod w
kt坦rych dochodzi do wycieku wydajnoci.
Wypenienie wykresu to stosunek procentowy czasu
odpowiedzi do czasu oczekiwania:
Im bardziej zielony wykres, tym bardziej czas odpowiedzi
Gsto wyjtk坦w (stosunek liczby odpowiedzi do liczby
wyjtk坦w) wraz z list typ坦w wyjtk坦w.
Tu np. PSQLException oznacza problem z baz danych
8. Pena diagnostyka aplikacji
Aby diagnostyka aplikacji dziaaa poprawnie, nale甜y odpowiednio zdefiniowa spos坦b
pozyskiwania danych, oraz szczeg坦owo danych. We Flopsar robimy to w nastpujcy
spos坦b:
Konfiguracja (semi-automatyczna)
Automatyczne odkrywanie struktury aplikacji
atwa mo甜liwoci rcznej konfiguracji.
Centralny Rejestr Konfiguracji
Dynamiczna konfiguracja, bez potrzeby restartu aplikacji
Profile konfiguracyjne automatycznie przypisywane do aplikacji
Wsparcie dla mikro serwis坦w i automatycznie skalowanych rodowisk
kontenerowych
Dane
Raportowanie ka甜dej transakcji wraz z drzewem wywoan i parametrami
metod oraz zwracanej wartoci
Raportowanie ka甜dego bdu
Raportowania wartoci systemowych
Niskie obci甜enie (do 2%)
9. PO CO CI TO?
Konfiguracja
Aby konfigurowa monitoring/diagnostyk bez
wsparcia autor坦w aplikacji lub programist坦w
Aby nie traci czasu na dobieranie
odpowiedniej konfiguracji
Aby nie wprowadza zaburze do aplikacji
Aby nie przejmowa si odpowiednia
konfiguracj w dynamicznych rodowiskach
(np. Docker)
Pene dane
Aby analizowa pojedyncze przypadki
problem坦w
Aby prowadzi audyt u甜ycia aplikacji
Aby okrela pene SLA aplikacji
Aby zawsze okreli przyczyn powstawania
problem坦w
Aby historycznie analizowa zachowanie si
aplikacji
Aby zmniejszy zaanga甜owanie zespo坦w
devops
10. Przykad profili i regu. Automatyczne
przypisywanie profilu
Automatyczne ledzenie
komunikacji sieciowej
Raportowanie
konsumpcji CPU
11. Inteligentne podpowiedzi do profilu
Automatyczne podpowiedzi zwizane ze zbieraniem danych,
tak aby zachowa przewidywalny narzut (obci甜enie)
12. Raportowanie ka甜dej transakcji wraz z
drzewem wywoa i parametrami
Raportowanie ka甜dej transakcji od momentu rozpoczcia wykonywania jej na wtku (od pierwszego
komponentu speniajcego regu tzw. Entry Point) do zakoczenia przetwarzania
Mo甜liwo rejestrowania dowolnych parametr坦w metody (nawet je甜eli nie s serializowane)
oraz zwracanych wynik坦w
Lista transakcji
Parametry transakcji
Szczeg坦y transakcji (drzewo
wywoa metod) pokazywane
po dwu-klikniciu.
13. Raportowanie ka甜dego bdu
Flopsar raportuje drzewo (stack trace) dla ka甜dego bdu wygenerowanego w
monitorowanej aplikacji, bez wzgldu na to czy bd jest obsu甜ony czy nie (fraza try-
catch)
Funkcjonalno ta potrzebna jest min. do oceny, czy programici stosuj przepywy
sterowane wyjtkami (styl nieporzdany)
Przykadowe drzewo wywoania z bdem
18. Koszty oprogramowania.
Unikalna metoda konsumpcji licencji
Cakowita wolno w instalacji agent坦w:
Dowolne rodowisko (dev/test/prod)
Dowolna technologia (serwery aplikacji, mikroserwisy)
Dowolna liczba agent坦w, baz danych i przegldarek danych
Konsumpcja licencji nastpuje w momencie przypisania licencji do aplikacji.
Mo甜e by dowolnie zarzdzana.
19. Inne cechy licencji
Licencje we Flopsar s do甜ywotnie
Wsparcie jest opcjonalne. Jego koszt to 20% ceny
pojedynczej licencji.
R坦甜ne typy licencji
Per serwer aplikacji (JVM)
Per aplikacja (grupa serwer坦w)
Per przedsibiorstwo
Czasowe (do rozwizania problemu)
20. Inne cechy narzdzia
Minimalna krzywa uczenia
Maksymalnie 1 godzina aby sprawnie posugiwa si
przegldark (flopsar workstation) i definiowa wnioski
optymalizacyjne, czy diagnozowa przyczyny powstawania
awarii
Niski koszt utrzymania narzdzia
Typowa maszyna dedykowana do obsugi 100 agent坦w to 1
core i 8 GB pamici operacyjnej.
Pene wsparcie dla DevOps
Jedna aplikacja (przegldarka).
Kilka poziom坦w szczeg坦owoci
Od og坦u do szczeg坦u
21. Podsumowujc
Flopsar to innowacyjne narzdzie wspomagajce prac zespo坦w
odpowiedzialnych za wydajno i jako aplikacji
Z elastyczn polityk licencyjn
Z automatyczn detekcj symptom坦w nieprawidowego zachowania si
aplikacji
Z uproszczon metodologi okrelania przyczyny powstawania
problem坦w
Nasze dowiadczenie pokazuje, 甜e stosujc narzdzie Flopsar w caym cyklu
甜ycia oprogramowania uzyskujemy znaczne oszczdnoci. Oszczdnoci te
mog by atwo policzone na poziomie
Czasu obsugi incydent坦w/problem坦w
Zaanga甜owania osobowego
Szybszego dostarczenia niezawodnej funkcjonalnoci.