Twój serwer obsługuje każde żądanie, dostarcza każdą stronę i zapisuje każde zamówienie. Gdy ma problemy, Twoja strona zwalnia albo przestaje działać. Monitoring serwera pokazuje jego stan, zanim do tego dojdzie. Ten poradnik wyjaśnia, co monitorować, jak ustawić alerty i jak dbać o kondycję serwera.
Dlaczego stan serwera ma znaczenie
Problem z serwerem rzadko zaczyna się od awarii. Zaczyna się od dysku, który się zapełnia, pamięci, która wycieka, albo obciążenia, które rośnie z tygodnia na tydzień. Monitorując serwer, widzisz te trendy i możesz działać, póki jest jeszcze czas.
Rodzaje monitoringu serwera
Monitorowanie dostępności sprawdza z zewnątrz, czy Twoja strona i usługi odpowiadają. Zobacz monitorowanie dostępności.
Monitorowanie zasobów śledzi, co dzieje się wewnątrz serwera: CPU, pamięć, wykorzystanie dysku, ruch sieciowy i restarty. Agent serwerowy Uptimecheck raportuje te dane co minutę na Linuksie, macOS i Windowsie oraz wysyła alerty po przekroczeniu progów, przy restartach i gdy agent milknie. Zobacz monitoring serwerów.
Monitorowanie aplikacji śledzi Twój własny kod, na przykład zapytania do bazy danych i wywołania API. W przypadku publicznych API zewnętrzne sprawdzenia API weryfikują odpowiedzi, które dostają Twoi użytkownicy.
Razem odpowiadają na dwa pytania: czy to działa i czy zaraz przestanie działać?
Jak wybrać narzędzie do monitoringu serwera
Ustal, które serwery i metryki są ważne i jakich systemów operacyjnych używasz. Uptimecheck obsługuje Linuksa, Windowsa i macOS.
Wybieraj jedno miejsce na dostępność i zasoby, żeby awaria i jej przyczyna były widoczne obok siebie.
Sprawdź, jak konfiguruje się progi i alerty oraz dokąd mogą trafiać alerty.
Porównaj koszt z tym, ile zapłaciłbyś za kilka osobnych narzędzi.
Konfigurowanie alertów
Dobre alerty są rzadkie i konkretne. Ustaw progi, które ostrzegą Cię, zanim użytkownicy odczują problem, na przykład:
Wykorzystanie dysku powyżej 85%.
Średnie obciążenie (load average) powyżej liczby rdzeni CPU przez dłużej niż kilka minut.
Wykorzystanie pamięci i swapu, które utrzymuje się na wysokim poziomie, zamiast tylko chwilowo skoczyć.
Restart, którego nie planowałeś.
Krytyczne alerty kieruj do kanału, który ktoś przeczyta w nocy, na przykład jako powiadomienie push na telefon, a pozostałe na e-mail lub czat zespołu. Po pierwszych tygodniach dostrój progi, aby dostawać tylko te alerty, na które faktycznie reagujesz.
Przeglądanie logów serwera
Metryki mówią, że coś jest nie tak. Logi mówią dlaczego. Regularnie przeglądaj logi serwera WWW, aplikacji i systemu:
Wiele odpowiedzi 404 może wskazywać na niedziałające linki lub brakujące strony.
Powtarzające się błędy 500 wskazują na usterki aplikacji.
Wiele nieudanych logowań może wskazywać na atak brute force.
Rozwiązywanie typowych problemów z serwerem
Wolne ładowanie. Najpierw sprawdź CPU, obciążenie i pamięć. Wysokie wykorzystanie wskazuje na nieefektywny kod, zbyt małe zasoby albo proces, który wymknął się spod kontroli. Sprawdź też operacje I/O dysku i sieć.
Niedostępność. Ustal, czy serwer w ogóle jest osiągalny. Jeśli nie działa, zrestartuj go albo skontaktuj się z dostawcą hostingu. Jeśli działa, a strona nie, sprawdź logi serwera WWW i aplikacji.
Komunikaty o błędach. Błędy połączenia z bazą danych, problemy z uprawnieniami i błędy w kodzie zostawiają ślady w logach błędów. Zacznij od nich, a potem sprawdź ostatnie zmiany w konfiguracji i kodzie.
Dobre praktyki dbania o kondycję serwera
Aktualizuj oprogramowanie: system operacyjny, serwer WWW, bazę danych i środowisko uruchomieniowe języka.
Dostrój konfigurację: cache, kompresję i limity zasobów.
Regularnie twórz kopie zapasowe i testuj ich przywracanie.
Obserwuj wykorzystanie zasobów i planuj ich rozbudowę, zanim się skończą.
Wydajność strony a utrzymanie serwera
Czasy odpowiedzi mierzone z zewnątrz pokazują efekt wszystkiego, co dzieje się na serwerze. Sprawdzanie z więcej niż jednego regionu pomaga odróżnić problem z serwerem od problemu z siecią: jeśli wolno jest tylko w jednym regionie, serwer najprawdopodobniej działa prawidłowo.
Monitoring serwera a lepsze doświadczenie użytkowników
Odwiedzający odczuwają wysokie obciążenie CPU jako wolne strony, a pełny dysk jako błędy. Naprawienie tego, zanim problem się rozleje, oznacza szybsze strony i mniej nieudanych żądań. Sygnały bezpieczeństwa w logach, takie jak nietypowe próby logowania, pomagają też chronić odwiedzających.
Podsumowanie
Monitoruj dostępność z zewnątrz i zasoby od wewnątrz, ustaw alerty, które mają znaczenie, czytaj logi i dbaj o serwer. Takie połączenie zapobiega większości awarii, a pozostałe skraca.
Wypróbuj Uptimecheck za darmo przez 14 dni, bez karty kredytowej.