Monitorix Changelog

What's new in Monitorix 3.10.1

May 15, 2018
  • Fixed a bad memory scaling in *BSD systems.
  • Fixed in 'process.pm' to fully honour the option 'netstats_in_bps'.
  • Fixed the missing declaration of 'allvalues' in 'gensens.pm' which prevented graphs generation if 'show_gaps' option was enabled.
  • Fixed to correctly represent the values in text mode in 'ipmi.pm'.
  • Fixed a missalignment of the MB & CPU temperatures values in 'lmsens.pm'.
  • Fixed to limit the length of the device names in 'fs.pm'.
  • Fixed a missing gap colouring in some zoomed graphs of 'system.pm'.
  • Fixed to save missing values as 'unknown' in 'apcupsd.pm'. [#201]
  • Fixed a XSS vulnerability in CGI variables. [#203] (thanks to Sebastian Gilon from http://testarmy.com/, who pointed this out)
  • Fixed to check if setgid() and setuid() functions were successful before starting the HTTP built-in. (thanks to Sander Bos for pointing this out)
  • Fixed to disable 'echo' when typing the password in './htpasswd.pl'. (thanks to Sander Bos for pointing this out)
  • Fixed to set permissions 0600 to log files. (thanks to Sander Bos for pointing this out)

New in Monitorix 3.6.0 (Nov 22, 2014)

  • Added a complete statistical Libvirt (libvirt) graph.
  • Added a complete processes statistics (process) graph.
  • Added Upstart job. [#46]
  • Added more verbosity during the startup.
  • Added support to include username and password in the 'url_prefix' option of the 'emailreports' module. (suggested by V1ru535, admin AT mynet.fr)
  • Optimized the 'serv' graph to not overload servers with big log files.
  • Added support to include Piwik tracking code. (suggested by V1ru535, admin AT mynet.fr)
  • Added support for relay-only MTA (for example Nullmailer) in 'emailreports'. [#49]
  • Added the new option 'ip_default_table' to define in which table Monitorix will put all iptables rules for network traffic accounting monitoring. (suggested by Russell Morris, rmorris AT rkmorris.us)
  • Added SPF statistics in the 'mail' graph.
  • Added support for newest NVidia driver 340.24. [#54]
  • Added the new 'url_prefix_proxy' option to bypass the URL building in the CGI. Usefull when Monitorix is used behind a reverse proxy. [#58]
  • Added a 'Makefile' to provide more flexibility for users and packagers. [#62]
  • Improved in all graphs the 'limit' and 'rigid' functionality and reduced a lot of redundant code.
  • Changed all DST from COUNTER to GAUGE in 'net' module to avoid unexpected huge peaks.
  • Added a check to detect inconsistencies between enabled graphs and defined graphs during initialization.
  • Fixed regexp that prevented collecting LOADPCT and ITEMP values in 'apcupsd' module. (thanks to Patrick Fallberg, patrick AT fallberg.net)
  • Fixed to show the filesystem name when Monitorix is unable to detect its device name.
  • Fixed messages of argument isn't numeric in addition at fs.pm in lines 650 and 684. This happened if one of the filesystems defined is not a real mount point with an associated device name. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org for pointing this out)
  • Fixed the values in the text interface of the 'fs' graph.
  • Fixed init script to work with Chef properly. [#48]
  • Fixed a line that forced updates on every minute in the 'serv' graph.
  • Fixed 'icecast' graph to support newer statistics page format.
  • Fixed the use of uninitialized variables in 'phpapc' module.
  • Fixed to correctly sanitize the comma-separated values in the 'list' option of the 'mysql' module.
  • Fixed the built-in HTTP server to return a correct Content-Type header for '.css' files. (thanks to Liang Zhang, liangz AT fnal.gov for pointing this out)
  • Small fixes and typos.

New in Monitorix 3.5.0 (Mar 25, 2014)

  • Added a complete statistical APC UPS (apcupsd) graph. (thanks to Ilya Karpov, gibzer AT gmail.com)
  • Added a complete statistical Netstat (netstat) graph. (suggested by Maarten van Lieshout, mlieshout AT cocomowebbeheer.nl)
  • Added support for amavisd-new in the 'serv' and 'mail' graphs for spam and virus email accounting. (thanks to Dirk Tanneberger, dirk AT tanneberger.biz)
  • Added support for PHP APC 4.0. [#36]
  • Added an error message into the email if 'emailreports' can't connect with Monitorix.
  • Added the new 'addendum_script' option in the 'emailreports' in order to include user's own data in the emails. (thanks to Dirk Tanneberger, dirk AT tanneberger.biz)
  • Added support to use '/dev/disk/by-path/' paths as device names in the 'disk' graph. [#37]
  • Added two new options in 'emailreports' to configure the time when email reports will be sent. [#39]
  • Added a new option to accept self-signed certificates when collecting values remotely using HTTPS protocol. [#40]
  • Added support in the 'port' graph to define multiple network protocols on the same port number. (thanks by Jean-Louis Halleux, monitorix AT ritm.be)
  • Added the inode usage in the 'fs' graph and refactored the layout. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added a new option called 'include_dir' to be able to load additional configuration files from a specific directory ('/etc/monitorix/conf.d' by default). As a result of this, the main configuration file is now located into the new directory '/etc/monitorix/'.
  • Added the option 'url' in the 'nginx' graph to define a full URL to be used to collect stats. (suggested by Melkor, morgoth AT free.fr)
  • Changed the default path '/usr/share/monitorix' of the 'base_dir' option to '/var/lib/monitorix/www'. This should make Monitorix more FHS friendly.
  • Incremented the font size of the titles in the 'bind' graph.
  • Removed the hard coded suffix '/server-status?auto' from the 'apache' and 'lighttpd' modules, now it most be part of the URL(s) defined in the 'list' option. (suggested by Melkor, morgoth AT free.fr)
  • Removed the EOL mark in the regexp of the 'milter-greylist' stats in order to support newer version 4.4.3. (thanks to Sean Wilson, monitorix AT bsdpanic.com)
  • Fixed to expand gaps also for negative values. [#34]
  • Fixed in email reports to show all graphs in the list. [#33]
  • Fixed the date format to match with UW-IMAP logs and also add POP3 login accounting. (thanks to Wijatmoko U. Prayitno, koko AT crypto.my.id for pointing this out)
  • Fixed to show the text interface in the 'memcached' graph.
  • Fixed to initialize a pair of variables in 'mail.pm' in order to avoid 'Use of uninitialized value...' messages in log file. (thanks to Dirk Tanneberger, dirk AT tanneberger.biz)
  • Fixed to avoid unexpected grouping of network interfaces with aliases in the 'net' graph. (thanks to Ivo Brhel, ivb AT volny.cz)
  • Fixed to enclose URLs with single quotes in the Multihost HTML.
  • Fixed messages of 'use of uninitialized values' and 'non-numeric arguments in addition' in 'proc' and 'fs' graphs respectively on FreeBSD systems. (thanks to Janusz Pruszewicz, janusz AT pruszewicz.com)
  • Fixed to match exactly the connection types 'in', 'out' or 'in/out' in 'port' graph.
  • Fixed to compare kernel versions as strings instead as numbers and improved the way how is extracted the kernel version. (thanks to Jean-Louis Halleux, monitorix AT ritm.be)
  • Fixed some HTML tags in 'monitorix.cgi'.
  • Fixed a missing HTML tag in 'port' graph. (thanks to Jean-Louis Halleux, monitorix AT ritm.be)
  • Fixed messages of 'use of uninitialized value' in 'port' graph. (thanks to Claude Nadon, claude AT ws01.info for pointing this out)
  • Fixed the title of certain graphs in Multihost mode.
  • Small fixes and typos.

New in Monitorix 3.4.0 (Dec 3, 2013)

  • Added a complete statistical Memcached graph. [#27]
  • Added support for different BIND stats versions (2 and 3 right now). (thanks to Ivo Brhel, ivb AT volny.cz)
  • Added two new alerts in the 'disk' graph in order to know if a disk drive has exceeded or reached a threshold for reallocated and pending sectors. (suggested by Matthew Connelly, maff AT maff.im)
  • Added a new option called 'max_historic_years' (with a default value of 1), which enables the ability to have up to 5 years of data. Beware with this option because it generates a new '.rrd' file every time the value is extended, losing the current historical data. (suggested by Mohan Reddy, Mohan.Reddy AT analog.com)
  • Improved the regexp when collecting data from devices's interrupts which also fixes some annoying messages on using non-numeric arguments.
  • Added support for the Pure-FTPd logs in the 'serv' and 'ftp' graphs.
  • Added the new configuration option 'https_url'. [#31]
  • Fixed error messages about use of uninitialized values in 'system' graph on BSD systems.
  • Fixed error messages about not numeric argument in addition in 'fs' graph on BSD systems.
  • Fixed in 'emailreports' to use the command line 'hostname' if the variable $ENV{HOSTNAME} is not defined (Debian/Ubuntu and perhaps other systems). (thanks to Skibbi, skibbi AT gmail.com for pointing this out)
  • Fixed the error message 'String ends after the = sign on CDEF:allvalues=' in the 'int' graph (the Interrupts graph is pending to have a complete rewrite).
  • Fixed the 'int' graph in order to be more compatible with Raspberry Pi.
  • Fixed in 'bind.pm' to store a 0 value if threads are disabled. [#29]
  • Fixed to correctly sent images in graphs 'proc', 'port' and 'fail2ban' when using emailreports. (thanks to Bénoît Segond von Banchet, bjm.segondvonbanchet AT telfort.nl for pointing this out)
  • Fixed to show the real hostname in the emailreports.
  • Fixed the 'int' graph in order to be compatible with Excito B3 product. (thanks to Patrick Fallberg, patrick AT fallberg.net for pointing this out)
  • Fixed to correctly sanitize the input string in the built-in HTTP server which led into a number of security vulnerabilities. [#30]
  • Fixed the lack of minimum definition in some data sources of 'bind' graph. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org for pointing this out)
  • Fixed a fail to adequately sanitize request strings of malicious JavaScript. [#30] (thanks to Jacob Amey, jamey AT securityinspection.com for pointing this out)
  • Fixed a typo in monitorix.service. [#32]
  • Fixed the requests value in the 'nginx' graph. Now it honours the label to show the value per second, instead of per minute. (thanks to Martin Culak, culak AT firma.azet.sk for pointing this out)
  • Small fixes and typos.

New in Monitorix 3.3.1 (Nov 22, 2013)

  • Fixed to correctly sanitize the input string in the built-in HTTP server which led a number of security vulnerabilities. [#30]

New in Monitorix 3.3.0 (Aug 13, 2013)

  • Added a complete statistical Wowza Media Server graph. (suggested by Daniele Ilardo, kkstyle21 AT gmail.com)
  • Added a complete statistical PHP-APC graph. (suggested by Petr Švec, petr.svec AT pak.izscr.cz)
  • Reimplemented the alarm signal handler placing it inside the main loop in order to be able to control the timeouts in the 'disk' graph (and others).
  • This should avoid a complete freeze if the network goes down when monitoring NFS filesystems. [#10]
  • Reimplemented the 'theme' option.
  • Implemented a complete email reporting mechanism. [#11]
  • Added the label 'Total' in the main graph of 'apache'.
  • Added a new option called 'show_gaps' to be able to see the gaps produced by missing data in graphs.(suggested by Skibbi, skibbi AT gmail.com)
  • Add a check during the initialization of the 'nvidia' graph, to test for the existence of the 'nvidia-smi' command.
  • Add a check during the initialization of the 'nfss' graph, to test if there is the '/proc/net/rpc/nfsd' file.
  • Add a check during the initialization of the 'nfsc' graph, to test if there is the '/proc/net/rpc/nfs' file.
  • Added the option 'url_prefix' in the 'traffacct' graph.
  • Added the option 'global_zoom' to all graphs.
  • Fixed a bug that prevented from seeing stats in the 'nfss' graph.
  • Fixed in 'nginx' graph the name of the iptables rules which prevented working the network traffic graph. [#22]
  • Fixed a bug that prevented a correctly data collection in the 'fail2ban' graph. [#23]
  • Fixed the description of 'netstats_in_bps' in monitorix.conf(5) man page.
  • Fixed a message of 'Argument "" isn't numeric in int ...' in 'nvidia' graph when using newer official drivers.
  • Fixed a bug in Groups (Multihost view) that prevented from seeing the remote server's graphs of the selected group. (thanks to Mauro Medda, m.medda AT tiscali.it)
  • Little code cleaning.

New in Monitorix 3.2.1 (Jun 4, 2013)

  • Changed the source from where is collected the memory usage in the 'squid' graph. Now the shown values are more real and accurate.
  • Added user/password authentication options in the built-in HTTP server. [#14]
  • Added the script 'htpasswd.pl' to be able to encrypt passwords. [#14]
  • Added the options 'hosts_allow' and 'hosts_deny' to restrict access by IP address to the built-in HTTP server. [#14]
  • Added the ability to specify an optional host address for the built-in HTTP server to bind to. [#19]
  • Added a new option in the 'disk' graph called 'accept_invalid_disk' that permits continue working even if some of the device names defined are invalid or non-existent. This is specially useful to monitor external disks that aren't permanently connected to the system.
  • Updated the 'monitorix.service' file. [#20] (thanks to Christopher Meng, rpm AT cicku.me)
  • Fixed a bug that prevented seeing the Core temperatures in the 'lmsens' graph. (thanks to Bryan Guidroz, bryanguidroz AT hotmail.com)
  • Fixed a typo and escaped a pair of hyphens in the monitorix.conf(5) man page.

New in Monitorix 3.2.0 (May 13, 2013)

  • Added a complete Raspberry Pi sensors graph. [#10, #13] (thanks to graysky, graysky AT archlinux.us)
  • Improved a bit the MySQL documentation in the monitorix.conf(5) man page. (thanks to Luca Ferrario, luca AT ferrario.net)
  • Added a new option called 'temperature_scale' to be able to toggle between values in Celsius or in Fahrenheit. (suggested by Bryan Guidroz, bryanguidroz AT hotmail.com)
  • Added support for Simplified Chinese language in the monthly reports. (thanks to Christopher Meng, rpm AT cicku.me)
  • Added support for the ATI graph cards through the 'gpu' keys in the 'lmsens' graph. As in the NVIDIA case, it requires the ATI official drivers. [#8]
  • Changed the default charset in the built-in HTTP server to UTF-8. (thanks to Akong, ak6783 AT gmail.com for pointing this out)
  • Added verbosity to the 'undefined configuration' of MySQL graph.
  • Fixed a typo in an iptables rule in the Nginx graph. (thanks to Faustin Lammler, faustin AT dejadejoder.com)
  • Fixed the Squid graph in order to honour the 'netstat_in_bps' option. (suggested to Ignacio Freyre, nachofw AT adinet.com.uy)
  • Fixed in 'port' graph to show the minimum number of graphs between the value of 'max' and the number of ports really defined. This fixes the error messages of uninitialized values in lines 410 and 411.
  • Fixed to honour the support of RAID controller parameters in the disk device names defined in the disk graph. [#12]
  • Small fixes in the alerting system of 'fs', 'system' and 'mail' graphs.
  • Fixed a bug in 'traffacct' graph that prevented accounting traffic if the option was empty. Also, Socket module has been added.
  • Fixed to get the correct graph of the right group number in the 'fs' graph when using 'silent=imagetag' option. [#16]

New in Monitorix 3.1.0 (Mar 16, 2013)

  • Added a complete statistical FTP graph.
  • The 'serv' graph now uses 'secure_log' log file to get FTP login statistics. Alternatively the 'ftp_log_date_format' option has been renamed to 'secure_log_date_format'.
  • Fixed in 'nginx' and 'port' graphs to properly use '-m conntrack --ctstate' instead of '-m state --state' in all iptables rules and avoid an annoying iptables message about using an obsolete option.
  • Fixed to delimit the values in 'disk->list->[n]' by ", " (comma + space).
  • Fixed to detect if a device name defined in 'disk->list->[n]' does really exist in the system.
  • Fixed a missing initialization of some data arrays in 'lmsens' which generated the message "ERROR: while updating /var/lib/monitorix/lmsens.rrd: expected 52 data source readings (got 10) from N" if the 'sensors' command is missing.
  • Fixed in 'lmsens' to better handle the returned value (an error) when the 'nvidia-smi' command is not installed in the system.
  • Fixed a bad temperature values extraction from the 'sensors' command in the 'lmsens' graph. (thanks to Cédric Girard for pointing this out)
  • Fixed in 'nginx' to avoid the use of uninitialized values and to show an error message when Monitorix is unable to connect to the Nginx server.
  • Fixed in 'apache' to show an error message when Monitorix is unable to connect to the Apache server.
  • Fixed in 'lighttpd' to show an error message when Monitorix is unable to connect to the Lighttpd server.
  • Fixed in 'icecast' to show an error message when Monitorix is unable to connect to the Icecast server.
  • Fixed in 'traffact' to show an error message when Monitorix is unable to connect to the HTTP server.
  • Fixed to make sure to kill the built-in HTTP server if Monitorix exits unexpectedly.
  • Fixed messages of type 'Use of uninitialized value ...' in 'system', 'kern' and 'fs' graphs on FreeBSD systems.
  • Fixed to extract correctly the minor number of kernel version on FreeBSD systems.
  • Fixed a bug in 'user' graph that prevented counting correctly the number of users currently logged in FreeBSD systems.
  • Fixed a bug in how data was collected using 'ipfw' that affected the 'port' graph which was showing more activity than real.

New in Monitorix 3.0.0 (Feb 19, 2013)

  • Added an HTTP built-in server.
  • Changed the path 'cgi-bin' to 'cgi'.
  • Fixed color sequence in the 'fs' graph.
  • Fixed a division by zero in 'mysql' graph.
  • Fixed excessive bottom padding in 'fs' graph.
  • Fixed to use always the same colors for '/', 'swap' and '/boot' values in 'fs' graph.
  • Fixed a bad naming in the title of 'traffacct' graph.
  • Fixed all URLs of the .png files.

New in Monitorix 3.0.0 Beta 2 (Feb 2, 2013)

  • Lot of improvements in the MySQL graph, which includes adding a new value called 'Query_Cache_Hit_Rate", the number of select querys also includes the value of Qcache_hits, new query type called Com_stmt_execute and the new value Temp_tables_to_disk. (thanks to Luca Ferrario, luca AT ferrario.net)
  • Added a systemd service file template. (thanks to graysky, graysky AT archlinux.us)
  • Alerts have been reimplemented and they are now configured independently for each graph.
  • Added two new alerts in the 'mail' graph: one to control the number of delivered messages per minute and the other for the number of messages in the mail queue.
  • Added the ability to also support outgoing connections in the 'port' graph.
  • Fixed a pair of typos in the section explaining 'hptemp' in the man page monitorix.conf.5.
  • Fixed from using unitialized variables in 'fs'.
  • Fixed a bad assigning in 'mail' that prevented from seeing the greylisting values in the graph.
  • Fixed a bug in CGI the prevented honoring the 'hostname' configuration option. (thanks to graysky, graysky AT archlinux.us)
  • Fixed in 'mysql' to use "show global status' in all operations instead of "show status" since the latter only refers to the current thread. (thanks to Luca Ferrario, luca AT ferrario.net)
  • Fixed to add Qcache_hits value to Com_select in order to get the real value (assuming that query caching is on). (thanks to Luca Ferrario, luca AT ferrario.net)

New in Monitorix 3.0.0 Beta 1 (Jan 14, 2013)

  • Complete rewrite.
  • Added a new option in 'port' to define the number of graphs per row.
  • Added two new options 'ftp_log' and 'ftp_log_date_format' to be able to read FTP connections from its own log file. (suggested by Luca Ferrario, luca AT ferrario.net)
  • Fixed a missing description in the first entry of each network interface in the options list.
  • Fixed a missing argument on each *_init() function preventing show an "Ok" message when debugging is enabled.
  • Fixed some bugs in Groups.
  • Fixed a typo in the percentage variable in FS alert.
  • Fixed variables naming in 'mail' graph when using Postfix MTA that prevented to see the values bounced, discarded and forwarded.
  • Fixed a number of small bugs.
  • Fixed a bad naming of the bitrate variables when creating the Bitrate graph of the Icecast Streaming Media Server.
  • Fixed to include the username and password when connecting to MySQL using a socket. (thanks to Luca Ferrario, luca AT ferrario.net)

New in Monitorix 2.6.0 (Sep 26, 2012)

  • Added a complete statistical BIND graph.
  • Added support for NetBSD systems.
  • Added support for grouping remote servers in the Multihost view. (thanks to Hartmut Wöhrle, hartmut AT hartmut-woehrle.ch)
  • The Disk and Filesystems Usage and I/O Activity graphs have been completely rewriten. (suggested by Konstantinos Skarlatos, k.skarlatos AT gmail.com)
  • Added support to monitor unlimited number of disk drives.
  • Added support to monitor unlimited number of filesystems.
  • Reorganized the legend in the Disk drive temperatures and health graph.
  • Changed the shebang to be more portable among different systems.
  • Completely rewritten the Debian/Ubuntu init script. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Minor changes in the header of the Debian/Ubuntu init script. (thanks to Uwe Heidrich, uweheidrich AT hotmail.com)
  • Expanded to 15 characters the description in network ports.
  • Changed to lines a bit thicker some graphs with few values.
  • Added a new feature to enable/disable the use of javascript:void function when clicking on a zoomable graph. (thanks to Florian E.J. Fruth, fejf AT gmx.de)
  • Fixed a bug that mixed the collected values when monitoring multiple MySQL servers. (thanks to Piotr Smalira, p.smalira AT g16-lublin.eu)
  • Fixed a bad percentage calculation in the dentries and inodes values.
  • Removed useless code when collecting Squid stats.
  • Fixed a typo in a MySQL graph.

New in Monitorix 2.5.2 (May 22, 2012)

  • Modified iptables/ipfw accounting rules handling and fixed some bugs.
  • Added to backup .rrd files every time it changes their internal structure. (suggested by Michael Mansour, mmansour AT ostech.com.au)
  • Fixed a bug that prevented the creation of the 'mysql.rrd' file. The error message was "ERROR: while creating /var/lib/monitorix/mysql.rrd: you must define at least one Data Source".(thanks to Darryl Yeoh Gim Hong, drl AT bsd.my for pointing this out)
  • Fixed to avoid modifying read-only values in chomp() function. (thanks to Julio Cifuentes, jcifuentes AT mail.com for pointing this out)

New in Monitorix 2.5.1 (Apr 24, 2012)

  • Modified the regexp in 'mgr:ipcache' listing to support newer Squid versions.
  • Changed some information and debug messages to be more verbose and clear.
  • Force termination with exit(0) when receiving a SIGINT.
  • Added support to use the socket file for the connection to the MySQL server. (suggested by Darryl Yeoh Gim Hong, drl AT bsd.my)
  • Added the new option IMAP_DATE_LOG_FORMAT to match with the Dovecot date log format.
  • Refreshed the COPYING file to reflect the current contents of the GPLv2 at http://www.gnu.org/licenses/gpl-2.0.txt.
  • Complete English correction in the monitorix.conf(5) man page. (thanks to Paul Rupp, paulrupp AT acorp.net)
  • Fixed a bug that prevented monitoring multiple MySQL servers. (thanks to Piotr Smalira, p.smalira AT g16-lublin.eu)
  • Fixed the vertical label of network traffic in Mail graph to honour the NETSTATS_IN_BPS option. (thanks to Piotr Smalira, p.smalira AT g16-lublin.eu)
  • Fixed a bug that prevented collecting IMAP data from wu-imap server.
  • Fixed padding on big values in the Nginx stats.

New in Monitorix 2.5.0 (Mar 22, 2012)

  • Added a complete statistical Fail2ban graph. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added a complete statistical Lighttpd graph.
  • Added full support for the Postfix MTA in the Mail statistics graph.
  • Extended the number of information in the Mail statistics graph.
  • Added support to monitor unlimited number of local or remote Apache servers.
  • Added support to monitor unlimited number of local or remote MySQL servers.
  • Added support for Dovecot 2.0 log format.
  • Optimized a lot of code including more regular expressions.
  • Replaced hardcoded graph titles with the strings in the configuration file.
  • Modified the RedHat init script to let Monitorix create itself the pidfile. This should improve the support on modern Linux systems using 'systemd'. (thanks to a IRC user called 'dashbad' for pointing this out)
  • Improved the init script to be more LSB-compliant.
  • Changed to the '-A' parameter in 'smartctl' to avoid waking up disks when collecting their temperatures and health values. (thanks to Michael Perry, mike AT serensilver.co.uk)
  • Fixed some titles in the list box of the main page.
  • Fixed color overriding in the IMAP and POP3 services graph.
  • Fixed the title in some graphs.
  • Fixed a typo in the debug array name that prevented individual debug working properly.
  • Fixed a typo in the configuration file. (thanks to a IRC user called 'gangsterlicious' for pointing this out)
  • Fixed a bug in the Squid graph that prevented of being counted the Aborted clients.
  • Fixed numbering in some graphs.

New in Monitorix 2.4.1 (Jan 10, 2012)

  • Added support for Dovecot 1.2 log format.
  • Added Polish language support in the monthly traffic report. (thanks to Piotr Smalira, p.smalira AT g16-lublin.eu)
  • Added 'hour' timeframe in 'monitorix.cgi' to accept unsupported queries not comming from the main page.
  • Added support for fail2ban bans in the System Services Demand graph. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added support for CommuniGate mail server logs in the System Services Demand graph. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added the ability to show more debug information introducing extra values to the -d parameter. The monitorix(8) manpage has been updated to reflect these changes. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added the sensor real names in the Voltages graph. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Removed duplicated newline character in logger() calls.
  • Added disabling automatic page reloading when $REFRESH_RATE is 0. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added a new option in configuration file to change the favicon image. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Added support for SpamAssassin and Clamav logs to catch email-spam and email-virus. (thanks to Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Grouped all the mail related services to the small graphs in the System Services Demand graph. This only implied changing the IMAP position. (suggested by Andreas Itzchak Rehberg, izzy AT qumran.org)
  • Fixed the main interrupt graph in order to avoid running out of colors on systems with lot of interrupts.
  • Fixed to honour the limit of 15 characters of the mountpoint names in the Icecast graph.
  • Fixed the column layout of the text mode in the LM-Sensors graph.
  • Fixed to set standard locale LC_TYPE,"C".

New in Monitorix 2.4.0 (Nov 29, 2011)

  • Added a complete statistical Squid Proxy Web Cache graph. (suggested by Michael Mansour, mmansour AT ostech.com.au)
  • Added a complete statistical NTP multigraph.
  • Added a complete statistical Icecast Streaming Media Server multigraph. (suggested by Kamil Weiser, crx AT lordcyber.net)
  • Error messages now use the internal logger() function so all these messages will have the date and time prefixed.
  • Added support for network port monitoring on FreeBSD and OpenBSD systems.
  • Added support for Nginx network traffic monitoring on FreeBSD and OpenBSD systems.
  • Added the number of instances (1) in the specified time key (day, week, month or year). This also introduces some changes in the name of the .png files and will break backwards compatibility with old (2.3-) Monitorix with Multihost feature enabled.
  • Removed some inadequate calls to 'die' taking proper actions on each case.
  • Introduced small optimizations.
  • Removed the '--lower-limit=0' in the Voltages graph that prevented seeing negatives values.
  • Fixed some typos in the variable name $PNG_DIR in 'monitorix.cgi'.
  • Fixed to avoid a 'divide by zero' message on certain NVIDIA driver version.

New in Monitorix 2.3.0 (Sep 6, 2011)

  • Added a complete statistical NFS (v2, v3 and v4) server graph.
  • Added a complete statistical NFS (v2, v3 and v4) client graph.
  • Improved support for newer NVIDIA drivers and fixed some bugs.
  • Added the 'condrestart' option in the RedHat init script. (suggested by Yury V. Zaytsev, yury AT shurup.com)
  • Added a new option in the configuration file to toggle all network values between bits and bytes per second.
  • Some cosmetic changes.
  • Fixed to sanitize a trailing space in the '/proc/stat' file that prevented to show values in the disk I/O graphs on certain systems with Linux kernel 2.4. (thanks to Dimitri Yioulos, dyioulos AT firstbhph.com)
  • Fixed the Connections_usage value in the MySQL graph avoiding to be greater than 100%.
  • Fixed to avoid showing the device interrupts called 'Dynamic-irq'. (thanks to Michael Mansour, mmansour AT ostech.com.au)
  • Fixed to avoid showing the additional parameter in disk drives. (thanks to Michael Mansour, mmansour AT ostech.com.au)
  • Fixed to add more colors in order to support more interrupt devices. (thanks to Dan Criel, dancriel AT gmail.com)
  • Fixed a bad calculation of network traffic in 'text' interface of Ports graph.
  • Fixed an extra 'optgroup' close tag in 'index.html' for each graph disabled.

New in Monitorix 2.2.0 (Jun 21, 2011)

  • Added support for OpenBSD systems. (thanks to Devio.us team)
  • Added a complete statistical MySQL graph. (thanks to Luca Ferrario, luca AT ferrario.net)
  • (missed in previous version) Prefixed with full path the 'sysctl' command to retrieve the boot time. This is specially needed when using the lighttpd web server on FreeBSD systems. (thanks to Chris Rees, utisoft AT gmail.com)
  • Added the Fork rate (new processes started per second) in the Context Switches graph. It includes two new values: the number of forks and vforks, being the later only for FreeBSD and OpenBSD systems.
  • Added support for the new NVIDIA driver 270.41.03.
  • Added support for the names 'BusyServers' and 'IdleServers' given by Apache when ExtendedStatus is disabled.
  • Added support to show the interrupt names on Xen guest systems.
  • Added to force a standard locale to avoid problems with decimal point/comma. (thanks to Vadim Beljaev, anon333 AT mail.com)
  • Workarounded the well-known problem with SIG{CHLD} and system() function that returns -1 on *BSD systems.
  • Included a Debian init script. (thanks to Jörg Alpers, JAlpers AT gmx.net)
  • Fixed the LINE2 of VFS graph and the swap device in FS graph.
  • Fixed a bug when counting total of users on systems with large number of users logged in.
  • Fixed a bug in 'monitorix.spec' that prevented a correct installation on systems with no 'apache' user defined, and added cosmetic changes.
  • Fixed to show only the graphs of the PC LAN defined in @PC_LIST even when $PC_MAX is greater.
  • Fixed a bug that could remove some Network Port 'iptables' rules under certain circumstances.
  • Fixed a bug that prevented to put in the email of monthly reports the listing with the daily usage of all the hosts.
  • Fixed a missing import of the 'File::Basename' module.
  • Fixed some typos in the man pages and aligned texts in some graphs.

New in Monitorix 2.1.2 (May 4, 2011)

  • Added a new command line parameter to save the PID into the specified file in order to make life easier to 'rc' scripts. (thanks to Chris Rees, utisoft AT gmail.com)
  • Prefixed with full path the 'sysctl' command to retrieve the boot time. This is specially needed when using the lighttpd web server on FreeBSD systems. (thanks to Chris Rees, utisoft AT gmail.com)
  • Added to change to the / directory before parsing the command line parameters, and after that, a change to a safety directory, either /tmp or /lost+found.
  • Improved the code that detects the physical device name where the / filesystem resides.
  • Changed the way how are handled the command line options.
  • Removed the 'Tahoma' font name from all 'font face' HTML tags.
  • Hidden the unused values in the 'LM-Sensors and GPU temperatures' graphs.
  • Fixed to remove correctly the 'iptables' rules when some defined port has been removed from the configuration file.
  • Fixed to show only the graphs of the ports defined in @PORT_LIST even when $PORT_MAX is greater.
  • Fixed a missing variable initialization that generated an 'illegal division by zero' message if the filesystem defined does not existed, and the system didn't had a valid swap device. (thanks to Mowd, mowd8574 AT gmail.com)
  • Fixed to show the PID number even when started as a foreground process.
  • Fixed the padding of the Voltages values.
  • Fixed a bug that prevented to gather correctly the disk I/O values of the / filesystem on Linux systems with kernel 2.4.

New in Monitorix 2.1.1 (Apr 12, 2011)

  • Reflect the SIGHUP reception with a message also in the new reopened log file.
  • Added support for the new 'Idrop' column in the output of 'netstat' command appeared in FreeBSD 8.0 and newer versions. (thanks to Sean, strumming AT thestrings.com)
  • Fixed an illegal division by zero message if the swap device is not used at all, which caused to not collect any data and, at the same time, prevented to see any results in the Filesystems usage and I/O activity graphs. (thanks to Daniel Constantinov, daniel AT k9tecnologia.com.br)
  • Fixed to not show a broken graph if there is no data defined in any of the three possible arrays of the HP Temperatures graphs.
  • Fixed to rename the files in the $USAGE_DIR directory once they are already sent in the monthly reports.
  • Fixed to create correctly the iptables rules for PC LAN traffic accounting. (thanks to Daniel Constantinov, daniel AT k9tecnologia.com.br)

New in Monitorix 2.1.0 (Mar 10, 2011)

  • Completed the monthly traffic reports for PCs.
  • Added a better signal handling.
  • Added the SIGHUP signal handler in order to close and open a new log file.
  • Modified the monitorix(8) manpage to reflect that new feature.
  • Darkened the grey color of the CUPS usage in the Network Services graphs.
  • Fixed annoying messages in log file when PC_MAX is actually greater than the number of entries in PC_LIST or PC_IP:
  • Fixed to show only the entries defined in PC_LIST even when PC_MAX has a greater value.
  • Fixed to correctly handle the SIGCHLD signal to prevent an accumulation of defunct or "zombie" processes in old Perl versions.
  • Fixed a regexp in 'fs.rrd' that prevented monitoring non-local filesystems.
  • Fixed a typo in monitorix(8) man page when referencing the monitorix.conf(5) man page.
  • Fixed in 'monitorix.cgi' to accept the 'silent' option in PCs graphs.
  • Fixed to LINE2 type the lines plotted in the Greylisting zoomed graph.

New in Monitorix 2.0.0 (Feb 3, 2011)

  • This new version is a complete rewrite, including new features and graphs, cleaned up all the code, updated and enhanced a number of aspects in some graphs, and fixed a lot of bugs. The most important change is that it no longer requires 'crond' to work, instead Monitorix is now a complete standalone Perl daemon being started and stopped like any other system service.

New in Monitorix 1.5.2 (Nov 18, 2010)

  • Added an new alert based on the usage of the root filesystem. It follows the same logic than the CPU alert, so the alert script is practically the same. (thanks to Ramchander, ramchan10 AT gmail.com)
  • Modified the man page of the configuration file to reflect the new alert capability. - Added a protection mechanism when collecting the filesystem disk usage. It prevents possible timeout scenarios on those filesystems mounted using NFS. (thanks to Ramchander, ramchan10 AT gmail.com)
  • Fixed to remove the netmask suffix when collecting the network traffic if the IP belongs to a hostname instead of a network.

New in Monitorix 1.5.1 (Jun 23, 2010)

  • Changed the default $ENABLE_MAIL option to 'N'.
  • Added a second decimal in the Mail statistics graph in order to have more accurated values.
  • Added a missing "--lower-limit=0" to all graphs (except MTA stats).
  • Changed the default value of rigid (RIGID = 2) to 0 in all network port graphs.
  • Included a number of necessary adjustments in the install.sh script to adapt it better to the FreeBSD installation process. (thanks to Michael Brune, admin AT mjbrune.org)
  • Added the description of the @NET_RIGID and @NET_LIMIT arrays in the man page monitorix.conf(5).
  • Fixed some bugs and a bad code design in the Interrupts graph that prevented showing correctly the graph on systems with some interrupts numbers greater than 256. (thanks to Dimitri Yioulos, dyioulos AT firstbhph.com)
  • Fixed the Memory graph to display correctly the value in MB. This bug affected only the FreeBSD systems.
  • Fixed to be able to enable only the LAN devices monitoring without having to have enabled the network ports monitoring (thanks to Niklas Janzon, niklas.janzon AT gmail.com)
  • Fixed the iptables rules section in order to avoid its execution on FreeBSD systems.
  • Fixed a bug in the init script that prevented executing it during the system shutdown on RedHat/Fedora/CentOS systems. The path of the lock file has changed from /var/lock/ to /var/lock/subsys.

New in Monitorix 1.5.0 (Apr 6, 2010)

  • Added a new graph to show complete MTA (Sendmail) statistics.
  • Added support for those lines in the 'sensors' command output that include a newline character and have the result in the next line. (thanks to Balazs Denes, dnsdns AT gmail.com)
  • Reused a lot of temporal variables in the CGI file.
  • Fixed to not show error messages on certain virtual servers if the file '/proc/diskstats' does not exist. (thanks to an anonymous IRC user called 'gangsterlicious')
  • Fixed the rigid control in the 3rd graph of the Nginx statistics.
  • Fixed the colors scheme in the main page when using the 'white' theme.

New in Monitorix 1.4.2 (Feb 10, 2010)

  • Removed the width=1 from the top table in the graphs page.
  • Changed to grey the color of all links.
  • Added automatic detection of total amount of memory in the system.
  • Modifyied the install.sh script in order to remove the already supported distribution Gentoo and to include some warnings saying that the script is not the recommended method of installing Monitorix.
  • Added a new $OSTYPE key called "Linux-Arch" to include support for Arch Linux distribution. (thanks to graysky, da_audiophile AT yahoo.com)
  • Fixed the URL of the images if is being called through a secure web server. (thanks to an anonymous IRC user called 'dobermai')
  • Fixed those no named interrupts that generated the annoying message "substr outside of string at /var/www/cgi-bin/monitorix.cgi line 4775, line n." in the Apache error log. (thanks to Mac, redleader25 AT hotmail.com)

New in Monitorix 1.4.0 (Oct 6, 2009)

  • The ability to show the results in plain text instead of using rendered graphs was added. This will make life easier both for people with vision impairments and for automatic processing of the information.
  • An alert system based on the last 15 minutes of the CPU load average was added.
  • A bug in monitorix.cgi that messed up the way the individual processors' graphs are displayed was fixed.

New in Monitorix 1.3.2 (Sep 1, 2009)

  • The support for FreeBSD systems has been improved a lot, especially those since the 6.2-RELEASE. Although there are still a pair of aspects than don't work yet, the support is almost complete.
  • This release comes with other improvements, especially the new support for the Enterprise Volume Management System (EVMS), which permits the display of the I/O disk activity of the root filesystem in such systems.
  • Some important bugs were also fixed.

New in Monitorix 1.3.1 (Aug 6, 2009)

  • Fixed a location problem for the logo files on a fresh installation using the Linux-Debian option.
  • Fixed a critical permission problem during a fresh installation (using the Linux-Debian option) that prevented seeing all the graphs. (thanks to Rubla Georgian, deletet.file AT yahoo.com)
  • Fixed some annoying error messages in the web server log when the $PORTnn and $PORTnn_NAME aren't correctly defined in /etc/monitorix.conf. (thanks to Luca Ferrario, luca AT ferrario.net)
  • Removed the un_install.sh script.

New in Monitorix 1.3.0 (Jul 15, 2009)

  • Added the monitorix.conf(5) man page to be the main place to get help.
  • Added support for the Nginx web server statistics. (thanks to Aleksandr Miroshnychenko, al.miroshnychenko AT gmail.com)
  • Removed the unused $EMAIL option. The $PC_DEFMAIL option is the one used when sending the monthly reports.
  • Removed the $PC_MAX option as its value is now hard coded.
  • Reorganized a bit the monitorix.conf file and cleared the syntax.
  • Improved the install.sh script with the 'install' command instead of using 'mkdir', 'cp' and friends.
  • Fixed some missing HTML closing tags.
  • Fixed to match the default value of $ENABLE_LMTEMP in monitorix.pl.
  • Fixed a bad counting of the number of current Samba shares when there wasn't any share on the list.

New in Monitorix 1.2.3 (Jan 14, 2009)

  • This is mainly a maintenance version that fixes several issues.
  • The way that Monitorix creates the iptables rules that prevented one from seeing the INPUT chain activity in the defined network ports was changed.
  • Another change directly affected the init script to removed the dependency of the command lockfile, making it more portable to other systems.
  • Some other fixes were also implemented.

New in Monitorix 1.2.2 (Nov 20, 2008)

  • A missing "/" when removing /var/www/monitorix in the un_install.sh script was fixed. More than three network devices are now accepted.
  • There were some parts that were not correctly upgraded to five.
  • The parameter -w during the hddtemp call was added just to make sure that it will awaken the disk (if needed).
  • The .sh extension and the she-bang in the crond script were removed for all Linux distributions, although problems were experienced only in the Debian based ones.
  • More fixes and some enhancements were made.

New in Monitorix 1.2.1 (Oct 1, 2008)

  • This is mainly a maintenance version that fixes several problems, includes some new support (especially for RRDtool version 1.3), and uses a better way of detecting RAID Linux devices.
  • It includes support for the Italian language in the monthly report.