Saturday, September 13, 2014

RPi-Monitor: Version 2.8 is available

Note: A new version of RPi-Monitor is available: Version 2.9.
All the details about the latest version of Rpi-Monitor are in RPi-Monitor overview


The version 2.8 of RPi-Monitor has been released.

If you don't know yet what RPI-Monitor do, have a look to RPi-Monitor Overview.

Picture from Flickr cc-by by Duncan Hull

What's new in this version?
This version is coming with internal changes, improvement and bug fixes.

Here is the changelog of version 2.8:
  • Add debian repository using github as repo
  • Manage configuration indexes unicity per file
  • Add 'include' parameter to load additionnal configuration file 
  • Split configuration files and use 'include' in default configuration file
  • Add parameters to customise menu logo, title and page title
  • Add 'Badge' function for status page (similar to Label)
  • Simplify and fix startup scripts
  • Change ownership of cron script to avoid issue with logs
  • Check if HTML5 localStorage is activated and warn user is not
  • Improve upgradable packages detection




Installation of the repository and upgrade to 2.8

One of the major improvement of this version is the activation of a debian repository directly into github. This repository will make installation and update of RPi-Monitor accessible with the commands apt-get or aptitude.

To use this repository follow the instruction bellow:

Activate https transport for apt and add certificate authority:
 

    sudo apt-get install apt-transport-https ca-certificates

Execute the following command to add RPi-Monitor into your list of repository:
 

    sudo wget http://goo.gl/rsel0F -O /etc/apt/sources.list.d/rpimonitor.list

To install RPi-Monitor, execute the following command: 

    sudo apt-get update
    sudo apt-get install rpimonitor

To upgrade RPi-Monitor, execute the following command:


    sudo apt-get update
    sudo apt-get upgrade

Note: The package is not signed, it will be require to accept installation of unauthenticated package.



After installation you should excute the following command to update information about upgradable packages:

  sudo /usr/share/rpimonitor/scripts/updatePackagesStatus.pl

Manual installation is still working. Refer to RPi-Monitor Installation page for explaination.

Configuration indexes unicity simplification

Doing customization of RPi-Monitor could become quite complex when you have many data to monitor and doing change, reorder on these configuration files could become a nightmare if you manage multiple files. The reason of this complixity was the unicity constraint of indexes over all configuration file.


This version is removing this constraint. This requirement is now only applicable per file.

This is meaning that when you need to add a new measurment point, you just have to create a new file and add the configuration lines as you would do for the first configuration file. You don't have to care about the existing indexes previously used.

Removing this contrainst open the field of configuration possibilities. A new keyword have been added: include which can be used as follow:

    include=full_path/to/configuration_file.conf

When RPi-Monitor will detect the include keyword, it will add the file to the list of configuration files to be loaded. In other words, the configuration files to load will be appended to the list of file to be loaded wherever is located of include keywork into a file.
If you want to keep the control of the order of information display, it will then be recommanded to create one file per information and the create a file containing a list of configuration file to load. data.conf is now looking like that:


    [...]
  include=/etc/rpimonitor/template/version.conf
    include=/etc/rpimonitor/template/uptime.conf
    include=/etc/rpimonitor/template/cpu.conf
  [...] 

Customise menu logo, title and page title

This new function allow to define a custom logo, custome title and add the hostname of the machine int the title of the browser.


Here are the configuration lines used by default:

  web.page.icon='img/avatar.png'
  web.page.menutitle='XB-Monitor  <sub>('+data.hostname+')</sub>'
  web.page.pagetitle='XB-Monitor ('+data.hostname+')'


data.hostname is a value automatically extracted by RPi-Monitor. It is not needed to add a configuration to do such a thing.

The file avatar.png has been added into /usr/share/rpimonitor/web/img/.

Here is the result:



Inside Firefox title bar and tab, the title has been changed and hostmane has been added between parentheses.
Inside RPi-Monitor menu bar, le logo and the title have been changed and hostmane has been added between parentheses.



Badges function to reflect status

This version of RPi-Monitor introduce a new function dedicated to show the status of a service. This function is named "Badge". This function is very similar to the function "Label" introduced in version 2.7. To use this function,you can refer to the article Rpi-Monitor: Use Label to show server status and replace Label by Badge.


About shellinabox

Shellinabox allow you to access to the shell of your Raspberry Pi through a web interface. You can activate this feature into the configuration dialog box.

By default, the link is set to '''/shellinabox'''. When RPi-Monitor will recieve this request, it will automatically do a redirect to http://RPiIpAddress:4200/. You can modify this address to point to your shellinabox address. This address is used inside the iframe of shellinabox page.

Customization

RPi-Monitor is fully configurable so if the displayed information doesn't match you need, customize it.
Everything display in status pages or in statistics pages can be modified, tuned and customized to your needs.

To see how to customize it, use the command
    man rpimonitord
and
    man rpimonitord.conf

Man pages are also available in the wiki.

To define the configuration you can use RPi-Monitor Interactive Configuration Helper whit the command:
    rpimonitord -i

You will find some examples of customization in RPi-Monitor articles.


Usage

Once RPi-Monitor is configured as you wished, browse http://RPiIpAddress:8888/ to access to the web interface.

Note: The graphs rendering may have strange behavior on Google-Chrome on Windows while it works fine on Linux. Internet Explorer is even not able to display statistics, it is then advised to use Firefox on Windows or better... switch to Linux! ;-).

12 comments :

  1. The 2.8 doesn't working. :( The all pages are empty, only navigation bar.
    I inserted all urls of my .conf files to data.conf, but no changes. The default rpi's data doesn't working. :(

    ReplyDelete
    Replies
    1. You should then open an issue on github and explain what you did to reach this point, how you are using RPi-Monitor (standalone or with external server) what are your configuration files and what the javascript console is telling you.
      If I can't reproduce your issue or hae not enought infor, I can't help you.
      FYI, I did tests on 4 different distributions, I did test fresh install and upgrade and everything went well...

      Delete
  2. I have the same problem as "Sancho Virág Attila" :(

    ReplyDelete
    Replies
    1. So my answer is the same... I let you read it in the previous comment reply.

      Delete
  3. Err https://github.com/ XavierBerger/RPi-Monitor-deb/raw/master/repo/ rpimonitor 2.8-1
    The requested URL returned error: 404
    Impossible de récupérer https://github.com/XavierBerger/RPi-Monitor-deb/raw/devel/repo/rpimonitor_2.8-1_all.deb The requested URL returned error: 404

    ??

    ReplyDelete
    Replies
    1. Your issue is strange since in your error, we can see both master and devel.
      A deeper check show that I made a mistake when I generate the repository description file. I did add the package in the devel branch, it should solve the issue.
      Could you let me know it it works?

      Delete
    2. Now all it's OK.

      Install OK
      Labels OK

      all are OK for me.

      Thank's for your work.

      Delete
  4. Bonjour,

    j'ai un problème avec les label et badge.
    Je me suis inspiré de l'exemple du ssh pour un retour de script.
    Lorsque j'affiche data.monscript , il affiche bien OK.
    Mais lorsque je veux mettre ce retour dans un badge il m'affiche l'erreur suivante:

    ERROR: "monscript : "+Badge(data.monscript,"==OK","OK","success")

    J'ai l'impression qu'il ne peut pas lire la donnée data.monscript mais je ne vois pas pourquoi.

    ReplyDelete
    Replies
    1. Je pense que ==OK n'est pas du javascript valide.
      RPi-Monitor va effectuer le test: if ( data.monscript==OK) ... et ici, OK n'est pas une variable définie
      A mon avis, il faut mettre des simple quotes autour de OK: 'OK'

      Delete
    2. Bonsoir,

      Merci pour la rapidité de la réponse.
      Malheureusement cela n'a pas fonctionné.
      J'ai également testé data.monscript==22 pour voir quel côté de l'égalité pose problème et l'erreur est toujours la même.
      Merci pour vos conseils, je vais me pencher sur les tests de chaine en javascript ou modifier mon script pour un retour sur un entier.

      Delete
  5. Hi Xavier,

    this is very nice tool, thanks a lot for your work!

    My question is if there is a way to make the tooltip box (which appears on hovering graph) to show the time of data.
    I was searching in this theme a lot and found that the jquery.flot.tooltip.min.js can do that. Actually the manual of that tool says it is possible, but nothing usable about how to do it (as it is usual with this kind of manuals).
    I am not familiar with js and jquery so I would appreciate any kind of help.

    Thanks in advance,
    Attila

    ReplyDelete