Ce système de surveillance fournit des vérifications en temps réel de l'état des services d'infrastructure critiques, notamment la Base de données, Meilisearch, ChromaDB, Redis, S3 et le service de conversion PDF. Il propose à la fois une API et un tableau de bord visuel pour la surveillance du système.
GET /health/services
{
"status": "healthy" | "unhealthy",
"timestamp": "2024-01-01T12:00:00.000Z",
"totalResponseTime": 235,
"services": {
"database": {
"status": "healthy" | "unhealthy",
"responseTime": 50,
"error": null | "message d'erreur"
},
"meilisearch": {
"status": "healthy" | "unhealthy",
"responseTime": 45,
"error": null | "message d'erreur"
},
// ... autres services
}
}
200: Tous les systèmes sont opérationnels500: Un ou plusieurs services sont défaillants# Utilisation de cURL
curl -X GET http://votre-domaine/health/services -H "Accept: application/json"
# Utilisation de wget
wget -qO- http://votre-domaine/health/services
#!/bin/bash
HEALTH_ENDPOINT="http://votre-domaine/health/services"
ALERT_EMAIL="admin@votre-domaine.com"
response=$(curl -s $HEALTH_ENDPOINT)
status=$(echo $response | jq -r '.status')
if [ "$status" != "healthy" ]; then
echo "Système défaillant: $response" | mail -s "Alerte Santé" $ALERT_EMAIL
fi
*/5 * * * * /chemin/vers/script-surveillance.sh
scrape_configs:
- job_name: 'surveillance-sante'
metrics_path: '/health/services'
scrape_interval: 30s
static_configs:
- targets: ['votre-domaine:port']
# Vérifier la connectivité
psql -h <hôte> -U <utilisateur> -d <base>
# Vérifier le statut
curl http://localhost:7700/health
# Tester la connexion
redis-cli ping
# Redémarrer le service
sudo systemctl restart postgresql
# Vider le cache si nécessaire
redis-cli FLUSHALL
# Redémarrer Redis
sudo systemctl restart redis
# Redémarrer le service
sudo systemctl restart pdf-conversion-service
http://votre-domaine-front/health/
Surveillance régulière
Maintenance
Sécurité
Pour obtenir de l'aide supplémentaire ou signaler des problèmes :