Tu as déjà eu cette sueur froide en découvrant que ton site est down depuis 3 heures ? Ou pire, c’est un client qui te prévient ?
Introduction
La surveillance d’infrastructure, c’est comme l’assurance auto : personne ne trouve ça sexy jusqu’au jour où tu en as vraiment besoin. Sauf que contrairement à l’assurance, un bon système de monitoring peut t’épargner bien plus qu’une facture de carrosserie.
Je parle de :
- Ta réputation (un site down = des clients mécontents)
- Ton sommeil (parce que te réveiller à 3h du mat’ pour un serveur tombé, ça use)
- Ton temps (réparer en réactif prend 10x plus de temps que prévenir)
Dans cet article, on va plonger dans UptimeRobot, une solution de monitoring qui a sauvé mes nuits (et mon café matinal) plus d’une fois. Que tu gères un seul WordPress ou une infrastructure avec 50 services, tu vas découvrir comment configurer un système de surveillance digne de ce nom.
Contrairement à certains tutoriels qui te balancent juste « clique ici, clique là », on va creuser : API, webhooks, alertes intelligentes, cas d’usage concrets, et même une comparaison honnête avec les alternatives self-hosted.
Sommaire :
1. Qu’est-ce qu’UptimeRobot (et pourquoi tu devrais t’en servir)
UptimeRobot est un service de surveillance de disponibilité (uptime monitoring) qui vérifie régulièrement que tes sites, serveurs et services sont bien vivants. Si quelque chose tombe, tu es alerté immédiatement par email, SMS, Slack, Discord ou n’importe quel webhook que tu configures.
Pourquoi UptimeRobot plutôt qu’une autre solution ?
Les avantages :
- ✅ Plan gratuit généreux : 50 moniteurs, vérifications toutes les 5 minutes
- ✅ Zero configuration serveur : pas besoin d’installer d’agent
- ✅ Surveillance externe : détecte les problèmes réseau/DNS que tu ne verrais pas en interne
- ✅ Interface simple mais puissante
- ✅ API complète pour automatiser tout ce qui bouge
- ✅ Pages de statut publiques (comme status.github.com)
Ce qu’il ne fait PAS :
- ❌ Monitoring de métriques système (CPU, RAM, disque) → pour ça, regarde Prometheus/Grafana
- ❌ Logs applicatifs détaillés
- ❌ Surveillance réseau interne complexe
Pour qui ?
- Sysadmins débutants qui veulent une solution rapide et fiable
- Freelances qui gèrent plusieurs sites clients
- Équipes DevOps qui veulent un monitoring externe en complément
- Homelabbers qui auto-hébergent des services
💡 À savoir : UptimeRobot vérifie depuis l’extérieur. Si ton site fonctionne localement mais est inaccessible depuis Internet (DNS, firewall…), tu seras alerté. C’est exactement ce qu’on veut.
👉 Créer un compte UptimeRobot gratuitement
2. Configuration initiale : les premières vérifications
Créer ton premier monitor (en 2 minutes chrono)
- Inscription : Va sur UptimeRobot, crée un compte (email + mot de passe, classique)
- Premier monitor :
- Clique sur « Add New Monitor »
- Monitor Type : « HTTP(s) » (le plus courant)
- Friendly Name : « Site Prod – brandonvisca.com » (sois explicite, ton toi de 3h du mat’ te remerciera)
- URL :
https://brandonvisca.com
- Monitoring Interval : 5 minutes (gratuit) ou 1 minute (plan payant)
- Alert Contacts : Configure au moins ton email principal (on verra plus loin comment ajouter Slack/Discord/SMS)
Résultat : En moins de 2 minutes, ton site est surveillé. Si demain ton serveur tombe, tu es prévenu dans les 5 minutes max.
Checklist de démarrage
✅ Monitor principal configuré (site/app la plus critique)
✅ Email d’alerte validé (check tes spams !)
✅ Période de maintenance planifiée (si t’as des maintenances régulières)
✅ Page de statut publique activée (optionnel mais pro)
3. Types de monitoring disponibles
UptimeRobot ne fait pas que pinger ton site. Il supporte plusieurs protocoles et méthodes de vérification :
3.1. HTTP(s) – Le classique
Ce qu’il fait :
- Envoie une requête GET à ton URL
- Vérifie le code HTTP (200 = OK, 404 = problème)
- Peut vérifier la présence d’un texte spécifique dans la page
Cas d’usage :
- Sites WordPress
- Applications web
- API REST
Configuration avancée :
Monitor Type: HTTP(s)
URL: https://brandonvisca.com/health-check
Keyword Monitoring: Contains "status:ok"
🎯 Bonne pratique : Crée une page
/health-check
qui vérifie la base de données, le cache, etc. UptimeRobot vérifie cette page plutôt que la home. Plus fiable.
3.2. Ping – Pour les serveurs bruts
Vérifie juste que le serveur répond (ICMP).
Idéal pour :
- VPS/serveurs dédiés
- Équipements réseau
- Homelab (NAS, Proxmox, etc.)
Attention : Certains hébergeurs bloquent le ping. Préfère HTTP si possible.
3.3. Port Monitoring – Services spécifiques
Vérifie qu’un port TCP est ouvert.
Exemples :
- Port 22 (SSH)
- Port 3306 (MySQL)
- Port 25 (SMTP)
Configuration :
Monitor Type: Port
Port: 22
Server: 192.168.1.100
Si ton serveur de base de données externe tombe, tu es prévenu immédiatement.
3.4. Keyword Monitoring – Surveillance de contenu
Le plus sous-estimé. UptimeRobot peut vérifier la présence (ou l’absence) d’un texte sur ta page.
Cas d’usage concrets :
- Vérifier qu’il n’y a pas « Error » ou « Warning » dans ta page
- Confirmer que « Login » est présent (sinon = page d’erreur)
- Détecter si un hacker a modifié du contenu
Exemple réel :
URL: https://monsite.com
Keyword Type: NOT EXISTS
Keyword Value: "Fatal error"
Si « Fatal error » apparaît, tu es alerté même si le site renvoie un code 200.
4. Système d’alertes avancé
Le monitoring sans alertes efficaces, c’est comme avoir un détecteur de fumée sans pile. Voici comment configurer un système d’alertes intelligent.
4.1. Canaux d’alerte multiples
Email : La base, toujours activée
SMS : Plan payant uniquement (0.15$ par SMS)
- À réserver pour les services critiques
- Configure un numéro de backup au cas où
Slack / Discord / Teams :
- Crée un webhook dans ton espace de travail
- Colle l’URL dans UptimeRobot
- Choisis le format de notification
Exemple webhook Slack :
Webhook URL: https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXX
Channel: #monitoring
Alert When: Down, Up, Started
Webhook personnalisé : Pour envoyer vers n’importe quelle API (PagerDuty, ton propre système…)
POST https://monapi.com/alert
{
"monitorID": "*monitorID*",
"monitorURL": "*monitorURL*",
"alertType": "*alertType*",
"alertDateTime": "*alertDateTime*"
}
4.2. Alertes conditionnelles (éviter le spam)
Problème classique : Ton serveur redémarre, UptimeRobot t’envoie 5 alertes en 2 minutes. Relou.
Solution : Alert contacts groups
Configure plusieurs groupes :
- Critique : Email + SMS + Slack → Sites de prod
- Important : Email + Slack → Services secondaires
- Info : Email uniquement → Sites de dev/test
Périodes de silence :
Maintenance Window: Dimanche 02h00 - 04h00
Silenced: true
Pendant cette période, aucune alerte même si le service est down.
4.3. Escalade progressive
Plan payant uniquement, mais puissant :
Étape 1 (0 min) : Email au sysadmin
Étape 2 (15 min) : Si toujours down → SMS manager
Étape 3 (30 min) : Si toujours down → Appel téléphonique + email direction
Tu dors tranquille : si c’est un micro-downtime, tu es juste notifié. Si c’est grave et que tu ne réagis pas, ça escalade automatiquement.
5. Intégration API et automatisation
L’API UptimeRobot est une pépite pour automatiser. Voici comment en tirer parti.
5.1. Créer des monitors en masse via script
Imagine : tu déploies 20 nouveaux sites WordPress. Plutôt que cliquer 20 fois, automatise :
Script Python :
import requests
import json
API_KEY = "ur123456-abcdef1234567890"
API_URL = "https://api.uptimerobot.com/v2/newMonitor"
sites = [
{"name": "Site Client 1", "url": "https://client1.com"},
{"name": "Site Client 2", "url": "https://client2.com"},
# ... 18 autres
]
for site in sites:
payload = {
"api_key": API_KEY,
"format": "json",
"type": 1, # HTTP(s)
"friendly_name": site['name'],
"url": site['url'],
"interval": 300 # 5 minutes
}
response = requests.post(API_URL, data=payload)
print(f"Monitor créé pour {site['name']}: {response.json()}")
En 10 secondes, tes 20 sites sont monitorés.
5.2. Récupérer les statuts pour un dashboard perso
Tu veux afficher l’uptime de tes services sur ton propre site ? Facile :
API Call :
curl -X POST https://api.uptimerobot.com/v2/getMonitors \
-d "api_key=ur123456-abcdef1234567890" \
-d "format=json"
Réponse :
{
"monitors": [
{
"id": 123456,
"friendly_name": "Site Prod",
"url": "https://brandonvisca.com",
"status": 2, // 2 = Up, 9 = Down
"all_time_uptime_ratio": "99.98"
}
]
}
Intègre ça dans un widget sur ton dashboard. Tes clients adorent voir « 99.98% uptime » en gros.
5.3. Intégration avec Ansible/Terraform
Pour les fanas d’Infrastructure as Code :
Terraform Provider :
provider "uptimerobot" {
api_key = var.uptimerobot_api_key
}
resource "uptimerobot_monitor" "prod_site" {
friendly_name = "Site Production"
url = "https://brandonvisca.com"
type = "http"
interval = 300
}
Déployer un nouveau serveur = monitoring automatiquement configuré.
6. Cas d’usage concrets
6.1. Freelance : Surveiller 30 sites clients
Situation : Tu gères 30 WordPress pour des clients, budget limité.
Configuration UptimeRobot :
- Plan gratuit : 50 monitors (large pour 30 sites)
- 1 monitor par site :
https://clientX.com
- Keyword monitoring : « NOT EXISTS » → « Error »
- Alert : Email + Slack (chan #clients)
Workflow :
- Site tombe → Alerte Slack
- Tu vérifie rapidement (95% du temps c’est juste un redémarrage serveur)
- Si problème persistant → Contactes l’hébergeur
- Client jamais impacté > 5 minutes
Résultat : Tes clients te payent aussi pour la tranquillité. Ils savent que si leur site tombe, tu réagis avant même qu’ils s’en rendent compte.
6.2. Startup : Stack complète à surveiller
Infrastructure :
- Site web principal (Next.js)
- API backend (Node.js)
- Base de données PostgreSQL (port 5432)
- Serveur SMTP
- CDN Cloudflare
Monitors UptimeRobot :
1. https://app.startup.com → HTTP(s)
2. https://api.startup.com/health → HTTP(s) + Keyword "ok"
3. db.startup.com:5432 → Port
4. smtp.startup.com:25 → Port
5. cdn.startup.com → HTTP(s)
Alertes :
- App/API down → SMS + Slack #incidents (critique)
- DB/SMTP down → Slack #tech (important, mais pas critique côté user)
- CDN down → Email (Cloudflare gère, juste pour info)
6.3. Homelab : Auto-hébergement
Tu auto-héberges Nextcloud, Plex, Jellyfin, Pi-hole chez toi ? UptimeRobot est parfait.
Configuration :
https://nextcloud.mondomaine.com
https://plex.mondomaine.com
http://192.168.1.10:8096 (Jellyfin - port local)
http://192.168.1.2 (Pi-hole)
Astuce : Pour les services derrière VPN, utilise un endpoint public qui fait un healthcheck interne. Ou configure UptimeRobot sur un VPS qui a accès au VPN.
Comme j’explique dans mon guide sur la sécurisation des serveurs Linux, surveiller c’est bien, mais sécuriser d’abord c’est mieux.
7. UptimeRobot vs Alternatives
On va être honnête : UptimeRobot n’est pas la seule solution. Comparons avec les alternatives populaires.
UptimeRobot vs Uptime Kuma (self-hosted)
Uptime Kuma : Solution open-source auto-hébergée, très populaire dans la communauté homelab.
Critère | UptimeRobot | Uptime Kuma |
---|---|---|
Coût | Gratuit (limité) / 7$/mois | Gratuit (mais coût serveur) |
Installation | Aucune | Docker / Node.js |
Maintenance | Zéro | Updates, backups, etc. |
Surveillance externe | ✅ Oui | ❌ Non (sauf reverse proxy) |
Monitoring interne | ❌ Non | ✅ Oui |
API | Complète | Moyenne |
Interface | Simple mais datée | Moderne, jolie |
Verdict :
- UptimeRobot si tu veux du monitoring externe sans te prendre la tête
- Uptime Kuma si tu veux tout contrôler et que tu as déjà un serveur qui tourne
💡 Astuce pro : Utilise les deux ! UptimeRobot pour la surveillance externe (détecte les problèmes réseau/DNS), Uptime Kuma en interne pour les métriques détaillées.
UptimeRobot vs Pingdom
Pingdom : Ancien leader, racheté par SolarWinds.
Critère | UptimeRobot | Pingdom |
---|---|---|
Prix | 7$/mois | 10$/mois (10 checks) |
Gratuit | 50 monitors | 0 (essai seulement) |
Monitoring avancé | Basique | Avancé (RUM, Synthetics) |
Rapport client | Oui | Oui (plus pro) |
Verdict : Pingdom est plus puissant, mais overkill (et cher) pour 95% des cas. UptimeRobot fait le job pour beaucoup moins cher.
UptimeRobot vs Zabbix / Prometheus
Zabbix / Prometheus : Solutions enterprise de monitoring complet (CPU, RAM, logs, métriques custom…).
Différence fondamentale :
- UptimeRobot : Surveillance de disponibilité (up/down)
- Zabbix/Prometheus : Monitoring système complet (métriques, graphes, alertes complexes)
Verdict : Pas comparable. Si tu gères une infra conséquente, tu DOIS avoir du Zabbix/Prometheus ET du monitoring externe comme UptimeRobot.
8. Bonnes pratiques et pièges à éviter
✅ Bonnes pratiques
1. Crée des healthcheck endpoints dédiés
Plutôt que de monitorer ta homepage, crée une route /health
qui vérifie :
- Base de données accessible
- Cache Redis/Memcached OK
- Système de fichiers writable
// /health.php
header('Content-Type: application/json');
$status = [
'database' => check_db(),
'cache' => check_redis(),
'disk' => check_disk_space()
];
if (all_ok($status)) {
http_response_code(200);
echo json_encode(['status' => 'ok']);
} else {
http_response_code(500);
echo json_encode(['status' => 'error', 'details' => $status]);
}
2. Configure des maintenances planifiées
Tu fais une mise à jour tous les dimanches matin ? Configure UptimeRobot pour ne pas t’alerter pendant cette période.
Maintenance Window: Dimanche 02:00 - 04:00 UTC
3. Utilise des alert groups
Ne mélange pas les alertes critiques (site prod down) et les warnings (site de dev lent). Crée des groupes distincts.
4. Documente tes runbooks
Dans les notes du monitor, écris la procédure de résolution :
Monitor: Site Production
Notes:
- Si down : Check https://status.ovh.com (hébergeur)
- Restart: ssh user@server "systemctl restart nginx"
- Escalade si > 15min : tel +33612345678 (manager)
❌ Pièges à éviter
1. Monitorer uniquement la homepage
Ta homepage peut charger en cache même si la DB est morte. Monitore des pages dynamiques.
2. Trop de monitors = alerte fatigue
50 monitors gratuits ≠ tu dois en créer 50. Commence par l’essentiel (5-10 services critiques), ajoute progressivement.
3. Oublier de tester les alertes
Clique sur « Test Alert Contact » régulièrement. Vérifie que ton email/Slack/SMS fonctionne toujours.
4. Ignorer les patterns
Si ton site tombe tous les jeudis à 14h, c’est pas UptimeRobot qui déconne, c’est ton script de backup qui bouffe toute la RAM. Analyse les logs.
⚠️ Erreur fréquente : Configurer des alertes sans avoir de plan d’action. Être alerté c’est bien, savoir quoi faire après c’est mieux.
Optimisation : Surveiller plus intelligent
Status Pages : Transparence avec tes clients/users
UptimeRobot te permet de créer des pages de statut publiques (comme status.github.com).
Configuration :
- Dashboard → Status Pages → Create Status Page
- Sélectionne les monitors à afficher publiquement
- Personnalise le design (logo, couleurs)
- Partage l’URL :
https://status.brandonvisca.com
Avantages :
- Transparence totale avec tes users
- Réduit le support (les gens checkent d’abord le statut avant de t’envoyer un email)
- Montre que tu prends la dispo au sérieux
Intégration avec ta stack de monitoring
Si tu as déjà du Grafana/Prometheus pour les métriques internes, combine avec UptimeRobot pour la vue externe :
┌─────────────────┐ ┌──────────────────┐
│ UptimeRobot │────▶│ Webhook → API │
│ (monitoring │ │ → Prometheus │
│ externe) │ │ → Grafana │
└─────────────────┘ └──────────────────┘
│
▼
┌─────────────┐
│ Dashboard │
│ unifié │
└─────────────┘
Résultat : Un dashboard unique qui montre à la fois la dispo externe ET les métriques serveur internes.
Cas pratique : Migrer de Pingdom à UptimeRobot
Tu payes 50$/mois Pingdom et tu veux économiser ? Voici comment migrer proprement.
Étape 1 : Export depuis Pingdom
# Pingdom n'a pas d'export facile, script manuel :
curl -u email:password https://api.pingdom.com/api/3.1/checks
Étape 2 : Import dans UptimeRobot
Utilise l’API pour créer les monitors en masse (voir section 5.1).
Étape 3 : Période de transition
Garde les deux actifs pendant 1 semaine. Compare les alertes. Vérifie que rien ne passe entre les mailles.
Étape 4 : Bascule complète
Désactive Pingdom, ne garde qu’UptimeRobot.
Économie : 43$/mois → 0$/mois (plan gratuit) ou 7$/mois (plan pro)
Pour aller plus loin : Architecture de monitoring complète
Un bon système de surveillance ne se limite pas à UptimeRobot. Voici une stack complète que je recommande :
Stack monitoring pour PME/Startup
Niveau 1 : Disponibilité externe
- UptimeRobot → Monitoring HTTP(s), ping, ports
Niveau 2 : Métriques système
- Prometheus + Grafana → CPU, RAM, disque, réseau
- Node Exporter sur chaque serveur
Niveau 3 : Logs
- Loki ou ELK Stack → Centralisation des logs applicatifs
Niveau 4 : APM (optionnel)
- Sentry → Errors tracking
- DataDog ou New Relic → Performance applicative
Cette stack te donne une visibilité à 360° sur ton infra. Et UptimeRobot, en tant que surveillance externe, est la première ligne de défense.
Si tu veux approfondir la sécurité de ton serveur avant d’activer la surveillance, je te recommande vivement de lire mon guide sur la sécurisation des serveurs Linux. Parce qu’un serveur bien surveillé mais pas sécurisé, c’est comme fermer la porte à clé mais laisser les fenêtres ouvertes.
Monitoring avancé : Détection d’anomalies
Plan payant uniquement, mais si tu gères des services critiques, ça vaut le coup :
Anomaly Detection : UptimeRobot apprend le comportement normal de ton site (temps de réponse moyen) et t’alerte si un écart anormal est détecté, MÊME si le site est techniquement « up ».
Exemple :
Temps de réponse habituel : 200-300ms
Aujourd'hui : 2500ms (site très lent mais pas down)
→ Alerte déclenchée
Tu peux anticiper les problèmes avant qu’ils deviennent critiques.
Ressources et outils complémentaires
Outils gratuits pour compléter UptimeRobot
- SSL Certificate Checker : UptimeRobot vérifie aussi les expirations SSL (inclus)
- DNS Propagation Checker : Pour vérifier que tes DNS sont bien configurés partout
- Webpage Test : Pour analyser les performances de chargement
Communauté et support
- Documentation officielle : https://uptimerobot.com/help
- API Docs : https://uptimerobot.com/api
- Forum : Communauté active qui partage des scripts/configs
Conclusion : La tranquillité d’esprit n’a pas de prix (mais elle coûte 0€)
Surveiller ton infrastructure, c’est pas du luxe. C’est du basique obligatoire en 2025.
Que tu gères un seul WordPress ou une stack microservices avec 20 services, UptimeRobot te donne la visibilité nécessaire pour dormir tranquille. Et si tu débutes, le plan gratuit est largement suffisant.
La vraie question c’est pas « Dois-je surveiller mon infra ? », c’est « Pourquoi je ne l’ai pas fait avant ? ».
Prochaines étapes :
- Crée ton compte UptimeRobot
- Configure ton premier monitor (5 minutes max)
- Teste tes alertes (important !)
- Documente ta procédure d’incident
- Dors tranquille
Et si tu veux pousser plus loin, couple UptimeRobot avec un bon système de logs et métriques (Prometheus/Grafana). Tu auras une visibilité totale sur ton infra.
Dans un prochain article, on verra comment automatiser la création de monitors avec Terraform et intégrer UptimeRobot dans un pipeline CI/CD complet.
Articles connexes recommandés
Si cet article t’a plu, tu vas probablement aimer :
- Sécurité de votre serveur Linux : Avant de surveiller, sécurise. Ce guide couvre SSH, firewall, fail2ban et toutes les bases.
- Migration WordPress All-in-One : Tu migres un site ? Surveille-le avant ET après avec UptimeRobot pour détecter les problèmes de config.
- Installation LocalWP WordPress Local : Développe en local, déploie en prod, surveille avec UptimeRobot. Le workflow complet.
- SnipeIT Inventaire IT : Garde un inventaire de tes serveurs et lie chaque asset à son monitor UptimeRobot.
Note éditoriale : Cet article utilise des liens affiliés vers UptimeRobot. Si tu passes par ces liens, je touche une petite commission qui me permet de continuer à produire du contenu gratuit et de qualité. Ça ne change rien au prix pour toi, et je ne recommande que des outils que j’utilise personnellement.
Dernière mise à jour : Octobre 2025
Laisser un commentaire