La segnalazione di una corretta esecuzione di una procedura, risulta spesso più semplice e lineare dal punto di vista tecnico, rispetto alla notificazione di un malfunzionamento.
Ogni condizione che non fa girare una procedura, infatti, potrebbe impedire l'invio stesso della notifica.
D'altra parte, una comunicazione inviata quotidianamente agli utenti, potrebbe apparire abitudinaria ed essere ignorata.
HealthChecks è un'applicazione web nata per rispondere a questo problema, e si presenta con le seguenti caratteristiche:
- Un'interfaccia web grafica per la gestione dell'intera applicazione;
- Più di 25 integrazioni per l'invio delle notifiche (Email, SMS, Slack, Microsoft Teams, Mattermost, etc..);
- Accessi differenziati e gestione dei permessi;
- Possibilità di installazione su server di proprietà;
- Possibilità di autenticazione con LDAP/AD, OAuth, OIDC (Google, Github, Okta, Auth0, Nextcloud, etc..);
- Integrazione immediata con Cron, Systemd, Bash, Python, Node.js, Go, PHP, ed in generale con ogni procedura eseguita su un dispositivo con connessione ad internet;
- Reportistica mensile;
- Gestione centralizzata dello stato di tutte le procedure, degli stati e delle notifiche inviate;
- Storico degli andamenti, dei periodi di malfunzionamento;
- Possibilità di esporre al pubblico lo stato dei sistemi.
Il funzionamento è il seguente:
- Da interfaccia web, viene aggiunto un nuovo tipo di controllo a cui vengono assegnati un nome, una descrizione, ed un link univoco;
- Viene definito il timing di quella specifica procedura (ogni quanto deve girare e dopo quanto tempo inviare una eventuale notifica di malfunzionamento);
- La procedura viene configurata in modo da contattare il link univoco generato nei passaggi precedenti, nel caso in cui tutto funzioni correttamente.
Ad intervalli prefissati, HealthChecks attende dunque di essere contattato. Nel caso in cui questo non accada, HealthChecks invierà tempestivamente una comunicazione ai soggetti preimpostati.