Ce script Python est conçu pour collecter des métriques à partir d'un appareil Shelly Shelly Pro 3EM
et exposez-les à Prometheus pour surveillance. Le script utilise Flask pour créer un serveur Web que Prometheus peut récupérer pour les métriques, ainsi que la bibliothèque client Prometheus pour définir et mettre à jour les métriques.
Python 3.6 or higher
Flask
prometheus_client
requests
Install required packages:
pip install flask prometheus_client requests
Run the script:
python shelly_exporter.py
Vérifiez que le script est en cours d'exécution : ouvrez un navigateur Web et accédez à http://<your_server_ip>:8004/metrics. Vous devriez voir les métriques Prometheus exposées.
Ajoutez la tâche suivante à votre fichier de configuration Prometheus (prometheus.yml) :
scrape_configs:
- job_name: 'shelly'
static_configs:
- targets: ['<your_server_ip>:8004']
sudo systemctl restart prometheus
Ouvrez l'interface Web de Prometheus et accédez à la page « Cibles » (http://<your_prometheus_ip>:9090/targets). Assurez-vous que la cible de l'exportateur Shelly est répertoriée et marquée comme « UP ».
Ouvrez Grafana et accédez à « Configuration » > « Sources de données ». Cliquez sur "Ajouter une source de données" et sélectionnez "Prometheus". Définissez l'URL sur http://<your_prometheus_ip>:9090 et cliquez sur « Enregistrer et tester ».
Pour importer le tableau de bord Grafana préconfiguré pour surveiller votre appareil Shelly Pro 3EM, suivez ces étapes :
Assurez-vous que votre instance Grafana est opérationnelle. La source de données Prometheus doit être configurée dans Grafana avec les métriques de votre exportateur Shelly Pro 3EM.
Importer le tableau de bord : Dans le menu de gauche, cliquez sur Créer > Importer. Vous serez invité à coller le JSON du tableau de bord, à télécharger un fichier JSON ou à saisir un ID de tableau de bord Grafana ( 21725 ). Choisissez l'option permettant de télécharger le fichier shelly_pro_3em_dashboard.json depuis votre système local.
Configurer la source de données : après le téléchargement, vous serez peut-être invité à sélectionner la source de données Prometheus. Choisissez la source de données correcte configurée pour vos métriques Shelly Pro 3EM.
Enregistrer et afficher le tableau de bord : une fois importé, cliquez sur Enregistrer pour enregistrer le tableau de bord. Vous pouvez désormais afficher les métriques en temps réel et les données historiques de votre appareil Shelly Pro 3EM sur le tableau de bord Grafana.
Personnalisation du tableau de bord Le tableau de bord est entièrement personnalisable. Vous pouvez ajouter, supprimer ou modifier des panneaux selon vos besoins. Pour des configurations supplémentaires ou pour contribuer à des améliorations, n'hésitez pas à soumettre une pull request ou à ouvrir un ticket.
Cliquez sur "Enregistrer" et donnez un nom à votre tableau de bord. Vous pouvez désormais surveiller les métriques de votre appareil Shelly dans Grafana.
En suivant ces étapes, vous pouvez surveiller les métriques de votre appareil Shelly à l'aide de Prometheus et Grafana.