Przejdź do treści głównej

Poradniki / Przewodniki po monitoringu: każdy typ kontroli krok po kroku

Jak skonfigurować monitoring API w HostTracker

Sprawdzenie API wysyła żądanie do endpointu tak samo jak sprawdzenie HTTP, a potem idzie o krok dalej: interpretuje treść odpowiedzi jako JSON, XML albo zwykły tekst i waliduje konkretną wartość wewnątrz niej, a nie tylko kod statusu. Użyj go dla endpointu REST albo SOAP, którego dane chcesz zweryfikować regułą, na przykład pole statusu, stan magazynowy albo cenę. Jeśli potrzebujesz tylko potwierdzić, że URL się wczytuje i zwraca akceptowalny status, prostszym wyborem jest sprawdzenie HTTP.

Ustawienia główne

Nie ma zrzutu ekranu tej sekcji dla typu API, ale używa ona tych samych wspólnych kontrolek, co każdy inny typ sprawdzenia. Monitorowanie włączone to główny przełącznik wł./wył. Harmonogram interwałów (od 1 minuty do 24 godzin, suwak albo lista rozwijana) albo kreator Harmonogramu cron (co N minut/godzin, dziennie, tygodniowo, miesięcznie albo niestandardowe wyrażenie, tylko w planie płatnym) kontroluje, jak często sprawdzenie się uruchamia. Limit czasu wynosi od 1 do 100 sekund; czas rozwiązywania DNS się nie liczy. Tagi to etykiety oddzielone przecinkami, do grupowania i filtrowania. Pełny dziennik zapisuje każdy wynik zamiast grupować identyczne, kolejne, a Otwarte statystyki publikuje statystyki i dziennik zadania pod publicznym linkiem. W odróżnieniu od HTTP, formularz API nie ma przełącznika DNSBL (DNSBL utrzymuje się tylko dla Http/Ping/Port); ma za to te same karty Wygaśnięcie domeny, Wygaśnięcie certyfikatu i Web Risk, każda uruchamiana co 12 godzin - przypomnienia o wygaśnięciu idą za Twoimi subskrypcjami Up poniżej, zły wynik idzie za Down/Repeat.

Konfiguracja żądania

Panel konfiguracji żądania dla sprawdzenia API: rozwijana lista Metoda HTTP ustawiona na GET, selektor zachowania przekierowań ustawiony na Podążaj za przekierowaniami z suwakiem Maksymalna liczba przekierowań na 20, pusta tabela Nagłówki HTTP, przełącznik Uwierzytelnianie żądania, rozwijana lista Wybór serwera DNS i przełącznik Wyłącz pamięć podręczną DNS
  • Metoda HTTP - GET, HEAD, POST, PUT, DELETE albo PATCH. GET (domyślnie) jest wymagane, by odczytać i przeanalizować treść odpowiedzi; HEAD pobiera tylko nagłówki.
  • Treść żądania (tylko POST/PUT/PATCH) - Surowa treść wysyła dokładnie to, co wpiszesz (dodaj własny nagłówek Content-Type, żeby opisać json/xml/plaintext); Parametry POST przyjmuje jedną parę KLUCZ=WARTOŚĆ na linię i jest wysyłane jako treść form-urlencoded.
  • Zachowanie przekierowań - Odpowiedź natychmiastowa ocenia pierwszą odpowiedź taką, jaka jest; Podążaj za przekierowaniami (domyślnie) podąża za łańcuchem, z suwakiem Maksymalna liczba przekierowań do podążenia (1-20); Przekierowanie to błąd zawodzi przy każdym przekierowaniu (niedostępne w trybie asercji).
  • Nagłówki HTTP - niestandardowe pary nazwa/wartość, z podpowiedziami datalist dla typowych nazw i wartości nagłówków API (Content-Type, Authorization, X-API-Key, prefiksy Bearer/Basic i inne). Pozostawione puste, sondowanie wysyła domyślne nagłówki (User-Agent, Accept, Accept-Language, Referer).
  • Uwierzytelnianie żądania - odsłania login/hasło dla własnego uwierzytelniania HTTP typu challenge serwera (Basic, Digest, NTLM, Kerberos, Negotiate). Dla tokenu bearer albo klucza API dodaj zamiast tego nagłówek Authorization powyżej.
  • Wybór serwera DNS - Domyślne serwery DNS w lokalizacjach; Publiczne serwery DNS kraju lokalizacji; albo Ręcznie zdefiniowane serwery DNS (Twoje własne adresy IP resolverów). Dwie ostatnie opcje wymagają planu płatnego.
  • Wyłącz pamięć podręczną DNS - wymusza świeże zapytanie DNS przy każdym sprawdzeniu zamiast ponownego użycia pamięci podręcznej agenta.

Weryfikacja odpowiedzi

Panel weryfikacji odpowiedzi dla sprawdzenia API z wyłączonym trybem asercji: baner informacyjny promujący tryb asercji, pola Ignoruj błędy HTTP i Błąd przy tych statusach HTTP, Format odpowiedzi ustawiony na analizę JSON, puste pole Selektor, Co sprawdzać ustawione na Sprawdź samą uzyskaną wartość, Warunek ustawiony na dowolny (bez walidacji), i początek listy Polityk HTTP

Domyślnie sprawdzenie kończy się sukcesem, gdy DNS się rozwiąże, połączenie i uzgadnianie TLS (dla https) się zakończą, serwer zwróci status HTTP Ok, a odpowiedź da się zinterpretować w wybranym poniżej formacie.

  • Tryb asercji - zrzut ekranu pokazuje go wyłączonego, z banerem zachęcającym do włączenia dla reguł kodu statusu, czasu odpowiedzi, nagłówka albo treści. API i HTTP to jedyne dwa typy sprawdzenia z działającym edytorem asercji; zobacz dogłębny poradnik o trybie asercji, żeby poznać pełny język reguł. Gdy jest wyłączony, werdykt prowadzą klasyczne pola poniżej.
  • Ignoruj błędy HTTP - kody statusu, które NIE powinny prowadzić do niepowodzenia sprawdzenia, na przykład 401, 403, 500; pusto oznacza, że każdy kod 400+ jest błędem.
  • Błąd przy tych statusach HTTP - odwrotność: kody, które powinny powodować niepowodzenie sprawdzenia, nawet gdyby normalnie tego nie robiły.
  • Format odpowiedzi - jak treść jest interpretowana, zanim zadziała selektor: analiza JSON (selektor JSONPath albo właściwości, pokazany jako wybrany na zrzucie ekranu), analiza XML (zapytanie XPath) albo analiza tekstu (wyrażenie regularne z przechwytywaniem). GET jest wymagane, by odczytać treść.
  • Selektor - wybiera wartość z przeanalizowanej odpowiedzi; zostaw puste, żeby użyć całej odpowiedzi jako wartości.
  • Co sprawdzać - domyślnie poniższy warunek ocenia samą wybraną wartość (Sprawdź samą uzyskaną wartość); przełącz na Sprawdź zmianę wartości między sprawdzeniami, albo tempo zmiany na sekundę/minutę, żeby zamiast tego ocenić, o ile wartość się zmieniła.
  • Warunek - porównuje wartość: dowolny (bez walidacji) (domyślnie, pokazany na zrzucie ekranu), równy, różny od, w zbiorze, poza zbiorem, mniejszy niż, mniejszy lub równy, większy niż, większy lub równy, w zakresie, poza zakresem, nieobecny w treści, albo json null. Każdy warunek poza dwoma ostatnimi wymaga wpisanej poniżej wartości porównania.
  • Polityki HTTP - te same opcjonalne sprawdzenia nagłówków/ciasteczek/treści co w typie sprawdzenia HTTP: wymuszanie HTTPS, nagłówek HSTS, brak degradacji z https do http, CSP, ochrona przed clickjackingiem, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, brak ujawniania wersji, asercje Cache-Control, nagłówki odpowiedzi CORS, bezpieczeństwo ciasteczek i treść mieszana. Gotowe zestawy Podstawowy, Rygorystyczny i API zastępują cały wybór; naruszenie kończy sprawdzenie statusem Down, tak jak każde inne niepowodzenie.
  • Uzgadnianie TLS - cztery przełączniki rygoru (plan płatny): wymagaj ważnego łańcucha certyfikatu SSL, wymagaj TLS 1.2 lub wyższego, blokuj słabe szyfry (128-bitowe lub słabsze), i sprawdzaj unieważnienie certyfikatu.
  • Walidacja oczekiwanych adresów IP - potwierdza, że DNS rozwiązuje Twój host do jednego z adresów IP wymienionych przez Ciebie, przy każdym sprawdzeniu, wyłapując przejęcie albo nieaktualny rekord, nawet gdy jakiś serwer wciąż odpowiada.
  • Maksymalny rozmiar odpowiedzi - przestaje czytać treść powyżej tego rozmiaru, więc parser i selektor widzą tylko pobraną część. Domyślnie 1 MB, maksymalnie 10 MB; 0 nie czyta żadnej treści.

Uwaga do powyższych zrzutów ekranu: zostały zrobione na koncie, którego pakiet nie obejmuje typu sprawdzenia API, więc pole wyboru typu widniało tam jako "nie w Twoim pakiecie". To artefakt konta testowego, a nie coś, co zobaczysz Ty - poza tym każde opisane tu pole i wartość domyślna są dokładnie tym, co pokazuje formularz.

Subskrypcje alertów

Panel subskrypcji alertów: włączony przełącznik Zasubskrybuj wszystkie kontakty do zdarzeń Up/Down, pole wyszukiwania kontaktów i jeden kontakt e-mail z aktywnymi przełącznikami Down, Up i Repeat

Wspólne dla każdego typu sprawdzenia. Down = endpoint nie przeszedł sprawdzenia, Up = odzyskał sprawność, Repeat = przypomnienia, dopóki pozostaje w stanie Down. Zasubskrybuj wszystkie kontakty do zdarzeń Up/Down to skrót; tabela daje kontrolę per kontakt, indywidualnie albo przez wielokrotnego użytku zestawy grup kontaktów. Zadanie bez żadnej subskrypcji alertów wciąż działa i zapisuje wyniki - po prostu nikogo nigdy nie powiadamia.

Subskrypcje raportów

Panel subskrypcji raportów: włączony przełącznik Zasubskrybuj wszystkie kontakty do raportów tygodniowych/miesięcznych i jeden kontakt e-mail z aktywnymi przełącznikami Tygodniowo i Miesięcznie oraz dostępnym Dziennie

Okresowe raporty dostępności, tylko e-mail. Wybierz Dziennie, Tygodniowo albo Miesięcznie per kontakt; Miesięcznie dołącza też podsumowania kwartalne i roczne. Przełącznik zasubskrybuj-wszystkie działa tak samo jak w Subskrypcjach alertów.

Lokalizacje monitorowania

Panel lokalizacji monitorowania: przeszukiwalne drzewo lokalizacji z zaznaczonymi Cały świat, Ameryka Północna, Rosja i Europa Zachodnia oraz ich liczbami agentów, plus poniżej rozwijane listy Strategia ponownego sprawdzania i Jeśli wybrane lokalizacje są niedostępne
  • Wybór lokalizacji - szukaj albo przeglądaj drzewo regionów/krajów i zaznacz lokalizacje, z których ma być prowadzone sprawdzenie; każdy wiersz pokazuje dostępnych agentów w zestawieniu z wybranymi. "Skopiuj lokalizacje z innego zadania" ponownie wykorzystuje istniejący zestaw.
  • Strategia ponownego sprawdzania - przy zmianie stanu (na przykład z Up na Down) kilka lokalizacji weryfikuje ją ponownie, zanim nowy stan zostanie przyjęty, co zabezpiecza przed fałszywym alarmem z jednego regionu. Opcje: domyślne głosowanie większością; określona liczba lokalizacji potwierdzających Down (dodaje suwak 1-7); brak ponownego sprawdzania; pełna zgoda każdej lokalizacji ponownie sprawdzającej; albo pełna zgoda dla Down, głosowanie większością dla Up.
  • Jeśli wybrane lokalizacje są niedostępne - Tylko wybrane lokalizacje (domyślnie) czeka, zamiast ryzykować fałszywy alarm; Najbliższe lokalizacje używa najbliższej dostępnej lokalizacji; Dowolna lokalizacja korzysta z całego świata.

Przykład zastosowania

Monitorowanie endpointu statusu JSON: sprawdzenie API, interwał 5 minut, limit czasu 40 s, GET, Podążaj za przekierowaniami (maks. 20). Format odpowiedzi analiza JSON, Selektor $.status, Co sprawdzać "sama uzyskana wartość", Warunek "równy" z wartością porównania ok. Ignoruj błędy HTTP pozostawione puste. Lokalizacje monitorowania pozostawione na Cały świat z domyślną strategią ponownego sprawdzania. E-mail zespołu dyżurnego zasubskrybowany do Down, Up i Repeat oraz do raportów tygodniowych.

Rozwiązywanie problemów

  • Sprawdzenie zawsze przechodzi, mimo że endpoint jest wyraźnie zepsuty - Warunek domyślnie ma wartość dowolny (bez walidacji), co ocenia tylko parsowanie i transport, a nie samą wartość. Wybierz realny warunek i wartość porównania, gdy tylko wiesz, jak wygląda zdrowa odpowiedź.
  • Selektor nic nie zwraca - potwierdź, że Format odpowiedzi pasuje do tego, co zwraca endpoint (JSON kontra XML kontra zwykły tekst); selektor JSONPath względem treści XML nigdy nie dopasuje. Zostaw najpierw Selektor pusty, żeby potwierdzić, że dociera cała odpowiedź, a potem zawężaj.
  • Warunek liczbowy (większy niż, w zakresie itd.) zgłasza błąd - wymaga, żeby wybrana wartość dała się zamienić na liczbę. Selektor wskazujący na ciąg tekstowy albo obliczenie w trybie zmiany bez jeszcze żadnego poprzedniego sprawdzenia nie ma czego porównać.
  • Przeszło na Down zaraz po włączeniu Polityk HTTP (zwłaszcza Rygorystycznych) - Rygorystyczny oczekuje nagłówków, których wiele API nie skonfigurowało. Napraw nagłówki, zejdź do Podstawowego albo najpierw uruchom polityki jako osobne zadanie.
  • Selektor przestaje znajdować wartość w dużej odpowiedzi - Maksymalny rozmiar odpowiedzi ucina treść, więc nic za tym punktem nie dociera do parsera ani selektora. Podnieś go.

Powiązane

Sprawdź teraz

Uruchom darmowe sprawdzenie na swojej stronie - bez zakładania konta.

Web api validation

Monitoruj to na stałe

Otrzymasz powiadomienie w chwili awarii: HostTracker sprawdza z ponad 300 lokalizacji i powiadamia e-mailem, SMS-em, przez Slack, Telegram i nie tylko.

Funkcje HostTracker

Więcej w tej sekcji: Przewodniki po monitoringu: każdy typ kontroli krok po kroku