AGENT - Premwoik/Onitor GitHub Wiki
Zbierane informacje o monitorowanym serwerze
Plik odpowiedzialny za zbieranie informacji to collector.py
jego podzespoły to:
- SystemDataCollector - zbieranie informacji o systemie
- JournalLogCollector - odczytywanie logów systemowych i parsowanie
- AgentLogCollector - magazynowanie informacji o błędach w pracy agenta
Zbierane informacje przez agenta to:
- Obciążenie procesora
- Zajeteosc ram i dysku
- Ilość operacji dyskowych na sek.
- Temperatura
- Transmisja danych na interface'ach
- Logi o crash'ach
Modyfikowanie procesu zbierania informacji
W pliku config.json
znajdują się informacje na temat:
- zbieranych informacji przez agenta
- interwale czasu wysyłania danych do serwera
- co jaki czas ma być sprawdzany plik
config.json
- adres ip serwera na jaki agent wysyła zebrane dane
plik configuration.py
zarządza agentem ustawiając odpowiednio podzespoły zgodnie z informacjami zawartymi w config.json
Moduł przesyłania informacji do serwera
Plik odpowiedzialny za przesyłanie informacji o monitorowanym serwerze to rest.py
InfoJsonBuilder
- budowanie REST-owego zapytania (JSON)
Client
- wysyłanie zbudowanego zapytania
Użycie agenta
Rozpoczęcie procesu monitoringu serwera w tle
Rozpoczęcie procesu monitoringu serwera wraz z informacją o wysyłaniu danych do serwera
python3 agent.py no-daemon
Wyświetlenie informacji o agencie
Uruchomienie wszystkich testów
python3 -m unittest discover tests/
Pozostałe moduły
daemon.py
- plik odpowiedzialny za pracę w tle agenta
agent.py
- główna klasa - moduł służy do uruchamiania, inicjuje pracę agenta
Testy
test_collector.py
- testuje pracę collector.py
- zbierania informacji oraz parsowania informacji o monitorowanym serwerze
test_rest.py
- testuje pracę rest.py
- przygotowywania danych o monitorowanym serwerze oraz ich wysyłanie