In the past few days I've worked on a new Python script, after a Shelly Pro 4 PM device was installed in my house - mainly to measure power consumption. To my big surprise, there was no working monitoring plugin available (only one for older Shelly Gen1 devices). Time to do some coding.
Now, a few days later, the monitoring plugin check_shelly is finally ready! check_shelly retrieves information from the Shelly device's RPC API, presents information in the plugin's output and adds performance statistics in the perfdata output.
This allows to monitor the health of a Shelly IOT device and at the same time create real time graphics using the performance data.
As the monitoring plugin was developed with a single Shelly device (the Pro 4PM), there's no guarantee that other Shelly devices will work. However, according to Shelly's API documentation, all Shelly Gen2 devices should be compatible.
The documentation of check_shelly shows all relevant parameters and usage examples. Work on the plugin is still in progress and it is currently missing threshold possibilities. For now enjoy it as it is - or contribute. ;-)
The following screenshots show the integration into Icinga 2 and graphs created from the performance data statistics using InfluxDB and Grafana:
No comments yet.
AWS Android Ansible Apache Apple Atlassian BSD Backup Bash Bluecoat CMS Chef Cloud Coding Consul Containers CouchDB DB DNS Database Databases Docker ELK Elasticsearch Filebeat FreeBSD Galera Git GlusterFS Grafana Graphics HAProxy HTML Hacks Hardware Icinga Influx Internet Java KVM Kibana Kodi Kubernetes LVM LXC Linux Logstash Mac Macintosh Mail MariaDB Minio MongoDB Monitoring Multimedia MySQL NFS Nagios Network Nginx OSSEC OTRS Office PGSQL PHP Perl Personal PostgreSQL Postgres PowerDNS Proxmox Proxy Python Rancher Rant Redis Roundcube SSL Samba Seafile Security Shell SmartOS Solaris Surveillance Systemd TLS Tomcat Ubuntu Unix VMWare VMware Varnish Virtualization Windows Wireless Wordpress Wyse ZFS Zoneminder