Difference between revisions of "Monitorix"

From ArchWiki
Jump to: navigation, search
m
(Fixed missing link pointing to Monitorix localhost monitoring page)
 
(29 intermediate revisions by 11 users not shown)
Line 1: Line 1:
[[Category:Web Server]]
+
[[Category:Status monitoring and notification]]
{{Article summary start}}
+
[[ja:Monitorix]]
{{Article summary text|Installation and configuration of Monitorix.}}
+
{{Related articles start}}
{{Article summary heading|Related}}
+
{{Related|Anything-sync-daemon}}
{{Article summary wiki|Anything-sync-daemon}}
+
{{Related|lm_sensors}}
{{Article summary wiki|lm_sensors}}
+
{{Related|hddtemp}}
{{Article summary wiki|hddtemp}}
+
{{Related articles end}}
{{Article summary end}}
+
  
[http://www.monitorix.org/ Monitorix] is an open source, lightweight system monitoring tool designed to monitor as many services and system resources as possible. It has been created to be used under production '''UNIX/Linux servers''', but due to its simplicity and small size many use it on embedded devices as well.
+
[http://www.monitorix.org/ Monitorix] is an open source, lightweight system monitoring tool designed to monitor as many services and system resources as possible. It has been created to be used under production UNIX/Linux servers, but due to its simplicity and small size many use it on embedded devices as well.
  
==Installation of Monitorix==
+
==Installation==
 +
[[Install]] the package {{AUR|monitorix}}.
  
Visit the [[AUR]] and grab the tarball for the {{AUR|monitorix}} package and build/install it.
+
{{Note|Without a compatible font already installed, the Monitorix graphs will not contain any text. If this happens, install the {{Pkg|terminus-font}}.}}
  
{{Note| Depending on which font packages are installed on your system, it ''might'' been necessary to install the '''terminus-font''' package.  For now, proceed without it, once monitorix is configured and running, users will know very quickly if they are missing the correct font as the graphs will not contain any text at which point, go ahead and install the '''terminus-font''' package via pacman.}}
+
==Configuration==
 +
Edit {{ic|/etc/monitorix/monitorix.conf}} to match graphing options and system-specific variables.  For a complete list of options and features, see the [http://www.monitorix.org/documentation.html man page].  
  
==Configuration of Monitorix==
+
Most of the user settings are self explanatory based on the commented text within the configuration file itself.
Before starting the monitorix daemon, '''be sure''' to adjust the {{ic|/etc/monitorix.conf}} to your liking.  For a complete list of options and features, see the [[http://monitorix.org official website]] or the included man page for monitor.conf.
+
  
$ man monitorix.conf
+
Monitorix comes with a light, built-in webserver; via the dependency {{Pkg|perl-http-server-simple}}. It is, however, disabled by default. To use it, change the configuration option as follows: 
 +
 
 +
{{hc|1=/etc/monitorix/monitorix.conf|2=
 +
....
 +
<httpd_builtin>
 +
 
 +
enabled = y
 +
....}}
 +
See the configuration file for the other related options, for example [http://www.monitorix.org/documentation.html#3 accesss restrictions], or [[#Configure an external webserver]].
  
Most if not all of the user settings are self explanatory based on the commented text within the conf file itself.
+
==Start and viewing data ==
 +
[[Start]] {{ic|monitorix.service}} and [[enable]] it to run at boot like any other systemd service.
  
==Start Monitorix==
+
To view system stats, using the perl-http-server, simply point a browser to [http://localhost:8080/monitorix http://localhost:8080/monitorix] to see the data.
Start Monitorix with the included service file like any other systemd servier
+
  
==Viewing Monitorix Data==
+
{{Tip|If it is the first time running Monitorix, it will take several minutes before data are available to be displayed graphically; so be patient.}}
To view system stats, make sure a webserver is running (see the next section) and browse to [[http://localhost/monitorix http://localhost/monitorix]] to see the data.
+
 
+
{{Note|It will take several minutes before data are displayed graphically so be patient.}}
+
 
+
==Configure a Webserver==
+
===Built In Webserver===
+
With the release of the 3.x tree, Monitorix now comes with a light, built in webserver thanks to the dependency on {{Pkg|perl-http-server-simple}}.  This is a configuration option in {{ic|/etc/monitorix.conf}} which users may elect to either use or not.
+
  
 +
==Configure an external webserver==
 
===Lighttpd===
 
===Lighttpd===
{{Pkg|Lighttpd}} is another option.
+
{{Pkg|lighttpd}} is another option.
  
By default, cgi support is not enabled in lighttpd.  To enable it and to assign perl to process .cgi files, add the following two lines to {{ic|/etc/lighttpd/lighttpd.conf}}:
+
By default, cgi support is not enabled in lighttpd.  To enable it and to assign perl to process ''.cgi'' files, add the following two lines to {{ic|/etc/lighttpd/lighttpd.conf}}:
  
 
  server.modules = ( "mod_cgi" )
 
  server.modules = ( "mod_cgi" )
Line 44: Line 46:
  
 
===Apache===
 
===Apache===
{{Pkg|Apache}} is yet another option.
+
{{Pkg|apache}} is yet another option.
 +
 
 +
===Nginx===
 +
{{Pkg|nginx}} can be used as a reverse proxy/webserver by adding the following server block the nginx config:
 +
{{bc|
 +
server {
 +
    listen      80;
 +
    server_name  your.domain.com;
 +
 
 +
    location / {
 +
      <nowiki>proxy_pass http://127.0.0.1:8080/;</nowiki>
 +
      proxy_buffering off;
 +
    }
 +
 
 +
    location ~ ^/monitorix/(.+\.png)$ {
 +
        alias /srv/http/monitorix/$1;
 +
    }
 +
}
 +
}}
 +
 
 +
Also add {{ic|<nowiki>url_prefix_proxy = http://your.domain.com</nowiki>}} to {{ic|/etc/monitorix/monitorix.conf}}.
  
==Using tmpfs to Store RRD Databases==
+
==Using tmpfs to Store RRD databases==
 
{{AUR|Anything-sync-daemon}} is a package which provides a pseudo-daemon that makes use of tmpfs to store RRD Databases for Monitorix.  Doing so will greatly reduce hdd reads/writes.
 
{{AUR|Anything-sync-daemon}} is a package which provides a pseudo-daemon that makes use of tmpfs to store RRD Databases for Monitorix.  Doing so will greatly reduce hdd reads/writes.

Latest revision as of 19:16, 14 January 2016

Monitorix is an open source, lightweight system monitoring tool designed to monitor as many services and system resources as possible. It has been created to be used under production UNIX/Linux servers, but due to its simplicity and small size many use it on embedded devices as well.

Installation

Install the package monitorixAUR.

Note: Without a compatible font already installed, the Monitorix graphs will not contain any text. If this happens, install the terminus-font.

Configuration

Edit /etc/monitorix/monitorix.conf to match graphing options and system-specific variables. For a complete list of options and features, see the man page.

Most of the user settings are self explanatory based on the commented text within the configuration file itself.

Monitorix comes with a light, built-in webserver; via the dependency perl-http-server-simple. It is, however, disabled by default. To use it, change the configuration option as follows:

/etc/monitorix/monitorix.conf
....
<httpd_builtin>
  
enabled = y
....

See the configuration file for the other related options, for example accesss restrictions, or #Configure an external webserver.

Start and viewing data

Start monitorix.service and enable it to run at boot like any other systemd service.

To view system stats, using the perl-http-server, simply point a browser to http://localhost:8080/monitorix to see the data.

Tip: If it is the first time running Monitorix, it will take several minutes before data are available to be displayed graphically; so be patient.

Configure an external webserver

Lighttpd

lighttpd is another option.

By default, cgi support is not enabled in lighttpd. To enable it and to assign perl to process .cgi files, add the following two lines to /etc/lighttpd/lighttpd.conf:

server.modules		= ( "mod_cgi" )
cgi.assign		= ( ".cgi" => "/usr/bin/perl" )

Apache

apache is yet another option.

Nginx

nginx can be used as a reverse proxy/webserver by adding the following server block the nginx config:

server {
    listen       80;
    server_name  your.domain.com;

    location / {
       proxy_pass http://127.0.0.1:8080/;
       proxy_buffering off;
    }

    location ~ ^/monitorix/(.+\.png)$ {
        alias /srv/http/monitorix/$1;
    }
}

Also add url_prefix_proxy = http://your.domain.com to /etc/monitorix/monitorix.conf.

Using tmpfs to Store RRD databases

Anything-sync-daemonAUR is a package which provides a pseudo-daemon that makes use of tmpfs to store RRD Databases for Monitorix. Doing so will greatly reduce hdd reads/writes.