Calcoli la disponibilità dalle durate degli incidenti
Un mese di 30 giorni, cioè 43.200 minuti, con tre incidenti che sommano 45 minuti dà poco meno del 99,9 % di disponibilità, ovvero due nove. Inserisca periodo e durata degli incidenti nella stessa unità. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Periodo
- 43.200 minutes
- Incidenti
- 10, 20, 15
- Numero di incidenti
- 3 minutes
- Tempo totale degli incidenti
- 45
- Tempo disponibile
- 43.155
- Percentuale di disponibilità
- 99,8958333333
Trasformi una finestra di monitoraggio e le durate degli incidenti in un risultato chiaro. Il calcolatore somma i disservizi, verifica che rientrino nel periodo, li sottrae dal tempo monitorato e restituisce percentuale e classificazione in nove. Scelga secondi, minuti, ore o giorni e mantenga la stessa unità. Il calcolo è deterministico, senza rete né ipotesi su calendari, orari o sovrapposizioni.
Prepari periodo e durate attendibili
Parta dall’intero intervallo del rapporto, per esempio 30 giorni, 720 ore o 43,200 minuti. Elenchi ogni incidente che ha ridotto la disponibilità nello stesso intervallo. Periodo e incidenti devono condividere l’unità; usi una lista vuota in assenza di disservizi.
Il calcolatore considera distinte le durate e non rileva sovrapposizioni, quindi consolidi prima gli incidenti simultanei dello stesso servizio. Il periodo deve essere positivo e ogni durata finita e non negativa. Se la somma supera il periodo, la richiesta viene rifiutata anziché produrre un valore negativo fuorviante.
Comprenda percentuale e classificazione
Le durate vengono sommate e sottratte dal periodo; il tempo disponibile viene diviso per il periodo e moltiplicato per 100. Il 99.9 per cento corrisponde a un millesimo di indisponibilità. La classificazione usa la parte intera del logaritmo negativo in base dieci: 0.001 dà tre nove, 0.0001 quattro.
I valori intermedi restano nella classe inferiore. Senza incidenti viene indicata disponibilità perfetta e nessun conteggio finito.
Utilizzi il risultato nei rapporti
I campi supportano riepiloghi e automazioni: conteggio, tempo totale, tempo disponibile, percentuale e classe. Prima della pubblicazione verifichi date e politica sulla manutenzione programmata. Per un obiettivo di servizio confronti la percentuale con la soglia contrattuale, non soltanto l’etichetta.
Un totale superiore al periodo spesso segnala duplicati, unità miste o rapporti incompatibili.
Casi d'uso
Pubblicare un riepilogo mensile
Combini mese e incidenti confermati per ottenere una percentuale verificabile.
Verificare un obiettivo di servizio
Calcoli la disponibilità prima del confronto con soglie o budget di errore.
Validare un’esportazione
Rilevi rapporti impossibili dovuti a duplicati o unità miste.
Domande frequenti
Quali unità posso usare?
Scelga secondi, minuti, ore o giorni e usi la stessa unità per tutti i valori.
Come vengono classificati i nove?
Il conteggio è la parte intera del logaritmo negativo della frazione di disservizio.
Cosa accade senza incidenti?
Una lista vuota produce il 100 per cento e disponibilità perfetta, senza conteggio finito.
Gestisce incidenti sovrapposti?
No. Consolidi prima le durate sovrapposte dello stesso servizio.
E se gli incidenti durano in tutto più del periodo?
Il calcolo viene rifiutato invece di restituire una disponibilità negativa, che non avrebbe senso. Controlli che il periodo copra l'intero intervallo del rapporto e che gli incidenti siano espressi nella stessa unità.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/web/status-page-uptime-percent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"period":60,"incidents":[10,20,15]}'const res = await fetch("https://api.kit.forhosting.com/web/status-page-uptime-percent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"period": 60,
"incidents": [
10,
20,
15
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/status-page-uptime-percent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"period": 60,
"incidents": [
10,
20,
15
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/status-page-uptime-percent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"period":60,"incidents":[10,20,15]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"period":60,"incidents":[10,20,15]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/status-page-uptime-percent", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"period": 60,
"incidents": [
10,
20,
15
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.status_page_uptime_percent",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_incidents | 10000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Comprenda percentuale e classificazione
La percentuale è arrotondata a dodici decimali per un JSON stabile, mentre la classe usa il rapporto non arrotondato.
Utilizzi il risultato nei rapporti
Il browser è adatto ai controlli rapidi; nelle pipeline ogni chiamata API costa $0.002.
Domande tecniche
Quanto costa il calcolo via API?
Ogni richiesta API costa $0.002; lo stesso calcolo è disponibile nel browser.