Nessun deploy senza monitor.

La tua pipeline o il suo agente di coding (Claude Code, Codex, ChatGPT) registra il monitor via MCP. Per impostazione predefinita, due regioni confermano il disservizio prima che qualcuno venga avvisato, e ogni incident entra nel tuo registro di disponibilità con la sua durata.

Prova Sentinel gratis per 90 giorni, senza carta di credito. Tutti i prezzi sono pubblici. Datargo GmbH, in Germania, gestisce Perstat su un control plane nell’UE.

Stato di Perstatpagina di stato
Vista del monitor Order API in Perstat, con regioni di controllo, uptime, tempi di risposta e dettagli del certificato
deploy · order-api 2.16.0Esempio
  1. build
  2. deploy
  3. register monitor

Order API creato, controllato da 6 regioni

La vista del monitor su app.perstat.io. Interfaccia reale del prodotto, dati di esempio. La scheda di deploy è un esempio.

Le release vanno più veloci dei monitor manuali

Servizi, endpoint e job vanno in produzione ogni settimana. Segui un deploy attraverso Perstat, dalla pipeline al registro di disponibilità.

Salta la storia
Salta la storia
  1. Ogni release aggiunge qualcosa da monitorare

    order-api 2.16.0 aggiunge un webhook dei pagamenti. Degli ultimi 8 deploy, 3 hanno rilasciato un endpoint, un job o un servizio senza monitor, perché crearlo era un compito separato.

    Registro dei deployEsempio
    1. 09-10 14:02order-api 2.16.0+ /webhooks/paymentssenza monitor
    2. 09-10 11:47search-indexer 1.9.3worker poolmonitorato
    3. 09-09 17:20checkout-web 4.2.0+ /api/cart/v2senza monitor
    4. 09-09 09:15auth-service 3.1.1token rotationmonitorato
    5. 09-08 16:40image-resizer 0.7.0new servicesenza monitor
    6. 09-08 10:05mail-relay 1.4.2patchmonitorato
    7. 09-05 15:30order-api 2.15.4patchmonitorato
    8. 09-05 08:12status-sync 0.3.0cron jobmonitorato

    3 deploy su 8 hanno aggiunto qualcosa senza monitor

  2. Metti il monitor nel deploy

    Basta uno step dopo il job di release. Lo step chiama l’endpoint MCP con una chiave API dell’organizzazione. In caso di errore fa fallire il job, a meno che il monitor esista già.

    deploy.ymlEsempio
    # dopo il job di release: registra il monitor- name: Register monitor  run: |    result=$(curl -sS --fail-with-body https://api.perstat.io/mcp \      -H "Authorization: Bearer $PERSTAT_API_KEY" \      -H "Content-Type: application/json" \      -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{        "name":"create_monitor","arguments":{"project_id":"prj_…",        "name":"Order API","type":"http",        "config":{"url":"https://orders.example.com/health"}}}}')    echo "$result" | jq -e '.result.isError == false      or (.result.content[0].text        | contains("already runs exactly this check"))'
  3. Un solo monitor, per quanti deploy tu faccia

    Il risultato restituisce il nuovo monitor. L’esecuzione successiva viene rifiutata come ripetizione esatta, e lo step passa comunque. Se il percorso dell’health check cambia, update_monitor modifica il monitor esistente invece di aggiungerne un secondo.

    mcp › create_monitor, chiamato dalla tua pipeline o dal tuo agente di codingEsempio
    {  "created": true,  "monitor": {    "id": "mon_…",    "archived": false,    "name": "Order API",    "type": "http",    "project_id": "prj_…",    "enabled": true,    "interval_seconds": 300,    "regions": ["na", "eu", "as", "sa", "af", "oce"],    "status": "unknown",    "severity": null  }}
    Deploy successivo

    `Order API` (mon_…) already runs exactly this check in this project: same type, identical config, every 300 s from 6 region(s).

  4. Sei regioni iniziano i controlli

    I nodi sonda su 6 continenti eseguono il check all’intervallo impostato. Perstat salva ogni risultato con la regione che l’ha misurato.

    Vista di un monitor Perstat con tempi di risposta per regione e ripartizione dei risultati per regione
    • naNord America
    • saSud America
    • euEuropa
    • afAfrica
    • asAsia
    • oceOceania
  5. Due regioni confermano il disservizio

    Un errore in una sola regione è una segnalazione silenziosa, non un alert. Quando anche una seconda regione segnala un errore, il quorum predefinito conferma il disservizio e apre esattamente un incident.

    Quorum per Order APIEsempio
    • naewrNewarkErrore
    • sagruSão PauloOK
    • eufraFrancoforteOK
    • afjnbJohannesburgOK
    • assgpSingaporeErrore
    • ocesydSydneyOK

    na (Newark) segnala un errore: segnalazione silenziosa, nessuno viene ancora avvisato.

    Anche as (Singapore) segnala un errore: quorum raggiunto, incident aperto alle 02:41:12 UTC.

  6. L’escalation continua fino alla presa in carico

    Perstat invia l’alert a iPhone e Apple Watch, e a Slack, Teams o PagerDuty tramite i connettori. L’escalation di reperibilità passa poi a SMS e a una telefonata, fino alla presa in carico.

    Escalation di reperibilità: Sentinel e superiori

    Alert di disservizio Perstat a tutto schermo per Order API su iPhone, con controllo a scorrimento per la presa in carico
    Escalation di reperibilità fino alla presa in carico
    1. PushNotifica nativa su iPhone e Apple Watch.
    2. SMSUno stadio a tempo dell’escalation di reperibilità.
    3. TelefonataL’ultimo stadio dell’escalation di reperibilità, su qualsiasi telefono.
    4. Preso in caricoLa responsabilità è visibile, e gli altri dispositivi tacciono.
    Anche tramite connettori
    • Slack
    • Microsoft Teams
    • Discord
    • Google Chat
    • PagerDuty
    • Opsgenie
    • Webhook

    Alert SMS personali senza turni: Pulse e superiori

    acknowledge_incidentOppure dal terminale: il tuo agente chiama acknowledge_incident via MCP, e la presa in carico viene attribuita al titolare della chiave.

  7. I clienti lo vedono sulla pagina di stato

    L’incident aperto dal quorum compare sulla pagina di stato collegata con la sua fase attuale, e il componente passa a Down. Nessuno deve ricopiarlo a mano.

    status.example.comEsempio

    Major outage

    • Order APIDown
    • StorefrontOperational
    • SearchOperational
    AcknowledgedOrder API02:41:12 UTC
  8. L’incident entra nel registro di disponibilità

    Quando le regioni segnalano il ripristino, l’incident si chiude con inizio, fine e durata confermati. La manutenzione annunciata viene esclusa per la durata della sua finestra. Perstat calcola la disponibilità dallo stesso registro.

    Registro di disponibilitàEsempio
    Order APIQ2 2026
    1. 2026-05-03 02:41:12Incident confermato dal quorum00:07:12
    2. 2026-05-17 22:00:00Manutenzione annunciata ed esclusa01:30:00
    Disponibilità lorda
    99,925%
    Esclusa la manutenzione annunciata
    99,994%

    Export: report PDF per monitor da 7 a 90 giorni. CSV con manifest su richiesta.

  9. I clienti vedono lo stato prima di chiedere

    La pagina di stato sul tuo dominio mostra lo stato dei servizi, come questo aggiornamento programmato del database. La pagina e il badge sul tuo sito leggono dal registro su cui si basa la cifra di disponibilità.

    Dominio personalizzato: Sentinel e superiori

    status.example.comDati di esempio
    Una pagina di stato per i clienti, con componenti raggruppati, barre di disponibilità a 90 giorni e un avviso di manutenzione programmata
    Badge di stato: operativo <img src="https://status.example.com/badge.svg" alt="Service status"> Lo stesso badge sul tuo sito, servito dal tuo dominio. Mostra quello che mostra la pagina.
Tutti i tipi di check e le loro opzioni Apri il report SLA di esempio Vedi la pagina di stato pubblica di Perstat

Quattro disservizi documentati, ciascuno con la sua fonte

Il monitoraggio accorcia il tempo che passa prima che tu lo sappia, mantiene una vista dall’esterno quando i tuoi strumenti cadono, porta il messaggio ai clienti e lascia un registro. Non evita un disservizio.

  1. Google Cloud: livello API fuori uso ovunque

    Il disservizio principale è durato circa 3 ore e si è verificato a livello globale, e il ripristino in us-central1 ha richiesto circa 2 h 40 min. I prodotti colpiti andavano dai servizi dipendenti da IAM a BigQuery, Cloud Storage e Vertex AI. Sono stati colpiti anche Workspace e clienti come Cloudflare.

    Il 29 maggio una funzione per controlli aggiuntivi sulle policy di quota è arrivata in Service Control senza feature flag e senza gestione degli errori sul nuovo percorso. Il 12 giugno una modifica di policy ha prodotto campi vuoti, e i binari sono andati in crash in tutto il mondo con un errore di null pointer. Google ha scritto che il suo primo rapporto sull’incident è arrivato circa un’ora dopo l’inizio dei crash, perché l’infrastruttura di Cloud Service Health era a sua volta fuori uso. Ha scritto anche che alcuni clienti avevano su Google Cloud la propria infrastruttura di monitoraggio, che stava fallendo a sua volta e li lasciava senza un segnale dell’incident.

    Cosa mostra un check dall’esternoQuell’ultima frase è l’argomento a favore del monitoraggio esterno, con le parole dell’operatore stesso: un monitoraggio sulla stessa piattaforma cade con lei. Perstat controlla dall’esterno, da un massimo di 6 regioni con un quorum, e la sua infrastruttura di sonde non gira sulla piattaforma che osserva. Una pagina di stato su un’infrastruttura separata avrebbe informato i tuoi clienti durante quell’ora.

    Fonte: Rapporto sull’incident di Google Cloud, 2025-06-12 · The Register, 2025-06-16

  2. Atlassian: uno script cancella 883 siti di clienti

    Il disservizio ha colpito 775 clienti per un massimo di 14 giorni, fino al ripristino dell’ultimo sito. Per loro non erano disponibili Jira, Confluence e Access, e nemmeno Opsgenie e Statuspage. Nessun cliente ha perso più di 5 minuti di dati.

    Uno script pensato per cancellare le istanze di un’app dismessa ha ricevuto ID di siti invece di ID di app. Dalle 07:38 UTC ha cancellato interi siti di clienti nell’arco di 23 minuti. Il primo ticket di un cliente è arrivato alle 07:46 UTC, dopo 8 minuti, e il processo per gli incident gravi è partito alle 08:17 UTC. Il primo aggiornamento della pagina di stato è arrivato alle 09:03 UTC, dopo 85 minuti, e la prima dichiarazione esterna ampia sui social il 7 aprile, dopo 41 ore. Il ripristino ha richiesto fino a 14 giorni ed era automatizzato solo in parte.

    Cosa mostra un check dall’esternoUn check HTTP dell’URL del tuo tenant da più regioni segnala il disservizio dopo 2 check consecutivi falliti, senza aspettare un ticket di supporto. Alcuni clienti hanno perso Statuspage e Opsgenie insieme ai siti, quindi pagina di stato e alert non devono stare presso il provider di cui dovrebbero mostrare il disservizio. Nessun monitoraggio avrebbe accorciato i 14 giorni.

    Fonte: Post-incident review di Atlassian, 2022-04-29

  3. Marketo: dominio non rinnovato, i clienti protestano in pubblico

    Per ogni cliente si sono interrotti l’accesso, i form incorporati, le immagini e i link nelle email, oltre all’integrazione con Salesforce e al tracciamento delle attività. Il disservizio era in gran parte risolto entro le 12:00 PDT, con effetti di propagazione da 24 a 48 ore.

    Il CEO ha scritto che l’azienda rinnova con precisione migliaia di domini ogni anno, eppure il processo di rinnovo automatico del suo dominio principale è fallito. La dichiarazione ha indicato come causa un errore umano e di processo. I clienti si sono lamentati pubblicamente su Twitter.

    Cosa mostra un check dall’esternoUn check del dominio riporta la data di scadenza con giorni di anticipo, da un sistema che non dipende dal rinnovo automatico che è fallito. Un check DNS da più regioni avrebbe segnalato la perdita di risoluzione dopo 2 check consecutivi falliti. Una pagina di stato su un altro dominio avrebbe portato il messaggio mentre marketo.com non risolveva, ma nessun check può rinnovare il dominio.

    Fonte: Knowledge base di Marketo (Adobe), P1 del 25 luglio 2017 · The Drum, 2017-07-26

  4. GitLab.com: database cancellato, 5 percorsi di backup falliti

    Circa 18 ore di downtime, per lo più di ripristino. Sei ore di dati sono andate perse: circa 5.000 progetti, 5.000 commenti e 700 nuovi account. Repository e wiki non sono stati coinvolti.

    Mentre riparava la replica, un ingegnere ha rimosso la directory dei dati sul primario invece che sul secondario. I backup pg_dump non esistevano, perché lo script eseguiva pg_dump 9.2 contro PostgreSQL 9.6 e falliva. GitLab ha scritto che le notifiche per i job cron falliti venivano inviate via email, ma DMARC non era abilitato per quelle email, quindi il ricevente le rifiutava. Gli snapshot dei dischi non erano abilitati per i server del database, e restava solo uno snapshot LVM manuale vecchio di 6 ore.

    Cosa mostra un heartbeatUn heartbeat funziona come dead man’s switch: il job di backup invia un segnale dopo il successo, e Perstat avvisa se il segnale manca, con o senza un’email di errore. Il caso mostra anche che gli alert non devono dipendere da un solo canale, che può fallire a sua volta. L’escalation dovrebbe quindi passare su più percorsi e richiedere una presa in carico. Un heartbeat non controlla se il backup si può ripristinare: quello resta compito di un test di ripristino.

    Fonte: Post-mortem di GitLab, 2017-02-10 · The Register, 2017-02-01, sulle 5 tecniche di backup

Leggi tutti i casi documentati e le fonti

Perstat sostituisce check, pagine di stato e reperibilità uptime

Perstat copre la catena che va dal check fallito fino alle evidenze. Non è una suite di osservabilità, per scelta.

  • Check di uptime

    Al posto di UptimeRobot, Pingdom o dei check di uptime di una suite più ampia: 13 tipi di check da regioni indicate per nome.

  • Pagina di stato

    Al posto di Atlassian Statuspage: pagine pubbliche o protette, alimentate dagli stessi monitor e incident.

  • Reperibilità per l’uptime

    Al posto della parte uptime di Opsgenie o PagerDuty: presa in carico dal telefono, più turni ed escalation.

Log, trace, APM e alert di altri strumenti restano dove sono. Perstat non li acquisisce.

Pipeline e agenti agiscono senza rischiare la cronologia

L’endpoint MCP che registra i monitor serve anche agenti e script. Ogni scrittura è attribuita alla persona che ha creato la chiave, e il suo ruolo attuale viene verificato a ogni chiamata.

Leggi la documentazione MCP
Strumenti di scrittura via MCPtools/call
  • create_projectCrea un progetto
  • create_monitorCrea un monitor
  • update_monitorModifica nome, impostazioni, intervallo o regioni
  • set_monitor_enabledMetti in pausa o riattiva un monitor
  • archive_monitorArchivia un monitor e libera il suo posto nel piano
  • restore_monitorRipristina un monitor archiviato, in pausa
  • acknowledge_incidentPrendi in carico un incident
  • resolve_incidentRisolvi un incident
  • delete_monitorNon esiste, perché eliminare un monitor eliminerebbe anche la sua cronologia degli incident.
MCP
Leggi monitor e incident, crea e modifica monitor, prendi in carico e risolvi incident. Per creare monitor serve una chiave API valida per tutta l’organizzazione.
REST e webhook
Letture REST per dashboard e report, più un webhook firmato per le tue automazioni.
Notifiche
Slack, Microsoft Teams, Discord, Google Chat, PagerDuty e Opsgenie.

App native per iPhone, iPad e Apple Watch

Le app mostrano alert a tutto schermo, ti fanno prendere in carico con uno swipe e mettono l’incident aperto sulla schermata di blocco come Attività in tempo reale. Non esiste un’app Android nativa, ma gli SMS da Pulse e le telefonate di reperibilità da Sentinel raggiungono ogni telefono.

Vedi su App Store
25 secondi · senza audio
L’allarme raggiunge la persona reperibile. Vera app iPhone. Registrazione in inglese con dati di esempio. Allarme → Silenzia → Presa in carico. Il servizio resta indisponibile finché il guasto non viene risolto.

Inizia gratis e fai l’upgrade senza chiamate commerciali

Ogni piano e ogni limite sono sulla pagina, Enterprise compreso. Free, Pulse, Sentinel e Command sono self-service, ed Enterprise parte da una richiesta.

Scorri di lato per confrontare tutti i piani

Confronto sintetico dei cinque piani Perstat
Cosa cambia con ogni pianoFree0 €/ mesePulse29 €/ meseSentinel89 €/ meseLa reperibilità parte da quiCommand249 €/ meseEnterpriseda 690 €/ mese
Monitor1050150500su misura
Utenti131530su misura
Intervallo minimo300 s60 s30 s15 s10 s
Regioni delle sonde2 su 63 su 6tutte e 6tutte e 6tutte e 6
Storico pubblico*7 giorni30 giorni90 giorni1 anno2 anni
Pagine di stato11520su misura
Reperibilità, incident manuali, post-mortemnonoinclusiinclusiinclusi

Prezzi al mese in EUR, netti, IVA esclusa. Enterprise parte dall’importo indicato. *Questi valori limitano lo storico pubblico degli incident risolti. Gli altri oggetti dati seguono oggi regole separate di archiviazione e cancellazione. Verifica i limiti di conservazione documentati prima dell’acquisto.

  • Control plane nell’UE

    Gestito da Datargo GmbH in Germania.

  • Regioni indicate per nome

    Le sedi delle sonde sono elencate per nome, non nascoste dietro una mappa del mondo.

  • Stato verificabile

    Screenshot del prodotto, pagina di stato pubblica, report di esempio e limiti attuali per il procurement sono visibili senza login.

Metti il monitor nel tuo prossimo deploy

Inizia con Free: 10 monitor in 2 regioni. Crea una chiave API dell’organizzazione e aggiungi uno step alla tua pipeline.