Monitor your RaspberryPi health with eGeoffrey

  • If running eGeoffrey on a RaspberryPi you can use the same for monitoring the health of your system and, why not, being alerted if something is not working correctly.

    Once again we don't want to start from scratch so let's see if there is something in the marketplace which can help us:

    $ sudo egeoffrey-cli search cpu
    egeoffrey-service-system: Collect telemetry information from the system

    Let's then install the package with :

    sudo egeoffrey-cli install egeoffrey-service-system

    And start it with:

    sudo egeoffrey-cli start

    If we connect to the web interface, we can see under the "Examples" section a menu item called "System Service". This is because the package brings some default content for displaying your system CPU and memory usage.
    As with most of the timeseries dataset, it is handy to have a summary widget (displaying latest measure, minimum and maximum from today and yesterday), hourly aggregates (with average, minimum and maximum for each hour) and daily aggregates (with average, minimum and maximum for each day):

    Screenshot 2020-06-29 at 09.32.39.png

    If we look from where this information is coming from by visiting "House" / "Sensors" we will notice there are three sensors added by the package for storing CPU information (system and user) and memory:

    Screenshot 2020-06-29 at 09.36.48.png

    The module service/system is capable of retrieving also other metrics from the system. If you create a new sensor and associate it to this module, you can see in the configuration screen the available options such as number of network services running, number of established network connections, temperature of the system, uptime, etc.):

    Screenshot 2020-06-29 at 09.38.30.png

    But it is not over, by default the package also deploys a rule for notifying you whenever the cpu usage is too high. If you go to "House" / "Rules" you can see a warning is generated whenever the maximum CPU load of the current hour (e.g. the notation /hour/max generated by the automatic aggregation configured ) of the sensor examples/system/cpu_user sensor is above a given threshold (10 in the example):

    Screenshot 2020-06-29 at 09.41.25.png

    What if you need to collect other metrics which are not provided by this package? Simply install the egeoffrey-service-command package which will allow you to run any custom operating system command whose output will be stored in your sensors.


Log in to reply