Logowanie
Ze względu, że aplikacja działa bez terminala, musi posiadać mechanizm logowania różnych błędów i komunikatów, w celu zdiagnozowania problemów z serwerem. Aktualnie ten serwer umożliwia logowanie:
-
krytycznych błędów serwera (wyświetlanych także w konsoli podczas działania programu),
-
nadchodzących zdarzeń (np. obsłużenie zapytania, wraz ze statusem jaki został zwrócony klientowi),
-
czasu wykonywania danej operacji od momentu startu serwera, wraz z identyfikatorem operacji i numerem wątku, który wykonuje operację (może być wykorzystane np. do rysowania wykresów opisujących działanie serwera),
-
komunikatów przydanych przy debugowaniu (wyświetlane w konsoli podczas działania serwera, ułatwiają wykrywanie błędów; można to wyłączyć ustawiając stałą HTTPServer.DEBUG na false i skompilować serwer ponownie).
Do logowania komunikatów serwera wykorzystane zostały klasy wchodzące w skład języka Java – java.util.logging.Logger, a następnie utworzonym obiektom logowania przypisano obiekty – handlery zapisujące logowane komunikaty do plików.
Serwer HTTP 