Trochę dziwny tytuł, ale myślę, że dobrze oddaje sens tego co chcę dzisiaj przedstawić.
Chciałbym w kilku kolejnych wpisach przybliżyć narzędzia, które pomogą zwizualizować dane, które najprościej mówiąc, na osi X mają czas, a dokładniej timestamp.
ELK, robi mniej więcej to samo, ale w opisanym wcześniej przypadku konfiguracja opiera się ściśle na pliku csv z raportem. Niekoniecznie wizualizacja danych w czasie rzeczywistym wymaga pracy z plikiem.
Jmeter od wersji 2.13 jest zdolny do wyrzucania określonego zestawu danych do narzędzi tego typu, gatling potrafił to już od dawna 🙂 Nie daje to tak dużych możliwości jak w przypadku ELK (drill-down), ale w wielu miejscach może to być wystarczające.
Zarówno jmeter jak i gatling wykorzystuje do prezentacji danych w czasie rzeczywistym protokół graphite. Protokół ten jest wspierany przez bardzo wiele narzędzi służących do monitoringu i/lub analizy danych.
Podstawowym narzędziem do zbierania danych z wykorzystaniem tegoż protokołu jest Graphite (dokumentacja). Graphite potrafi odebrać i przechować dane typu 'czasowego' – time-series, może je również w dość ascetyczny sposób zaprezentować. Graphite nie można wykorzystać do zebrania danych, ale istnieje mnóstwo narzędzi, które mogą do niego te dane przesłać.
Graphite w najprostszym rozwiązaniu składa się z 3 komponentów:
- carbon – demon odbierający dane,
- whisper – prosta baza zbierająca i przechowująca dane
- graphite webapp – aplikacja www do prezentacji danych
Instalacja jest niebanalna (instrukcja instalacji). Mi za pierwszym podejściem się nie udało 🙂
Ale od czego mamy docker’a. Można znaleźć w hub’ie sporo gotowych maszyn 🙂
W następnych wpisach opiszę krótko narzędzia, dzięki którym można rozszerzyć możliwości Graphite, czyli zostawić demona carbon, a resztę zastąpić czymś innym.
[…] Wizualizacja danych ‚czasowych’ 26 Maj 2015 […]