Bieżący status prac nad monitoringiem

W tzw. praniu zmieniłem nieco początkowe założenia, które w mojej opinii wydały mi się mało praktyczne i trochę bez sensu. Nie będzie np. w dashboardzie live loga, który będzie wyświetlał na bieżąco czy hosty są dostępne, czy też nie. Zamiast tego stworzyłem osobny odnośnik do podstrony zawierającej logi.

logiLogi

Są one posortowane malejąco względem daty. Najnowsze wpisy znajdują się na samej górze. Logi znajdują się w osobnej tabelce w bazie. Aby być w stanie logować zdarzenia z różnych hostów powiązałem ją z tabelką sysinfo za pomocą pola serverid. Poza tym zawiera takie informacje jak kategoria alertu (category) oraz czas wystąpienia zdarzenia (timestamp). Czas zdarzenia zapisany jest w formacie UNIX time, dzięki temu łatwo się sortuje i doskonale nadaje do dalszej obróbki przez aplikację. Ze względu na to, że oddzielny wątek dosyć często (co 3 sekundy) weryfikuje status działania hostów wprowadziłem minutowe opóźnienie w logowaniu kolejnych zdarzeń do tej tabelki. Uznałem, że nie ma sensu zalewać logów co kilka sekund informacją, że dany host (hosty?) nie działa. Dzięki temu tabelka nie będzie miała tendencji do nadmiernego puchnięcia.

Każdy typ zdarzenia ma przypisany własny kolor, dzięki temu na pierwszy rzut oka można ocenić co się działo z hostami. Logi posiadają wyszukiwarkę, więc można wpisując do niej nazwę interesującego nas hosta wyświetlić zdarzenia związane z tym konkretnym systemem.

hostinfoNotyfikacje

Poza wspomnianymi wcześniej logami panel www na bieżąco wyświetla komunikaty w momencie kiedy hosty są nieosiągalne bądź też znowu dostępne. Tutaj nic się nie zmieniło od czasu poprzedniego wpisu. Rozwinąłem nieco tę myśl i wprowadziłem zestaw dodatkowych ikon, które pokazują w jakim stanie jest system i która dystrybucja jest zainstalowana na hoście. Ikonki zmieniają się dynamicznie bez potrzeby odświeżania. Zmiana obejmuje nie tylko obszar dashboardu ale również stronę z informacjami na temat hosta. Poza tym dodałem znaczek, który opisuje słownie status hosta. Strona z informacjami ogólnymi zawiera również przełącznik, który umożliwia wyłączenie z monitoringu danego hosta. Jest to przydatna funkcja jeśli planujemy downtime maszyny, żeby wykonać na niej jakieś prace.

Na chwilę obecną funkcjonują trzy rodzaje stanów związanych z hostem:

  1. Unavailable: brak komunikacji z agentem
  2. Available: poprawna komunikacja z agentem
  3. Not monitored: wyłączone notyfikacje oraz logi

Fakt włączania oraz wyłączania hosta z monitoringu jest odnotowywany w logach.