Guides 5 min czytania

Checklista monitorowania API: co sprawdzać poza 200 OK

API może zwracać 200 i mimo to nie działać. Praktyczna checklista monitorowania API: metody, nagłówki, treść żądań, uwierzytelnianie, oczekiwane odpowiedzi i progi czasu odpowiedzi.

Monitorowanie API polega na regularnym wysyłaniu prawdziwych żądań do Twojego API i sprawdzaniu, czy odpowiedzi są poprawne – a nie tylko, czy serwer odpowiedział. API, które zwraca 200 OK z pustą listą, komunikatem o błędzie w treści albo odpowiedzią po dziesięciu sekundach, jest zepsute dla aplikacji, które od niego zależą, choć proste sprawdzenie by przeszło. Ta checklista pokazuje, co skonfigurować, aby monitory API wyłapywały prawdziwe problemy.

1. Wybierz endpointy

Nie monitoruj wszystkiego. Monitoruj to, od czego zależą użytkownicy i integracje:

Endpoint health lub status, jeśli sprawdza zależności, takie jak baza danych. Endpoint health, który zwraca tylko „ok”, niczego nie sprawdzając, niewiele Ci powie.

Uwierzytelnianie: endpoint, który wydaje tokeny lub weryfikuje sesje. Jeśli on zawiedzie, zawiedzie wszystko.

Kluczowe endpointy odczytu: te, które Twoja aplikacja wywołuje na każdym ekranie, np. lista zamówień czy pobieranie profilu.

Krytyczne ścieżki zapisu: koszyk, rejestracja czy odbiorniki webhooków, monitorowane na danych testowych. Monitor przepływu wykonuje taką sekwencję wywołań API krok po kroku, przenosi wartości, takie jak token czy ID zamówienia, z jednego kroku do następnego i trzyma sekrety w ukryciu.

Zewnętrzne API, od których zależysz, np. operatorów płatności czy firm kurierskich, aby wiedzieć, kiedy problem nie leży po Twojej stronie. Monitorowanie usług zewnętrznych w Uptimecheck śledzi strony statusu 31 usług, takich jak Klarna, Shopify i Cloudflare, albo dowolną stronę hostowaną na Statuspage.

2. Skonfiguruj żądanie: metodę, nagłówki i treść

Sprawdzenie powinno wyglądać jak prawdziwe żądanie klienta:

Metoda: GET do odczytu, POST, PUT lub PATCH dla endpointów, które ich wymagają.

Nagłówki: Accept: application/json, Content-Type dla żądań z treścią oraz wszelkie własne nagłówki wymagane przez Twoje API, np. nagłówek wersji.

Treść: mały, poprawny payload dla żądań POST, np. zapytanie wyszukiwania.

Wybieraj żądania, które można bezpiecznie powtarzać co minutę. Unikaj endpointów, które tworzą prawdziwe zamówienia, wysyłają e-maile lub obciążają karty, chyba że używasz osobnego konta testowego.

3. Zadbaj o uwierzytelnianie

Większość API wymaga danych uwierzytelniających. Możliwości:

Basic auth dla prostych chronionych endpointów.

Klucz API lub bearer token w nagłówku, np. Authorization: Bearer <token>.

Utwórz osobne konto lub token do monitorowania z uprawnieniami tylko do odczytu. Ogranicza to szkody w razie wycieku tokena i oddziela ruch monitoringu w logach. Pamiętaj, że tokeny wygasają. Długoterminowy token tylko do odczytu przeznaczony do monitorowania pozwala uniknąć fałszywych alarmów, gdy krótkoterminowy token straci ważność.

4. Sprawdzaj kod statusu

Zdecyduj, które kody statusu oznaczają sukces. Zwykle to 200, 201 lub 204, zależnie od endpointu. Ostrożnie z przekierowaniami: API, które nagle przekierowuje na stronę logowania, zwraca 3xx, a potem 200 z HTML-em. Dla każdej aplikacji oczekującej JSON-a to awaria.

5. Sprawdzaj treść odpowiedzi

Tu zawodzi większość sprawdzeń API. Upewnij się, że odpowiedź zawiera coś, co zwróciłoby tylko działające API:

Pole, które zawsze powinno być obecne, np. „status”:”ok” lub „id”.

Znaną wartość z danych testowych.

Brak tekstu błędu, np. „error”.

W Uptimecheck dla każdego monitora API ustawiasz oczekiwane kody statusu, słowo kluczowe i sprawdzenia JSON – np. że $.status równa się ok albo że istnieje dany nagłówek – razem z metodą, nagłówkami (w tym basic auth lub bearer tokenem) i treścią żądania.

6. Ustaw progi czasu odpowiedzi

W świecie API wolno znaczy tyle co nie działa. Aplikacje mobilne przekraczają limity czasu, a integracje ponawiają żądania, co dokłada obciążenia. Zapisuj czas odpowiedzi przy każdym sprawdzeniu i ustaw próg na podstawie tego, co jest normalne:

Przejrzyj czasy odpowiedzi z tygodnia, aby ustalić punkt odniesienia.

Ustaw próg alertu wyraźnie powyżej normalnych wahań, np. dwa–trzy razy powyżej zwykłego czasu odpowiedzi.

Alarmuj przy utrzymującym się spowolnieniu, a nie pojedynczych skokach. Jedno wolne żądanie to szum, seria wolnych żądań to problem.

W Uptimecheck ustawiasz limit wolnej odpowiedzi dla każdego monitora i dostajesz alert, gdy trzy kolejne sprawdzenia są od niego wolniejsze, oraz kolejny, gdy odpowiedzi znów przyspieszą.

Sprawdzanie z więcej niż jednego regionu pokazuje, czy spowolnienie jest globalne, czy dotyczy tylko jednej ścieżki sieciowej. Uptimecheck sprawdza ze Sztokholmu, Londynu i Nowego Jorku i dzieli każdy czas odpowiedzi na DNS, połączenie, TLS, serwer i pobieranie, więc widzisz, kiedy zaczyna się spowolnienie i na co idzie czas.

7. Monitoruj cały łańcuch

API rzadko psuje się samo. Dodaj monitory dla tego, od czego zależy:

Certyfikaty SSL na hoście API. Wygasły certyfikat psuje wszystkich klientów naraz.

Rekordy DNS domeny API.

Zasoby serwerów, takie jak CPU, pamięć i dysk na serwerach API.

Zadania harmonogramu, które utrzymują aktualność danych – za pomocą heartbeatów.

8. Kieruj alerty do właściwych osób

Alerty API zwykle należą do programistów odpowiedzialnych za daną usługę. Wysyłaj je na kanał czatu zespołu, a przy awariach produkcji w nocy także na kanał, który dociera do telefonu. Używaj webhooków, aby przekazywać alerty do własnych narzędzi do obsługi incydentów. Zobacz powiadomienia.

9. Zautomatyzuj tworzenie monitorów

Jeśli często wdrażasz nowe usługi, twórz monitory w ramach wdrożenia. REST API Uptimecheck (Professional i Business) obsługuje monitory, okna serwisowe i aktualizacje statusu, a jego dokumentacja jest pod adresem app.uptimecheck.com/docs/api – dzięki temu monitorowanie może być częścią Twojego pipeline’u, a nie ręcznym krokiem po fakcie. Serwer MCP pozwala asystentom AI robić to samo za pomocą klucza API.

10. Informuj odbiorców API o tym, co się dzieje

Jeśli inne zespoły lub klienci budują na Twoim API, daj im stronę statusu z komponentem dla API. Dzięki temu podczas Twojej awarii nie będą debugować własnego kodu.

Najczęstsze błędy w monitorowaniu API

Sprawdzanie tylko endpointu health. Endpointy health często przechodzą, podczas gdy prawdziwe endpointy zawodzą, bo nie działa któraś zależność.

Używanie produkcyjnych danych logowania prawdziwego użytkownika. Gdy ten użytkownik zmieni hasło lub odejdzie, monitorowanie przestanie działać. Używaj osobnego konta.

Ignorowanie treści odpowiedzi. Strona błędu w HTML ze statusem 200 przejdzie sprawdzenie samego statusu.

Alerty przy każdej wolnej odpowiedzi. Pojedyncze skoki generują szum i uczą ludzi ignorować alerty.

Zapominanie o zależnościach. API działa, ale certyfikat wygasł albo rekord DNS się zmienił.

Checklista

Wybierz endpointy: health, uwierzytelnianie, kluczowe odczyty, krytyczne zapisy, najważniejsze zewnętrzne API.

Ustaw metodę, nagłówki i treść dla każdego sprawdzenia.

Używaj osobnego tokena tylko do odczytu lub danych basic auth.

Określ oczekiwane kody statusu.

Sprawdzaj treść: pole lub wartość, które zwraca tylko działające API.

Zapisuj czas odpowiedzi i alarmuj przy utrzymującym się spowolnieniu.

Sprawdzaj z więcej niż jednego regionu.

Monitoruj SSL, DNS, serwery i zadania harmonogramu stojące za API.

Kieruj alerty do zespołu odpowiedzialnego za usługę, z kanałem docierającym do telefonu dla produkcji.

Twórz monitory przez API w ramach wdrożeń.

Podsumowanie

200 OK to początek sprawdzenia API, a nie jego koniec. Wysyłaj realistyczne żądania, sprawdzaj treść, obserwuj czas odpowiedzi i obejmij monitoringiem cały łańcuch za API.

Monitorowanie API z własnymi metodami, nagłówkami, treścią żądań, sprawdzeniami JSON i alertami o wolnych odpowiedziach jest częścią każdego planu Uptimecheck. Wypróbuj za darmo przez 14 dni, bez karty kredytowej.

Pytania

Czym jest monitorowanie API?

Monitorowanie API regularnie wysyła prawdziwe żądania do endpointów Twojego API i sprawdza, czy zwracają właściwy status, właściwą treść i odpowiadają wystarczająco szybko. Gdy tak nie jest, dostajesz alert.

Czy mogę monitorować endpointy POST?

Tak, z własną metodą i treścią żądania. Używaj endpointów, które można bezpiecznie wywoływać wielokrotnie, takich jak wyszukiwanie czy walidacja, albo konta testowego, którego dane mogą się zmieniać.

Jak monitorować API, które wymaga uwierzytelniania?

Wysyłaj dane uwierzytelniające w ramach sprawdzenia: basic auth albo klucz API lub bearer token w nagłówku. Używaj osobnego konta do monitorowania z uprawnieniami tylko do odczytu.

Jak często sprawdzać API?

Co minutę w przypadku produkcyjnych API, od których zależą klienci lub aplikacje. Mniej krytyczne wewnętrzne API mogą mieć dłuższe interwały.

Czytaj dalej

Guides 7 min czytania

Jak zbudować endpoint health check (i go monitorować)

Endpoint health check mówi monitorom i load balancerom, czy Twoja aplikacja może obsługiwać żądania. Co sprawdzać, jak zachować szybkość i bezpieczeństwo, kod dla Laravela, Expressa i Flaska oraz jak go monitorować.

Czytaj

Guides 6 min czytania

MTTR, MTTA i MTBF – wyjaśnienie (i jak je poprawić)

MTTR, MTTA i MTBF mierzą, jak szybko naprawiasz incydenty, jak szybko reagujesz i jak często coś się psuje. Wzory, przykład z liczbami i praktyczne sposoby na poprawę każdego z nich.

Czytaj

Guides 7 min czytania

Jak ograniczyć fałszywe alerty w monitorowaniu dostępności

Fałszywe alerty uczą zespoły ignorować monitoring. Jak ograniczyć szum: potwierdzaj każdą awarię drugim testem, ustaw rozsądne limity czasu, sprawdzaj właściwy adres URL i kieruj alerty do osób, które mogą zareagować.

Czytaj

Przestoje to przeszłość.

Skonfiguruj pierwszy monitor w niecałą minutę albo najpierw rozejrzyj się w demo na żywo.

14 dni za darmo · Potem 5 monitorów gratis · Bez karty kredytowej