Il monitoraggio uptime è un servizio automatico che controlla il tuo sito web, la tua API o il tuo server a intervalli fissi e ti avvisa non appena smette di rispondere correttamente. Risponde a una sola domanda, giorno e notte: le persone riescono a raggiungerlo in questo momento? Registra anche quanto tempo ha richiesto ogni risposta, così col tempo ottieni uno storico preciso di disponibilità e velocità.
Questa guida spiega come funzionano i controlli di uptime, come scegliere un intervallo, perché i servizi validi confermano un guasto prima di avvisare e cosa significano nella pratica le percentuali di uptime.
Come funziona un controllo di uptime
Un servizio di monitoraggio invia una richiesta al tuo sito dai propri server, proprio come farebbe un visitatore, e valuta la risposta. A seconda di cosa monitori, il controllo può essere:
HTTP(S): richiede un URL e guarda il codice di stato, il tempo di risposta e, se vuoi, il contenuto della risposta. È il controllo standard per siti web e API.
Ping: invia un echo ICMP per vedere se un host è raggiungibile in rete.
Porta: apre una connessione a una porta TCP specifica, per esempio la 465 per SMTP su TLS o la 3306 per un database, per vedere se il servizio è in ascolto.
Questi sono i controlli di uptime classici. Uptimecheck aggiunge tipi di monitor per ciò che loro non vedono: cron job, server, record DNS e domini, servizi di terze parti come il tuo provider di pagamento, salute del sito (link rotti, contenuti misti e velocità delle pagine) e flussi che percorrono un login o un checkout passo dopo passo.
Un controllo HTTP è superato quando la risposta arriva in tempo e corrisponde a ciò che ti aspetti. Di default significa un codice di stato di successo. Un controllo migliore guarda anche il contenuto. Una pagina può restituire lo stato 200 e mostrare comunque “Database connection error”. Verificare che la risposta contenga una parola che compare solo su una pagina funzionante, o che un’API restituisca il campo atteso, intercetta questi casi. Con Uptimecheck puoi impostare metodo HTTP, header, body della richiesta, codici di stato attesi, una parola chiave e controlli JSON per ogni monitor di uptime o monitor di API.
Da un controllo fallito a un avviso
Una singola richiesta fallita non è sempre un disservizio. Un pacchetto può perdersi tra due reti, o un server può avere un intoppo di un secondo. Se ogni errore facesse scattare un avviso, le persone inizierebbero presto a ignorarli. Per questo un controllo ben fatto procede per passaggi:
Un controllo fallisce, per esempio con un timeout o un 503.
Il servizio ricontrolla, idealmente da una seconda regione.
Se il guasto è confermato, si apre un incidente e partono gli avvisi.
Quando i controlli tornano a passare, parte una notifica di ripristino con il downtime totale.
Controllare da due regioni serve a due cose. Filtra i falsi allarmi causati da un singolo percorso di rete e mostra quando un disservizio è regionale: se il tuo sito non risponde dall’Europa ma funziona dagli Stati Uniti, il problema è probabilmente nel routing o in un nodo edge della CDN, non nel tuo server. Uptimecheck controlla da Stoccolma, Londra e New York e conferma ogni guasto da una seconda località prima che si apra un incidente, così un singolo intoppo non sveglia nessuno.
Scegliere l’intervallo di controllo
L’intervallo è il tempo massimo per cui un disservizio può passare inosservato. Con un intervallo di cinque minuti, un guasto che inizia subito dopo un controllo viene scoperto fino a cinque minuti dopo, più il tempo di conferma. Con controlli ogni minuto, viene scoperto entro circa un minuto.
Come regola generale:
Ogni minuto per tutto ciò che genera ricavi o serve i clienti: shop, prodotti SaaS, sistemi di prenotazione, API.
Ogni cinque minuti per progetti personali, strumenti interni e siti in cui qualche minuto in più non fa differenza.
Uptimecheck controlla ogni minuto sui piani a pagamento e ogni 5 minuti sul piano Free. Trovi i dettagli nella pagina dei prezzi.
Cosa significano in minuti le percentuali di uptime
L’uptime di solito si esprime come percentuale del tempo. I numeri sembrano vicini, ma la differenza in downtime reale è grande. Nell’arco di un anno:
99% consente 3 giorni, 15 ore e 36 minuti di downtime.
99,9% consente 8 ore, 45 minuti e 36 secondi.
99,99% consente 52 minuti e 34 secondi.
Su base mensile, il 99,9% corrisponde a circa 43 minuti. Possono essere un unico incidente lungo o tanti brevi. Il monitoraggio ti dice quale dei due, e la cosa conta, perché la soluzione è diversa. Un unico disservizio lungo indica un singolo guasto. Tanti brevi spesso indicano un server sovraccarico o una dipendenza instabile.
Cosa monitorare
La maggior parte dei team parte dalla homepage. È un buon inizio, ma la homepage spesso è in cache ed è l’ultima cosa a cedere. Un insieme utile di monitor copre:
Le pagine che generano ricavi: checkout, registrazione, prenotazione.
La pagina di login, che dipende dal database e dallo storage delle sessioni.
Le API pubbliche da cui dipendono le tue app e integrazioni.
I servizi di supporto come mail server e database, con controlli delle porte.
Le cose che scadono: certificati SSL e domini.
I job pianificati, con gli heartbeat, perché un backup fallito non manda giù il sito ma merita comunque un avviso.
Dove devono arrivare gli avvisi
Un avviso serve solo se raggiunge qualcuno che può intervenire. L’email va bene per la maggior parte degli avvisi durante il giorno. Per i disservizi notturni, un canale che invia notifiche push al telefono è più difficile da perdere. Le chat di team come Slack, Discord, Telegram o Microsoft Teams tengono tutti informati e danno all’incidente un luogo comune in cui discuterne. I webhook ti permettono di inviare gli avvisi ai tuoi sistemi. Uptimecheck invia avvisi via email, Slack, Microsoft Teams, Discord, Google Chat, Mattermost, Telegram, PagerDuty, ntfy, Pushover, webhook e notifiche push sul telefono, su ogni piano. Scopri le notifiche.
Checklist per il monitoraggio uptime
Elenca le pagine, le API e i servizi che contano, partendo da quelli che generano ricavi.
Aggiungi un monitor HTTP(S) per ciascuno, con la verifica del contenuto su quelli più importanti.
Scegli un intervallo di 1 minuto per i controlli critici per il business.
Controlla da più di una regione.
Invia gli avvisi ad almeno due canali, di cui uno adatto alla notte.
Aggiungi monitor SSL, dei domini e heartbeat per tutto ciò che può scadere o fermarsi in silenzio.
Pubblica una pagina di stato così i clienti possono vedere cosa succede durante un incidente.
Rivedi ogni mese lo storico degli incidenti e i tempi di risposta.
In sintesi
Il monitoraggio uptime trasforma “forse il sito è down” in “il sito è down da due minuti, ecco l’errore, e la persona giusta lo sa già”. Scegli un intervallo breve, conferma i guasti prima di avvisare, verifica il contenuto oltre ai codici di stato e invia gli avvisi dove verranno visti.
Uptimecheck copre siti web, API, server, cron job, DNS, SSL, domini, servizi di terze parti, salute del sito e flussi in più passaggi in un unico account a prezzo fisso. Provalo gratis per 14 giorni, senza carta di credito.