Difference between revisions of "RPi-Monitor"

From eLinux.org
Jump to: navigation, search
m (update link to screenshot)
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Overview ==
 
== Overview ==
'''RPi-Monitor''' is a self monitoring application designed to run on Raspberry Pi. It provides an interactive web interface to display status and graphs. [http://rpi-experiences.blogspot.fr/2013/05/rpi-monitor-raspberry-pi-self-monitoting.html Screenshots] are available here.
+
'''RPi-Monitor''' is a self monitoring application designed to run on Raspberry Pi. It provides an interactive web interface to display status and graphs. [http://rpi-experiences.blogspot.fr/p/rpi-monitor.html Screenshots] are available here.
  
 
== Description ==
 
== Description ==
Line 8: Line 8:
 
The extraction of the information is done by a process designed to run as a daemon (which can be executed as root). The extracted key performance indicators (KPI) from the computer are stored them into a Round Robin Database (RRD) to keep an history of the health of the computer. rpimonitord is the perl script also starts the embedded web server giving access to the pages. The web server is running into a separate process owned by a non root user (the user 'pi' by default).
 
The extraction of the information is done by a process designed to run as a daemon (which can be executed as root). The extracted key performance indicators (KPI) from the computer are stored them into a Round Robin Database (RRD) to keep an history of the health of the computer. rpimonitord is the perl script also starts the embedded web server giving access to the pages. The web server is running into a separate process owned by a non root user (the user 'pi' by default).
  
The presentation of the information is performed by HTML5 pages. These pages dynamically download the information extracted from the previous script and perform the rendering the in a nice looking format (using bootstrap, jquery, jsqrencode and javascriptrrd). This architecture has the advantage in an embedded architecture to offload the server task and delegate processing and rendering to the client.
+
The presentation of the information is performed by HTML5 pages. These pages dynamically download the information extracted from the previous script and perform the rendering the in a nice looking format (using bootstrap, jquery, jsqrencode, javascriptrrd and flot). This architecture has the advantage in an embedded architecture to offload the server task and delegate processing and rendering to the client.
  
Finnally note that the embedded server doesn't provide access control or authentication. It is still possible to not start the embeded web server and use an external web server to deliver the pages.
+
Since version 2.0, '''RPi-Monitor''' extracted data and informtion display are fully configurable. Some articles ([http://rpi-experiences.blogspot.fr/p/rpi-monitor-articles.html available here]) are describing how to extract data and how to customize their display into web interface.
 +
 
 +
Finnally note that the embedded server doesn't provide access control or authentication. It is still possible to not start the embeded web server and use an external web server to deliver the pages. An [http://rpi-experiences.blogspot.fr/2013/05/rpi-monitor-security-and-authentication.html article] available in the blog of the author is explaining how to setup ngnix to manage access control or authentication.  
  
 
<br />
 
<br />
Line 20: Line 22:
 
Before installing '''RPi-Monitor''' you should install the dependencies. To do so, execute the following command:
 
Before installing '''RPi-Monitor''' you should install the dependencies. To do so, execute the following command:
  
* sudo apt-get install librrds-perl libhttp-daemon-perl libhttp-daemon-ssl-perl libcrypt-openssl-rsa-perl
+
* sudo apt-get install librrds-perl libhttp-daemon-perl libjson-perl
 
<br />
 
<br />
  

Revision as of 16:56, 18 August 2013

Overview

RPi-Monitor is a self monitoring application designed to run on Raspberry Pi. It provides an interactive web interface to display status and graphs. Screenshots are available here.

Description

For performance and security reason, RPi-Monitor separates the extraction of the information from the presentation of the information.

The extraction of the information is done by a process designed to run as a daemon (which can be executed as root). The extracted key performance indicators (KPI) from the computer are stored them into a Round Robin Database (RRD) to keep an history of the health of the computer. rpimonitord is the perl script also starts the embedded web server giving access to the pages. The web server is running into a separate process owned by a non root user (the user 'pi' by default).

The presentation of the information is performed by HTML5 pages. These pages dynamically download the information extracted from the previous script and perform the rendering the in a nice looking format (using bootstrap, jquery, jsqrencode, javascriptrrd and flot). This architecture has the advantage in an embedded architecture to offload the server task and delegate processing and rendering to the client.

Since version 2.0, RPi-Monitor extracted data and informtion display are fully configurable. Some articles (available here) are describing how to extract data and how to customize their display into web interface.

Finnally note that the embedded server doesn't provide access control or authentication. It is still possible to not start the embeded web server and use an external web server to deliver the pages. An article available in the blog of the author is explaining how to setup ngnix to manage access control or authentication.


You will find the latest information about RPi-Monitor on http://rpi-experiences.blogspot.fr/

Installation

Before installing RPi-Monitor you should install the dependencies. To do so, execute the following command:

  • sudo apt-get install librrds-perl libhttp-daemon-perl libjson-perl


Download RPI-Monitor debian package from https://github.com/XavierBerger/RPi-Monitor-deb/tree/master/packages and install it with the following command:

  • sudo dpkg -i rpimonitor_X.X-1_all.deb


That's it, your Raspberry Pi is monitored. You can now browse http://your_Raspberry_Pi_address:8888 to access to the interactive web interface.

To remove the package you can use one ot the following command. If you want to remove the program but keep the configuration files and statistics:

  • sudo dpkg --remove rpimonitor


If you want to purge everything related to the program:

  • sudo dpkg --purge rpimonitor