Prometheus utilise un modèle Pull, mais certaines tâches batch ou containers éphémères ne peuvent pas être scrappés. Pushgateway permet de recevoir des métriques poussées et de les exposer à Prometheus.
Prérequis
- Prometheus en fonctionnement
- Serveur ou container Docker
Installation rapide
docker run -d --name pushgateway -p 9091:9091 prom/pushgateway
Configuration de Prometheus
Ajoutez à prometheus.yml
:
scrape_configs:
- job_name: 'pushgateway'
static_configs:
- targets: ['pushgateway:9091']
Redémarrez Prometheus.
Exemple d’utilisation
Pour pousser une métrique depuis un script :
cat <<EOF | curl --data-binary @- http://localhost:9091/metrics/job/backup
backup_duration_seconds 123
EOF
Nettoyage des métriques
Supprimez les métriques d’un job :
curl -X DELETE http://localhost:9091/metrics/job/backup
Visualisation
- Dans Grafana, créez un dashboard avec Prometheus.
- Exemples de requêtes :
rate(backup_duration_seconds[5m])
Conclusion
Pushgateway complète Prometheus pour les métriques éphémères ou push-based, garantissant cohérence et visibilité sur vos jobs batch.