Index
General
Development
Troubleshooting
General
What is the Monitorix tool?
Monitorix is a free, open source, lightweight system monitoring tool designed to monitorize as many services as it can. At this time it monitors from the CPU load and temperatures to the users using the system. Network devices activity, network services demand and even the devices' interrupt activity are also monitored.
Monitorix is extremely easy to install. If you already have a running web server with Perl installed, it shouldn't take you more than 10 minutes to get Monitorix running.
It is written in Perl (using RRDtool's RRDs.pm module) and will require a working web server supporting CGI scripts (such as Apache). The following versions are recommended:
- Perl 5.6 or later.
- RRDtool version 1.0.41 or later (including 1.2.1 and above).
Where can I get Monitorix?
Monitorix can be freely obtained from the project official website at http://www.monitorix.org.
Can I use it for comercial purposes?
Yes. Monitorix is an open source project and it is released under the GNU License. This license allows you to use the source code free of charge in your commercial products. You don't have to tell us about your products. But, we are happy if you inform us of the usage of Monitorix. Please see the License section.
Who is the author of Monitorix?
Jordi Sanfeliu is the primary author of Monitorix.
What are the right steps to upgrade Monitorix?
When a new Monitorix version is released and once you had already downloaded it, you may just follow the same steps you'd do it to upgrade practically any other application:
# service monitorix stop
Stopping Monitorix: [ OK ]
# rpm -Uvh monitorix-n.n.n.noarch.rpm
Preparing... ########################################### [100%]
1:monitorix ########################################### [100%]
# service monitorix start
Starting Monitorix: [ OK ]
Only on those cases when the new version comes with some new changes in the monitorix.conf configuration file, you'll see the following output:
# rpm -Uvh monitorix-n.n.n.noarch.rpm
Preparing... ########################################### [100%]
1:monitorix warning: /etc/monitorix.conf created as /etc/monitorix.conf.rpmnew
########################################### [100%]
In such cases please take some time to compare your current configuration file and adapt the new changes on it.
Can be used in non Linux systems?
Monitorix was initially made to be fully Linux dependant, but since the 0.8 version the code was prepared to be easier portable to different Linux distributions and even to other UNIX systems like FreeBSD.
Where can I find more documentation about the options in the configuration file?
For more information about how to configure the options in monitorix.conf check the Configuration.help file.
Once started there's no Monitorix process, is this correct? so how it can get statistics?
Monitorix is a cron-based tool. It means that once it has been started it creates a /etc/cron.d/monitorix.sh file that will be executed by crond every minute.
When Monitorix is stopped it just removes it. That's how Monitorix collects data.
What about the .rrd files in /var/lib/monitorix, it's expected that they will grow every day?
Don't worry about the RRD files in /var/lib/monitorix they are sized during their creation and the sizes will remain the same during all the time. That's a feature of RRDtool.
I have a lot of servers, how can I use Monitorix to centralize the statistics?
If you plan to use Monitorix on several servers you will want to use the Multihost feature as you can see in this Monitorix screenshot.
Here are the steps to setup the Multihost feature.
You need to install Monitorix in each server you want monitorize and once installed decide from what machine you plan to monitorize all the other machines, and then modify the following options only in its /etc/monitorix.conf file:
our $MULTIHOST="Y";
This will enable the Multihost feature on that machine and it will prepare a suitable web main-page to select your defined servers. Alternatively you can adjust the other Multihost feature related options (that's optional):
our $MULTIHOST_FOOTER="Y";
our $MULTIHOST_IMGPERLINE="2";
The first one will show in the bottom line of each graph the URL of the server. If you think this can be dangerous or not recommendable in your LAN, just switch it to "N".
The second one is the number of graphs that will appear on each line while monitorizing the servers. The default is 2 and is a good choice for resolutions up to 1280x1024 to avoid scrolling. For bigger resolutions you can try other values. The more resolution you have, the more images per line you'll like to choice.
Finally you need to specify the list of servers you plan monitorize, and you can create such list below in the same configuration file. Like this:
# List of Servers
our @SERV_LIST=("Main Server Linux", "http://linux.mydomain.lan",
"MySQL Linux", "http://192.168.1.4",
"Samba Linux", "http://192.168.1.5",
"SMTP Linux", "http://21.16.11.244:8080");
After applying those configurations just restart the Monitorix service and point your browser to your main machine from where you planed to monitorize the rest of servers, that is, the same machine where you had configured the /etc/monitorix.conf file.
In the Monitorix main page you'll see you'll be able to select you defined servers individually or collectively using All hosts option. The rest is sufficiently auto-explanatory. ;-)
Development
Is there a developer's email list for Monitorix?
Not at this time, but you can contact with me here.
Is there an IRC channel for Monitorix?
Yes. There is a channel at Freenode called #monitorix. You can find me there to discuss about help, bugs and enhancements.
Troubleshooting
I just installed Montorix but I don't see any activity.
The Monitorix graphs takes a few minutes to start showing activity. Please be patient.
I just installed Monitorix but the graphs are not visible. What's going on?
If you only see the skeleton page without the graphs that probably means that your web server (Apache) don't have enough permissions to write into the $BASE_WWW/monitorix/imgs directory. Check that.
When I start Monitorix I get the error: print() on closed filehandle OHTML at /usr/sbin/monitorix.pl line NNN. readline() on closed filehandle IHTML at /usr/sbin/monitorix.pl line NNN.
Everytime Monitorix is started it creates the index.html file according the changes you had made on its configuration file. This error occurs during the creation of such index.html file in the path $BASE_WWW/monitorix.
Please check if Apache web server has enough permissions to write on such directory.
|