Dieses Python-Skript dient zum Sammeln von Metriken von einem Shelly Shelly Pro 3EM-Gerät
und sie Prometheus zur Überwachung aussetzen. Das Skript verwendet Flask, um einen Webserver zu erstellen, den Prometheus nach Metriken durchsuchen kann, und die Prometheus-Clientbibliothek, um die Metriken zu definieren und zu aktualisieren.
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
Überprüfen Sie, ob das Skript ausgeführt wird: Öffnen Sie einen Webbrowser und navigieren Sie zu http://<your_server_ip>:8004/metrics. Die Prometheus-Metriken sollten angezeigt werden.
Fügen Sie den folgenden Job zu Ihrer Prometheus-Konfigurationsdatei (prometheus.yml) hinzu:
scrape_configs:
- job_name: 'shelly'
static_configs:
- targets: ['<your_server_ip>:8004']
sudo systemctl restart prometheus
Öffnen Sie die Weboberfläche von Prometheus und navigieren Sie zur Seite „Ziele“ (http://<your_prometheus_ip>:9090/targets). Stellen Sie sicher, dass das Shelly-Exporter-Ziel aufgeführt und als „UP“ markiert ist.
Öffnen Sie Grafana und navigieren Sie zu „Konfiguration“ > „Datenquellen“. Klicken Sie auf „Datenquelle hinzufügen“ und wählen Sie „Prometheus“. Legen Sie die URL auf http://<your_prometheus_ip>:9090 fest und klicken Sie auf „Speichern und testen“.
Um das vorkonfigurierte Grafana-Dashboard zur Überwachung Ihres Shelly Pro 3EM-Geräts zu importieren, gehen Sie folgendermaßen vor:
Stellen Sie sicher, dass Ihre Grafana-Instanz betriebsbereit ist. Die Prometheus-Datenquelle sollte in Grafana mit Metriken aus Ihrem Shelly Pro 3EM-Exporter konfiguriert werden.
Importieren Sie das Dashboard: Klicken Sie im linken Menü auf Erstellen > Importieren. Sie werden aufgefordert, entweder das Dashboard-JSON einzufügen, eine JSON-Datei hochzuladen oder eine Grafana-Dashboard-ID (21725) einzugeben. Wählen Sie die Option zum Hochladen der Datei „shelly_pro_3em_dashboard.json“ von Ihrem lokalen System.
Datenquelle konfigurieren: Nach dem Hochladen werden Sie möglicherweise aufgefordert, die Prometheus-Datenquelle auszuwählen. Wählen Sie die richtige Datenquelle aus, die für Ihre Shelly Pro 3EM-Metriken konfiguriert ist.
Speichern und Anzeigen des Dashboards: Klicken Sie nach dem Import auf Speichern, um das Dashboard zu speichern. Sie können jetzt Echtzeitmetriken und historische Daten von Ihrem Shelly Pro 3EM-Gerät im Grafana-Dashboard anzeigen.
Anpassen des Dashboards Das Dashboard ist vollständig anpassbar. Sie können Panels entsprechend Ihren Anforderungen hinzufügen, entfernen oder ändern. Für zusätzliche Konfigurationen oder um Verbesserungen beizutragen, können Sie gerne eine Pull-Anfrage einreichen oder ein Problem eröffnen.
Klicken Sie auf „Speichern“ und geben Sie Ihrem Dashboard einen Namen. Sie können jetzt Ihre Shelly-Gerätemetriken in Grafana überwachen.
Wenn Sie diese Schritte befolgen, können Sie die Metriken Ihres Shelly-Geräts mithilfe von Prometheus und Grafana überwachen.