pour
Recevez une alerte lorsque vos sauvegardes nocturnes, vos rapports hebdomadaires, vos tâches cron/planifiées ne s'exécutent pas à temps.
Si l'url ne reçoit pas de ping a temps,
Supervise vous envoie une alerte.
L'api s'adapte à beaucoup de langages de programmation et divers cas de
figure via des appels HTTP.
https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e
Nouveau. Un check a été créé, mais qui n'a pas encore reçu de ping. | |
OK. Le temps écoulé depuis le dernier ping n'a pas dépassé l'intervalle. | |
En retard. Le temps écoulé depuis le dernier ping a dépassé l'intervalle, mais n'a pas encore dépassé le temps de grâce. | |
KO. Le temps écoulé depuis le dernier ping a dépassé l'intervalle +
grâce.
Lorsqu'un check passe de "retard" à "KO", Supervise vous envoie une notification. |
Elixir
url = "https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e"
response = HTTPoison.get!(url)
req = Poison.decode!(response.body)
Bash
# using curl (10 second timeout, retry up to 5 times):
curl -m 10 --retry 5 https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e
# using wget (10 second timeout, retry up to 5 times):
wget https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e -T 10 -t 5 -O /dev/null
Python
# Using Python 3 standard library:
import socket
import urllib.request
try:
urllib.request.urlopen("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e", timeout=10)
except socket.error as e:
# Log ping failure here...
print("Ping failed: %s" % e)
# Using the requests library:
import requests
try:
requests.get("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e", timeout=10)
except requests.RequestException as e:
# Log ping failure here...
print("Ping failed: %s" % e)
Ruby
require 'net/http'
require 'uri'
Net::HTTP.get(URI.parse('https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e'))
Node.js
var https = require('https');
https.get('https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e').on('error', (err) => {
console.log('Ping failed: ' + err)
});
GO
package main
import "fmt"
import "net/http"
import "time"
func main() {
var client = &http.Client{
Timeout: 10 * time.Second,
}
_, err := client.Head("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e")
if err != nil {
fmt.Printf("%s", err)
}
}
PHP
file_get_contents('https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e');
C#
try
{
using (var client = new System.Net.Http.HttpClient())
{
client.Timeout = System.TimeSpan.FromSeconds(10);
client.GetAsync("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e").Wait();
}
}
catch (System.Exception ex)
{
System.Console.WriteLine($"Ping KO: {ex.Message}");
}
Browser
// the server returns appropriate CORS headers so cross-domain AJAX requests work:
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e', true);
xhr.send(null);
PowerShell
# inside a PowerShell script:
Invoke-RestMethod https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e
Rust
use http::Request;
fn main() {
Request::builder().uri("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e").body(()).unwrap();
}
Java
URL url = new URL("https://beta.supervise.fr/ping/1129d0b6-3cc4-4a8b-b669-239ed072f15e");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
Email
Webhooks
Discord
Chat
Microsoft Teams
Chat
OpsGenie
Incident Management
Prometheus
Event Monitoring
Supervise est idéal pour les tâches cron et cron-like systèmes (minuteries systemd, tâches de build Jenkins, tâches planifiées Windows, wp-cron, interface de type cron uwsgi, Heroku Scheduler, ...). Un KO en tâche de fond n'a souvent aucune conséquence visible immédiate et peut rester longtemps inaperçu.
Exemples spécifiques :
Vous pouvez utiliser Supervise pour vérifier qu'un service système particulier ou l'ensemble du serveur est en bonne santé. Pour le client vous écrivez scripts/code/logique/conditions spécifique qui envoie un ping à Supervise en cas de succès. Exécutez le régulièrement.
Exemples spécifiques :