Co dzieje się z aplikacją po starcie — monitoring, aktualizacje, incydenty?

Opublikowano: Stan na: sierpień 2026 Tekst: Agent AI Tomka Niedźwieckiego · odpowiada: · zasady
Krótka odpowiedź

Po starcie aplikacja żyje w trzech pętlach: monitoring (dostępność, błędy, pieniądze), aktualizacje (przeglądarki, zależności, dostawcy) i incydenty (reakcja, naprawa, wpis). Darmowy plan monitoringu sprawdza adres co 5 minut — tyle wynosi okno, w którym o awarii nikt nie wie. W naszej praktyce reakcja na zgłoszenie krytyczne to 1 dzień roboczy, na pozostałe 3.

Interwał sprawdzania dostępności w darmowym planie monitoringu 5 minutprzy 50 monitorach (UptimeRobot) UptimeRobot — cennik, plan darmowy, stan: odczyt 31.08.2026
Wyjątki w darmowym planie śledzenia błędów 100 000miesięcznie (Better Stack) Better Stack — cennik, plan darmowy, stan: odczyt 31.08.2026
Reakcja na zgłoszenie krytyczne (pozostałe: 3 dni robocze) 1dzień roboczy Reakcja na zgłoszenia po starcie — praktyka zespołu, stan: stan na 31.08.2026
Deklarowana dostępność platformy hostingu 99,99%plan Enterprise (Vercel) Vercel — Service Level Agreement, stan: odczyt 31.08.2026

Trzy pętle: co naprawdę dzieje się z aplikacją po starcie?

Start produkcyjny nie jest końcem pracy, tylko zmianą jej rodzaju. Od tego dnia aplikacja żyje w trzech pętlach, które kręcą się niezależnie od siebie: monitoring, aktualizacje i incydenty.

Monitoring odpowiada na pytanie, czy działa i dla kogo. Aktualizacje pilnują, żeby to, co działa dziś, działało też po zmianie przeglądarki, biblioteki albo interfejsu dostawcy. Incydenty to procedura na moment, w którym pierwsze dwie pętle nie wystarczyły.

Różnica między aplikacją utrzymywaną a włączoną jest mierzalna. Utrzymywana ma nazwaną osobę, kanał alertu i okno wykrycia liczone w minutach. Włączona ma adres i nadzieję, że ktoś zadzwoni.

PętlaCo obserwujemyNarzędzie i limit (stan na 31.08.2026)Kto reagujeCo się psuje, gdy tego brak
Monitoring — dostępnośćczy adres główny, ekran logowania i panel odpowiadająUptimeRobot: plan darmowy 50 monitorów, interwał 5 minut; Better Stack: plan darmowy 10 monitorów i heartbeatów, sprawdzanie nawet co 30 sekundautomat wysyła alert, odbiera osoba dyżurnao awarii dowiadujesz się od klienta, zwykle następnego dnia
Monitoring — błędywyjątki w kodzie, odpowiedzi 5xx, nieudane zapisy do bazyBetter Stack: 100 000 wyjątków miesięcznie w planie darmowym; Sentry: 5 000 błędów w planie darmowym (okresu przy tym planie cennik nie podaje)zespół utrzymania, w oknie roboczymbłąd zna tylko ten użytkownik, który na niego trafił
Monitoring — pieniądzepowiadomienia operatora płatności, kolejka poczty transakcyjnejpanel operatora oraz własny zapis nieudanych zdarzeńzespół utrzymania i właściciel aplikacjiwpłata bez odbicia w aplikacji, wykryta przy rozliczeniu miesiąca
Aktualizacje — wersja u użytkownikaczy nowe wydanie dotarło do przeglądarekreguła przeglądarki: skrypt Service Workera musi być różny bajtowo, a przy zdarzeniach funkcyjnych sprawdzenie nie powtarza się częściej niż raz na 24 godzinyzespół, przy każdym wdrożeniuczęść użytkowników pracuje tygodniami na starej wersji
Aktualizacje — zależnościbiblioteki i środowisko uruchomienioweNode.js: wsparcie wydania LTS opisane jako poprawianie krytycznych błędów przez „a total of 30 months”zespół, w oknie planowymśrodowisko bez poprawek bezpieczeństwa pod działającą aplikacją
Aktualizacje — dostawcyzmiany interfejsów, planów i deklarowanej dostępnościVercel: 99,99% w planie Enterprise; Supabase: 99,9% czasu w miesiącu kalendarzowym w planie Enterprisezespół czyta komunikaty dostawcyintegracja przestaje działać w dniu, w którym dostawca coś wyłącza
Incydentyczas reakcji, przyczyna, zapis po zdarzeniuu nas: 1 dzień roboczy na zgłoszenia krytyczne, 3 dni na pozostałeosoba dyżurna, potem autor poprawkiten sam błąd wraca, bo nikt nie zapisał, dlaczego wystąpił

Trzy pętle nie wymagają trzech zespołów ani trzech płatnych narzędzi. Wymagają trzech nazwanych osób do trzech różnych sytuacji i jednego miejsca, w którym widać, co się wydarzyło.

Monitoring: co mierzyć poza „czy strona się otwiera”?

Sprawdzanie adresu głównego to najmniejsza wersja monitoringu i najczęściej jedyna, jaką ktoś włącza. Adres odpowiada poprawnie także wtedy, gdy logowanie jest zepsute, wpłata nie dochodzi, a poczta stoi w kolejce.

Cztery sygnały wystarczą do pierwszych kilkuset kont: dostępność adresu i ekranu logowania, odsetek odpowiedzi 5xx, czas odpowiedzi najwolniejszej ścieżki oraz zdarzenia pieniężne — nieudane powiadomienie operatora płatności i nieudana wysyłka poczty.

Interwał decyduje o tym, ile trwa cisza. W planie darmowym UptimeRobot to 50 monitorów sprawdzanych co 5 minut (odczyt 31 sierpnia 2026), więc awaria bywa niewidoczna przez pięć minut plus czas dojścia alertu.

Better Stack w planie darmowym daje mniej punktów — 10 monitorów i heartbeatów oraz jedną stronę statusu — ale sprawdza nawet co 30 sekund (odczyt 31 sierpnia 2026). Wybór między nimi jest wyborem między liczbą punktów a rozdzielczością czasu.

Śledzenie błędów mieści się w planach darmowych na długo po starcie. Better Stack podaje 100 000 wyjątków miesięcznie, Sentry dla planu darmowego podaje 5 000 błędów — ale okresu rozliczeniowego przy tym planie nie znaleźliśmy w dokumentacji na dzień 31 sierpnia 2026, więc liczymy z planu, który podaje go wprost.

Alert bez adresata nie jest alertem. Stosujemy prostą regułę: nieudane zdarzenie płatnicze i nieudana wysyłka poczty idą na kanał, który ktoś czyta tego samego dnia, a nie do logu, do którego zagląda się dopiero po awarii.

Do tego jedna lekcja z praktyki. Klient logowania potrafi zwrócić błąd 500 z pustym komunikatem, więc logujemy całą odpowiedź serwera, nie sam kod — inaczej awaria w zgłoszeniu wygląda jak „nie wiadomo co”, a diagnoza zaczyna się od zera.

Aktualizacje: dlaczego nowa wersja nie dochodzi do wszystkich?

W aplikacji instalowanej z przeglądarki wdrożenie nie kończy się na serwerze. Nową wersję musi jeszcze przyjąć Service Worker zapisany w przeglądarce użytkownika, a on ma własne reguły.

Dokumentacja web.dev opisuje je krótko. Skrypt uznaje się za zaktualizowany, jeśli jest „byte-different” wobec tego, który przeglądarka już ma. Aktualizację wyzwala wejście na stronę w zasięgu, a przy zdarzeniach funkcyjnych sprawdzenie nie powtarza się, jeśli było w ciągu poprzednich 24 godzin (odczyt 31 sierpnia 2026).

Dalej jest stan oczekiwania. Po udanej instalacji nowa wersja czeka, aż stara przestanie kontrolować otwarte karty — web.dev nazywa ten stan „waiting”. Wywołanie skipWaiting w nowej wersji pozwala pominąć czekanie i aktywować ją od razu.

Tu wchodzi lekcja z naszej praktyki. Aplikacja instalowana z przeglądarki, chroniona restrykcyjną polityką CSP, wymaga jawnego wypisania źródeł skryptów. Bez tego aktualizacja nie dochodzi do części użytkowników, a w logach nie widać żadnej awarii — wszystko odpowiada poprawnie, tylko starym kodem.

Druga warstwa aktualizacji to zależności. Node.js opisuje wsparcie wydania LTS jako gwarancję poprawiania krytycznych błędów przez „a total of 30 months” (odczyt 31 sierpnia 2026). Po tym oknie środowisko pod aplikacją przestaje dostawać poprawki, a aktualizacja przestaje być wyborem.

Trzecia warstwa leży poza zasięgiem zespołu: zmiany po stronie dostawców. Deklarowana dostępność dotyczy zwykle najdroższego planu — Vercel podaje 99,99% dla platformy serwującej treść, Supabase 99,9% czasu w miesiącu kalendarzowym, oba w planie Enterprise (odczyt 31 sierpnia 2026).

Wniosek jest praktyczny. Aplikacja na planach niższych niż Enterprise nie ma deklarowanej dostępności, więc awaria dostawcy jest ryzykiem właściciela — i dlatego monitoring ma umieć pokazać, że to nie aplikacja przestała działać.

Incydenty: reakcja, naprawa, wpis

Incydent ma trzy takty i tylko pierwszy jest pilny. Reakcja to podjęcie działań: potwierdzenie, że sygnał jest prawdziwy, ocena zasięgu i informacja dla właściciela. Naprawa bywa późniejsza, a czasem świadomie odłożona.

Czasy warto mieć zapisane, zanim będą potrzebne. W naszej praktyce jest to 1 dzień roboczy na zgłoszenia krytyczne i 3 dni na pozostałe, przy czym reakcja oznacza podjęcie działań, a nie zakończoną naprawę.

Podział na krytyczne i pozostałe robi się przed awarią, na spokojnie. Krytyczne to zwykle brak logowania, brak zapisu wpłaty, wyciek danych i aplikacja, która nie odpowiada. Reszta — literówki, wolny ekran, drobne błędy w widoku — ma własny, dłuższy zegar.

Trzeci takt bywa pomijany i to on decyduje, czy błąd wróci. Wpis po incydencie mieści się w jednym akapicie: co się stało, od kiedy do kiedy, kogo dotknęło, jaka była przyczyna, co zmieniliśmy i po czym poznamy powtórkę.

Dwie rzeczy sprawdza się poza incydentem, bo w trakcie jest już za późno. Pierwsza: kopie testujemy odtworzeniem, nie istnieniem pliku — zasady i test bez programisty opisaliśmy w tekście o bezpieczeństwie od pierwszego dnia.

Druga to obowiązki wobec organu nadzorczego, gdy incydent dotyczy danych osobowych. Terminy i brzmienie przepisu są w tym samym tekście. Tutaj wystarczy zasada: zegar rusza od stwierdzenia naruszenia, a nie od zakończenia naprawy.

Po czym poznać porządną opiekę po starcie?

Dziewięć pytań, które właściciel aplikacji zada bez wiedzy technicznej. Każde ma odpowiedź w postaci nazwiska, liczby albo daty — a odpowiedź „to zależy” jest w każdym z nich odpowiedzią negatywną.

Jeśli na trzy z tych pytań pada odpowiedź „sprawdzimy”, opieki nie ma — jest gotowość do reagowania na telefon od klienta. To działa do pierwszej awarii w piątek wieczorem.

Czego ten tekst nie rozstrzyga?

Nie ma tu rachunku utrzymania w złotych ani porównania planów płatnych. Ten rachunek prowadzimy osobno, w tekście o koszcie aplikacji w trzy lata.

Nie ma też zasad odbioru ani gwarancji na to, co zostało odebrane. Kolejność prac, artefakty i akceptacje opisuje tekst o budowie aplikacji krok po kroku, a warstwy, które trzeba obserwować — tekst o warstwach aplikacji dla firmy.

Ten artykuł opisuje jedno: co dzieje się z aplikacją między jednym wdrożeniem a drugim, kto to widzi i w jakim czasie. Reszta decyzji ma swoje miejsce i swoje liczby.

Najczęstsze pytania

Czy darmowy plan monitoringu wystarczy po starcie?

Do pierwszych kilkuset kont zwykle tak. UptimeRobot w planie darmowym daje 50 monitorów sprawdzanych co 5 minut, Better Stack 10 monitorów i heartbeatów ze sprawdzaniem nawet co 30 sekund, a śledzenie błędów mieści się w 100 000 wyjątków miesięcznie w planie darmowym Better Stack (odczyt 31 sierpnia 2026). Granicą nie jest cena, tylko to, czy alert ma adresata.

Jak często aktualizować biblioteki w działającej aplikacji?

W stałym oknie, nie wtedy, gdy coś przestanie działać. Poprawki bezpieczeństwa wchodzą poza kolejnością, reszta w zaplanowanym terminie, po którym ktoś sprawdza aplikację ręcznie. Warto trzymać się wersji ze wsparciem: Node.js opisuje wsparcie wydania LTS jako poprawianie krytycznych błędów przez „a total of 30 months” (odczyt 31 sierpnia 2026).

Dlaczego użytkownicy widzą starą wersję aplikacji?

Bo wersję u nich trzyma Service Worker. web.dev opisuje reguły: skrypt jest uznany za nowy, gdy jest „byte-different”; przy zdarzeniach funkcyjnych sprawdzenie nie powtarza się, jeśli było w ciągu poprzednich 24 godzin; nowa wersja czeka w stanie „waiting”, dopóki stara kontroluje otwarte karty (odczyt 31 sierpnia 2026). U nas dochodzi jeszcze polityka CSP — bez jawnych źródeł skryptów aktualizacja nie dochodzi.

Czy dostawca gwarantuje, że aplikacja będzie dostępna?

Tylko w najdroższym planie i tylko w opisanym zakresie. Vercel deklaruje 99,99% dostępności platformy serwującej treść, Supabase 99,9% czasu w miesiącu kalendarzowym — oba w planie Enterprise (odczyt 31 sierpnia 2026). Dla niższych planów deklaracji nie znaleźliśmy, więc awaria dostawcy jest ryzykiem właściciela aplikacji i powinna być widoczna w monitoringu.

Co zapisać po incydencie, żeby nie wrócił?

Wystarczy jeden akapit: co się stało, od kiedy do kiedy, kogo dotknęło, jaka była przyczyna, co zostało zmienione i po czym poznamy powtórkę. Ostatni punkt jest najważniejszy — zwykle oznacza nowy monitor albo alert, którego wcześniej nie było. Wpis bez niego jest opisem zdarzenia, nie zabezpieczeniem przed kolejnym.

Źródła

  1. Reakcja na zgłoszenia po starcie — praktyka zespołu — https://jakzrobicaplikacje.pl/o-serwisie/#skad (2026-08-31)
  2. Lekcje z utrzymania aplikacji w naszych wdrożeniach (Service Worker i CSP, logowanie pełnej odpowiedzi serwera, kopie testowane odtworzeniem) — praktyka zespołu — https://jakzrobicaplikacje.pl/o-serwisie/#skad (2026-08-31)
  3. UptimeRobot — cennik: plan darmowy, 50 monitorów, interwał sprawdzania 5 minut — https://uptimerobot.com/pricing/ (odczyt 31.08.2026)
  4. Better Stack — cennik: plan darmowy, 10 monitorów i heartbeatów, sprawdzanie nawet co 30 sekund, 100 000 wyjątków miesięcznie — https://betterstack.com/pricing (odczyt 31.08.2026)
  5. Sentry — cennik: plan darmowy Developer, 5 000 błędów (okresu rozliczeniowego przy tym planie cennik nie podaje) — https://sentry.io/pricing/ (odczyt 31.08.2026)
  6. web.dev — The service worker lifecycle: reguła „byte-different”, okno 24 godzin przy zdarzeniach funkcyjnych, stan „waiting”, skipWaiting — https://web.dev/articles/service-worker-lifecycle (odczyt 31.08.2026)
  7. Vercel — Service Level Agreement: 99,99% dostępności platformy serwującej treść, plan Enterprise — https://vercel.com/legal/sla (odczyt 31.08.2026)
  8. Supabase — Service Level Agreement: 99,9% czasu w każdym miesiącu kalendarzowym, tier Enterprise — https://supabase.com/sla (odczyt 31.08.2026)
  9. Node.js — Previous Releases: wsparcie wydania LTS jako poprawianie krytycznych błędów przez „a total of 30 months” — https://nodejs.org/en/about/previous-releases (odczyt 31.08.2026)
Kto to napisał

Tekst przygotował Agent AI Tomka Niedźwieckiego — treść wygenerowana przez sztuczną inteligencję na podstawie własnych wdrożeń zespołu, dokumentacji dostawców i źródeł podanych wyżej, sprawdzona w osobnym przebiegu weryfikacji faktów i zredagowana. Za fakty odpowiada . Ostatnia weryfikacja: 10 września 2026.