Skip to content
Browse files

uploaded latest version

  • Loading branch information...
1 parent 8f4849e commit e0f9883cbaba4bc49ecb5f77284af36937cb1248 @mikaku committed Oct 22, 2012
View
339 COPYING
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
View
896 Changes
@@ -0,0 +1,896 @@
+2.6.1 - NN-XXX-2012
+====================
+- Introduced some modifications to the device name detection for FreeBSD.
+ (thanks to Chris Rees, utisoft AT gmail.com)
+
+
+2.6.0 - 19-Sep-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.
+
+
+2.5.2 - 21-May-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)
+
+
+2.5.1 - 23-Apr-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.
+
+
+2.5.0 - 21-Mar-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.
+
+
+2.4.1 - 09-Jan-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".
+
+
+2.4.0 - 28-Nov-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.
+
+
+2.3.0 - 05-Sep-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.
+
+
+2.2.0 - 21-Jun-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.
+
+
+2.1.2 - 04-May-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.
+
+
+2.1.1 - 12-Apr-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)
+
+
+2.1.0 - 09-Mar-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:
+
+*** DNS problem with:
+*** pc_update(): Usage: Socket::inet_ntoa(ip_address_sv) at /usr/bin/monitorix line 3548.
+
+- 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.
+
+
+2.0.0 - 01-Feb-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.
+
+Please read the 'News' and 'Features' sections in the Monitorix web site to
+give you an idea of all the changes and new features that include.
+
+I want to give a huge thanks to the people that has contributed testing and
+reporting bugs during its beta phase.
+
+
+1.5.2 - 18-Nov-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.
+ (anonymous contribution)
+
+
+1.5.1 - 23-Jun-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.
+
+
+1.5.0 - 06-Apr-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.
+
+
+1.4.2 - 10-Feb-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.
+- Modified 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,
+ <INTERRUPTS> line n." in the Apache error log.
+ (thanks to Mac, redleader25 AT hotmail.com)
+
+
+1.4.1 - 04-Jan-2010
+====================
+- Updated the monitorix.spec and monitorix.conf files for SuSE Linux packages.
+ (thanks to Oliver Kaltenecker, oliver.kaltenecker AT wittwer.de)
+- Modified the wide of the mount point column in the disk usage graph in order
+ to fit longer pathnames.
+- Substituted the pair of bottom logos (black and white) for a new one with
+ background transparency.
+- Changed the initial logo image by a new one with background transparency and
+ removed the slogan which reduced its size.
+- Removed the configuration option $IDATE.
+- Removed the envelope image as with the new mailing list it doesn't make sense
+ to be there anymore.
+- Fixed to honour the color theme even in the main page and simplified its
+ layout.
+- Fixed some annoying error messages in the web server logs about the use of
+ an uninitialized value in 4781 line.
+ (thanks to Edgar Barranco, ebarranco AT gmail.com)
+- Fixed a bug in how are collected the hardware temperatures in HP ProLiant
+ ML310 and ML350 models.
+ (thanks to Rene Kapeller, rene.kapeller AT psi.ch)
+- Fixed an overflow in the CPU array in systems with more than 8 processors,
+ that prevented seeing the rest of graphs.
+ (thanks to Robin Friedrich, Robin.Friedrich AT itt.com)
+
+
+1.4.0 - 05-Oct-2009
+====================
+- Optimized the iptables command used to collect Chain statistics.
+- Added the ability to show the results in plain text instead of using rendered
+ graphs. This will make life easier either for people with vision impairments
+ and for automatic processing of the information.
+ (thanks to Christoph Doeren, cd AT yuyumo.de)
+- Added an alert system based on the last 15 minutes of the CPU load average.
+ (suggested by Dimitri Yioulos, dyioulos AT firstbhph.com)
+- Fixed a bug in monitorix.cgi that messed up the way how are displayed the
+ individual processors' graphs.
+
+
+1.3.2 - 01-Sep-2009
+====================
+- Improved a lot the support for FreeBSD systems.
+ (thanks to Pavlin Vatev, anex AT smrad.net)
+- Added support for Enterprise Volume Management System (EVMS) to show the
+ I/O disk activity of the root filesystem.
+ (thanks to Markus Rennings, mren AT mrmx.de)
+- Added a new option in monitorix.conf called %MAIL_LOG with the paths for the
+ mail log file of each Operating System. This removes the old path hard coded.
+- Changed the "use" line of the LWP::UserAgent module, now is only loaded if
+ Nginx statistics are enabled. This creates less dependences for all people
+ that don't need the Nginx statistics.
+- Optimized the accounting process of SSH connections using the same code for
+ Linux and for FreeBSD. Linux SSH connections using public keys are also
+ counted now.
+ (thanks to Markus Rennings, mren AT mrmx.de)
+- Rewritten the Monitorix init script for Gentoo Linux.
+ (thanks to Markus Rennings, mren AT mrmx.de)
+- Added a zero pading in the name of the proc.png files.
+- Fixed to show 0% of usage if a filesystem defined in MNT_LIST has been
+ umounted, instead of returning the same disk usage of its parent filesystem.
+- Fixed the %HTTP_LOG path in the monitorix.conf file for Linux-Gentoo.
+ (thanks to Markus Rennings, mren AT mrmx.de)
+- Fixed the missing monitorixico.png file in the install script.
+ (thanks to Markus Rennings, mren AT mrmx.de)
+- Fixed to not create the network ports counters if $ENABLE_PORT is "N".
+
+
+1.3.1 - 05-Jul-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.
+
+
+1.3.0 - 14-Jul-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.
+ (thanks to Luca Ferrario, luca AT ferrario.net)
+
+
+1.2.4 - 06-Apr-2009
+====================
+- Isolated a Linux dependant code that prevented running Monitorix correctly
+ on FreeBSD systems.
+- Included support to recognize correctly the temperatures and RPM values when
+ in some weird cases, the FAN and CPU labels (in the lm_sensors output) share
+ the same name.
+ (thanks to Luca Ferrario, luca AT ferrario.net)
+- Fixed a duplication in the Monitorix iptables rules during a restart.
+- Added support for systems with device interrupt numbers greater than 255.
+- Added support for openSuSE/SLES Linux distribution.
+ (thanks to Alessandro Soraruf, soraruf AT ntd.homelinux.org)
+
+
+1.2.3 - 14-Jan-2009
+====================
+- Fixed the way how Monitorix creates the iptables rules. Now it uses the
+ parameter -I instead the -A in order to insert those rules in the top of
+ each chain so the data get recorded.
+ (thanks to Andrei Ioachim, andrei AT inteligis.com)
+- Added support for the Postfix MTA in the SMTP counter of the Network Services
+ Demand graph.
+ (thanks to Andrei Ioachim, andrei AT inteligis.com)
+- Fixed a typo in the declaration of $HTDOCS in the install.sh that only
+ affected to Gentoo installations.
+ (thanks to Carlos Perez, cpa.admin AT gmail.com)
+- Removed the dependence of the 'lockfile' command in the init-script.
+ (suggested by Carlos Perez, cpa.admin AT gmail.com)
+- Fixed to detect and show better the interrupt names.
+- Added a minimal support for interrupt numbers bigger than 255. This minimal
+ support will let you see the names of those interrupts that have those big
+ numbers but their activity will rest still void.
+ (thanks to Brian Lopeman, brian.lopeman AT ctrh.org)
+- Fixed a missing '127.0.0.1' in the URL of the graph images when
+ 'monitorix.cgi' is called from the command line.
+ (thanks to David Tiberio, dave AT cheapbooks.com)
+
+
+1.2.2 - 20-Nov-2008
+====================
+- Fixed a missing '/' when removing /var/www/monitorix in the un_install.sh
+ script.
+ (thanks to Tamas Marki, tamas AT gnsdm.com)
+- Fixed to really accept more than three network devices. There were some parts
+ that were not correctly upgraded to five.
+ (thanks to Milos Prudek, prudek AT bvx.cz)
+- Added the parameter -w during the hddtemp call just to make sure that it will
+ awaken the disk (if needed).
+- Removed the .sh extension and the she-bang in the crond script for all Linux
+ distributions, although only in the Debian based ones people experienced
+ problems.
+- Added a new configuration option to disable the crond mail related to
+ Monitorix errors.
+ (suggested by Detlef Neubauer, detlef.neubauer AT wzrz.de)
+- Fixed to include the "Linux-Generic" as a supported OSTYPE.
+- Fixed to include the monthly report files for the Italian language in the RPM
+ package.
+- Removed the htmlentity of the ampersand character introduced in the previous
+ version, as the last RRDtool version seems not complaining anymore.
+- Improved the way how the root filesystem device is detected including support
+ for the partitions with two digits like /dev/sda10.
+ (suggested by Dimitri Yioulos, dyioulos AT firstbhph.com)
+
+
+1.2.1 - 01-Oct-2008
+====================
+- Added support for the new RRDtool 1.3 version.
+- Fixed the alignment of the MB & CPU temperatures graph legend.
+- Forced the font type to 'Mono' for the RRDtool 1.3 version.
+- Fixed one identifier to count better the total messages sent/received in
+ /var/log/maillog.
+- Added support for some virtualized systems where the rootfs device name does
+ not appears in /proc/diskstats and the only way to collect the i/o values is
+ using the partition device name.
+ (thanks to Travis Wu, twu AT capitalsystems.com)
+- Added support for Linux software RAID devices of the form /dev/md/*.
+ (thanks to an anonymous IRC user called 'emilio')
+- Added Italian language support in the monthly traffic report.
+ (thanks to Luca Ferrario, luca AT ferrario.net)
+- Fixed the ampersand character to be an entity to avoid complaining messages
+ of Pango in the RRDtool 1.3 version.
+- Included the "Linux-Generic" OSTYPE key that for a strange reason it was
+ missing.
+- Fixed in the cover web page to only include the graphs that the system can
+ really offer. That will avoid to see more ethernets graphs than the number
+ of real ethernet devices and the same for the number of processors.
+
+
+1.2.0 - 02-Apr-2008
+====================
+- Added support for systems based on LVM structure on top of a CCISS RAID of
+ disk drives.
+ (thanks to Bob McClure, Jr., bob AT bobcatos.com)
+- Removed the full path of the 'pvs' command as it complicates the portability
+ of Monitorix to other Linux distributions.
+ (thanks to Eric, teknologist AT gmail.com)
+- Added the "no warnings" pragma to temporarily block warnings while calling
+ the 'sensors' command.
+- Fixed a bug introduced in the last version that prevented to see the interrupt
+ names on systems with 2.4 Linux kernels.
+- Fixed the graph of disk temperatures in order to preserve the page layout
+ when there's no defined any disk device in the HDDTEMP_LIST array.
+ (thanks to Eric, teknologist AT gmail.com)
+- Fixed to tolerate if @HDDTEMP_LIST was badly defined with just a void entry
+ instead of no entries at all. That's if someone defined incorrectly the array
+ as @HDDTEMP_LIST = ""; instead of simply as @HDDTEMP_LIST;
+ (thanks to Eric, teknologist AT gmail.com)
+- Removed the error messages when it has been defined in /etc/monitorix.conf a
+ network interface that it doesn't exist in the system.
+- Fixed the error message "Use of uninitialized value in string eq at
+ /var/www/cgi-bin/monitorix.cgi line 454." that appeared in the Apache error
+ logs when using Multihost feature.
+
+
+1.1.2 - 25-Feb-2008
+====================
+- Added the execution of the "pvs -a" command each time Monitorix is restarted,
+ just to make sure to remove a strange message about "Medium not found"
+ appeared on fresh CentOS 5 installations using LVM.
+- Converted automatically into a link the URL that appears in the bottom of
+ each graph (if enabled by $MULTIHOST_FOOTER) in the Multihost mode.
+- Fixed to put the zero character instead of NULL when there's no value, in the
+ monthly file of traffic during the daily collecting of counters.
+- Fixed a bug in the interrupt names that removed its first character affecting
+ only (mostly old) machines with "local-APIC-edge" support.
+
+
+1.1.1 - 16-Nov-2007
+====================
+- Fixed a stupid bug that prevented showing the graphs of network ports.
+
+
+1.1.0 - 15-Nov-2007
+====================
+- Added support for Gentoo Linux distribution.
+ (thanks to Matej Povazaj, ybdaba AT gmail.com)
+- Added support for Slackware Linux distribution.
+ (thanks to Bogdan Radulescu, from http://nimblex.net>
+- Changed the way how is the data collected in the Kernel Usage graph. From now
+ on, this graph will show its data in a more accurated way than before. People
+ can continue using the Real and Stacked modes though.
+ (thanks to Christian Meusel, christian.meusel AT inf.tu-dresden.de)
+- Definitely fixed (I really hope so) a persistent bug during the numeric
+ extraction of the alpha numeric string of the lm_sensors temperatures.
+- Fixed support for HP ML310 ProLiant server in the motherboard temperatures
+ graph.
+- Changed the main page form method from POST to GET in order to be able to
+ remove the old /cgi-bin/monitorix.cgi and call localhost.cgi directly.
+ So now on, the localhost.cgi is renamed as monitorix.cgi and it's placed in
+ the same place where it was the old one, removing the /cgi-bin/monitorix
+ directory as it will not longer be used.
+- Fixed to show the graph when using multihost feature and select only the
+ Context Switches graph.
+- Improved how are showed the images when using multihost feature selecting
+ only individual hosts. Now they are bigger.
+
+
+1.0.1 - 03-Oct-2007
+====================
+- Fixed some annoying messages like "Argument "+46M-BM-0C" isn't numeric in int
+ at /usr/bin/monitorix.pl line > 2710, <SENSORS> line 13.". Now it extracts
+ correctly numbers from an alpha numeric string.
+ (thanks to Russell Morris, rmorris AT rkmorris.us)
+- Changed from area-based to line-based the HP IPL temperature graphs in order
+ to follow the same aspect than the new LM-Sensors graph.
+- Added a permanent "lower-limit=0" in the following graphs: Context Switches,
+ LM-Sensors, Network Packet Traffic and Network Error Traffic.
+- Fixed the alignment of the legend in the FAN speeds graph on systems still
+ using the old RRDtool branch version 1.0.
+
+
+1.0.0 - 04-Sep-2007
+====================
+- Added a new graph to see the temperatures of the system motherboard, CPUs,
+ fan speeds and hard disk drives using lm_sensors and the hddtemp tool. Such
+ graph is disabled by default since there are still a lot of motherboards with
+ unsupported sensors out there. This new graph can be combined with the HP
+ specific temperatures graph.
+- Fixed some adjustments in the temperatures collector in newer HP ProLiant
+ servers with newer IML.
+- Added the ability to select the percentages layout in the Kernel Usage
+ statistics. The possible options are (R)eal or (S)tacked.
+ (suggested by Andrzej Pokrywko, Andrzej.Pokrywko AT onet.pl)
+- Fixed a bug that prevented to display correctly the interrupt names on newer
+ systems that use PCI-MSI instead of IO-APIC.
+- Added the ability to change the refresh rate value in the statistics web
+ page. The default value remains unchanged to 150 seconds.
+- Added some adjustments in the Monitorix init script.
+- Extended the environment variable PATH to cover more root directories.
+- Changed the default NET_RIGID from 2 to 0.
+- Changed the default network configuration from two interfaces to only one, as
+ it seems the most of people have only one network interface installed.
+- Removed some "Use of uninitialized value ..." annoying messages in the Apache
+ error_log.
+
+
+0.9.2 - 12-Jun-2007
+====================
+- Special Debian contribution.
+ + Added support for Debian distribution.
+ + Added the missing "monitorixico.png" file during the install process using
+ the install.sh shell-script.
+ (thanks to Uwe Heidrich, uweheidrich AT hotmail.com)
+- Added German language support in the monthly report.
+ (thanks to Uwe Heidrich, uweheidrich AT hotmail.com)
+- Added support for systems using Linux RAID systems under LVM.
+- Fixed in the localhost.cgi and in monitorix.pl files to not include a second
+ configuration file if the first one already exists.
+- Fixed the graphs legend lines adding blank lines in order to have a better
+ formatting. That only affected those who have RRDtool version above 1.2.13.
+- Added the Zoom feature that, when enabled, it will permits to see a larger
+ picture just clicking inside any graph image.
+ (suggested by Dimitri Yioulos, dyioulos AT firstbhph.com)
+- Removed the degree symbol in all the temperature graphs.
+- Some little code cleanup.
+
+
+0.9.1 - 09-Jan-2007
+====================
+- Fixed some annoying cron messages about uninitialized value during an addition
+ and a multiplication, only on 2.4 kernels.
+- Fixed the line and area colors in the kernel-related new graphs.
+
+
+0.9.0 - 03-Jan-2007
+====================
+- Fixed the background color of the graphs in Multihost feature.
+- Added a lot of new colors to cover as many hardware interrupts as they exist.
+- Added the Monitorix shortcut icon.
+- Fixed a bad closing in the global <html> tag.
+- Fixed and optimized the start routine in the init script.
+- Added a new composed-graph to see the Linux kernel usage per processor. The
+ graph will be divided by three parts (as always) only using, right now, the
+ biggest and the first one of the last two. The graph will show the global
+ percentages of total user time, nice time, system time, idle time and io-wait
+ time and separately, the number of context switches. Finally if the system
+ has multiprocessors there will be an individual graph per processor showing
+ the percentages of its CPU times (up to 8 processors).
+ (suggested by Michael Berger, MBerger AT scrippsops.com)
+- Added a configuration switch (Y/N) per graph to enable or disable its
+ processing. This will help specially on embedded systems (where there is not
+ much disk space) to monitorize only what it is really needed.
+- IMPORTANT NOTICE: The configuration file (/etc/monitorix.conf) has been
+ extended with important changes.
+
+
+0.8.3 - 16-Oct-2006
+====================
+- Added the word "easier" to the Monitorix slogan.
+- Added support for CCISS Compaq RAID driver under 2.6 Linux kernels.
+- Changed the color for the first mounted filesystem in the disk usage, now is
+ darker.
+- Changed all the white colors to gray in order to be more visible when using
+ the white theme.
+- Changed the Fax color (from white to orange).
+- Adjusted three colors in the interrupt activity graphs: from gray to orange,
+ from black to dark-gray and from white to light-gray.
+- Changed the color of the running processes (from dark blue to red).
+- Changed the HTML font from the Arial,Helvetica to Verdana,Tahoma, and switched
+ to lowercase all the HTML tags.
+- Fixed a problem when finding the root disk on LVM systems with multiple disks
+ on the same logical volume.
+ (thanks to Bon, bon AT bugstudio.net)
+- Consolidated to only one internal function all temperature graphs concerning
+ to the Hewlett-Packard server models.
+- Fixed a broken image in the third temperature graph on some Hewlett-Packard
+ server models.
+- Added support for up to 255 hardware interrupts to take advantatge of the
+ APIC feature in newer Linux systems. The "int.rrd" database will be upgraded
+ automatically.
+- Because of the new support for so many interrupts, the interrupt graphs no
+ longer displays the unused ones.
+- Added support for up to 5 NICs. The "net.rrd" database will be upgraded
+ automatically.
+ (suggested by Mike Harris, MikeDawg AT addictz.org)
+- Removed the use of the generation number from the HP ProLiant servers, because
+ there are no differencies In the number of processors between the current
+ generations. Now the server names are changed from ML350G3 to simply ML350.
+
+
+0.8.2 - 04-Jul-2006
+====================
+- Changed from dark-gray to orange the color of the last mount point in the
+ disk usage graph.
+- Added error handling during the creation of the RRDs database files.
+- Fixed a graph creation error when trying to view the PC LANs on systems with
+ RRDtool v1.2+.
+- Fixed a graph creation error during the monthly report creation on systems
+ with RRDtool v1.2+.
+- Fixed to take care about the color selected when creating the monthly report
+ graphs.
+- Fixed a typo when cutting the last digit of $root_disk.
+ (thanks to Christoph Fritsche, Christoph.Fritsche AT fh-telekom-leipzig.de)
+- Added the new parameter "silent=imagetag" which among of the image
+ generation it will return the HTML <IMG SRC> tag for the specified image.
+- Fixed the annoying old behaviour of the Multihost feature that obligates to
+ reload the page two times every time you want to see the most up to date
+ remote server graphs.
+- Some cosmetic changes.
+
+
+0.8.1 - 17-May-2006
+====================
+- Fixed problems while creating the ip counters when the network port variables
+ $PORT01, $PORT02, ... are removed or not defined in the configuration file.
+- Added better support for Linux Software RAID devices (/dev/md0, /dev/md1, ...).
+- Added specific colored logo images for black and white themes.
+- Optimized the way how are used the chomp() functions, using now multiple
+ arguments.
+- Optimized all the code that was using system commands to collect information.
+- Dramatically reduced the CPU load average on most systems specially on slow or
+ old systems. As an example of that, a Pentium at 133Mhz sees reduced to 50%
+ its CPU load.
+- More code cleaning.
+
+
+0.8.0 - 27-Mar-2006
+====================
+- Almost complete support for FreeBSD based systems.
+ (thanks to Roger "Rocky" Vetterberg, roger AT vetterberg.com)
+ (thanks to the twenty4help, http://www.twenty4help.com)
+- Code prepared to be more easily portable to other UNIX/Linux systems.
+- Changed the location of the configuration file to /etc/monitorix.conf.
+- Fixed a "grep" condition problem with LVM based systems not using LVM.
+ (thanks to Yazhir, admin AT pazeng.co.il)
+- Fixed to escape more possible colons on interrupt device names.
+- Fixed graph font size for RRDtool versions 1.2+.
+- Better support for RRDtool version 1.2.
+- Fixed the counter of the amount of Samba locked files.
+- Better monitorization in the detection of VirusMail (requires MailScanner).
+- Improved the Active Processes graph, now includes the sleeping and running
+ processes in order to know better the amount of concurrent processes the
+ server has.
+- Now the cron file is automatically created taking care the OS usual paths.
+- Removed the default names for the unused interrupt devices. Now all the unused
+ interrupts will be marked as "unused".
+- Fixed the order of collected data in disk activity graphs.
+- More code cleaning and removed some unused variables.
+
+
+0.7.14 - 17-Jan-2006
+====================
+- Fixed to be more accurate the way how are detected the ports that are down.
+- Removing annoying cron messages and added again the locking mechanism.
+
+
+0.7.13 - 16-Jan-2006
+====================
+- Added an automatic space-padding control to the MNT_LIST mount points names.
+- Fixed "val" and "mode" declarations and added a hint into README file for
+ users coming from other Linux distributions.
+ (thanks to Christoph Fritsche, s03315 AT fh-telekom-leipzig.de )
+- Really added the parameter "-P" in the "df" lines. In the previous version it
+ was only commented in the ChangeLog.
+- Added a new file in the /etc/httpd/conf.d/ which will make the alias
+ "/monitorix", and will facilitate the installation with different html root
+ directories.
+- Added an initial support for LVM (Logical Volume Manager) based systems.
+- Added a warning indicator (changing the color background to red) on the 12
+ port graphs for each selected port if it seems to be down.
+- Removed temporaly the locked mechanism introduced in the previous version
+ because it produces annoying cron messages everyday at midnight.
+- Some little code cleaning.
+
+
+0.7.12 - 07-Nov-2005
+====================
+- Fixed the stat() function that prevented to collect Samba and NetAtalk data.
+- Escape colons in Interrupt names (INT_NAME) for rrdtool 1.2 branch versions.
+ (thanks to Marcos Andre, foca AT siagri.com.br)
+- Added the parameter "-P" in order to prevent multi-line output from "df".
+ (thanks to Rene Kapeller, rene.kapeller AT psi.ch)
+- Added a locking mechanism to prevent concurrent executions of Monitorix, that
+ will be useful on very high loaded servers.
+ (thanks to Rene Kapeller, rene.kapeller AT psi.ch)
+
+
+0.7.11 - 06-Oct-2005
+====================
+- Now the POP3 section is looking for pop3 string (not pop-3) in log entries.
+- It handles possible DNS no resolution for defined PC LANs.
+- Added English language support for the monthly reports.
+- Removed the PC_DS list. Monitorix only will use PC_LIST and PC_IP if needed.
+- Remove the hard-coded command paths in order to be more distro compatible.
+- Added some checks in order to warn if some directories or files can't be read.
+- Fix to escape only colons for rrdtool 1.2 branch versions.
+
+
+0.7.10 - 26-Sep-2005
+====================
+- Reduced the size of the Monitorix logo in the startup screen.
+- Finally fixed the problem with disk i/o on 2.6 kernels.
+- Fixed some incompatibilities in order to support RRDtool v1.2.
+ (thanks to Alex Shiffer, refys AT zelacom.com)
+- Removed MONITORIX_VER variable from the configuration file.
+
+
+0.7.9 - 12-Sep-2005
+====================
+- Some cleanups in the Configuration.help file.
+- Remove annoying samba messages in cron when samba is not running.
+- Fixed bug when collecting disk i/o on kernels 2.6 (/proc/diskstats).
+ (thanks to Alf Tanner, alf.tanner AT gmail.com)
+
+
+0.7.8 - 11-Sep-2005
+====================
+- Initial public release.
+
View
170 README
@@ -0,0 +1,170 @@
+INTRODUCTION
+===============================================================================
+Monitorix is a free, 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 may also be used to monitor embedded devices as
+well.
+
+It consists mainly of two programs: a collector, called monitorix, which
+is a Perl daemon that is started automatically like any other system service,
+and a CGI script called monitorix.cgi.
+
+Every time 'monitorix' is started it reads the configuration file from the path
+specified in the command line (using the -c option), and once checked, it
+creates the 'index.html' file that will act as the Monitorix main page.
+
+It also creates a file called '$BASE_DIR/cgi-bin/monitorix.conf.path' that
+includes the absolute path of the configuration file. This file will be read
+by 'monitorix.cgi' to determine the exact location of the configuration file.
+If for any reason it is unable to locate this file, Monitorix will try two
+alternative locations: '/etc/monitorix.conf' and
+'/usr/local/etc/monitorix.conf'.
+
+
+HISTORY
+===============================================================================
+All of its development was initially created for monitoring Red Hat, Fedora and
+CentOS Linux systems, so this project was made keeping in mind these type of
+distributions. Today it runs on different GNU/Linux distributions and even in
+other UNIX systems, like FreeBSD, OpenBSD and NetBSD.
+
+On March 2006, Monitorix included minimal support to run on FreeBSD systems. My
+special thanks to twenty4help Knowledge Service and to Roger "Rocky" Vetterberg
+for their support and help, and for being good friends during the porting
+process.
+
+Since the release of 1.3.2 though, Monitorix has almost full support for
+FreeBSD. My special thanks to Pavlin Vatev who generously offered his support
+during all of the process.
+
+With the release 2.0.0 Monitorix suffered 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 was
+that it no longer required 'crond' to work, instead Monitorix became a complete
+standalone Perl daemon being started and stopped like any other system service.
+
+Since the release 2.2.0 Monitorix includes support for OpenBSD systems. My
+special thanks to Devio.us team for giving me a free shell account where to put
+hands to work.
+
+Since the release 2.6.0 Monitorix includes support for NetBSD systems.
+
+
+IMPORTANT NOTE
+===============================================================================
+The configuration file is a Perl file where values are directly assigned to
+variables that Monitorix uses during normal operation; you should take care to
+conform to basic Perl syntax.
+
+Please, see the monitorix.conf(5) and monitorix(8) man pages.
+
+
+REQUIREMENTS
+===============================================================================
+Monitorix requires some others packages to be installed that your GNU/Linux
+distribution may or may not have:
+
+- A CGI capable Web server (Apache, Nginx, lighttpd, etc.)
+- Perl
+- Perl-CGI
+- Perl-MailTools
+- Perl-MIME-Lite
+- Perl-libwww
+- Perl-DBI
+- Perl-XML-Simple
+- RRDtool and its Perl bindings (perl-rrdtool or rrdtool-perl)
+
+You can download RRDtool from different places:
+ http://pkgs.repoforge.org/rrdtool/
+ http://oss.oetiker.ch/rrdtool/
+
+
+INSTALLATION
+===============================================================================
+The file tree for the Monitorix application is:
+
+File Recommended location Description
+-------------------------------------------------------------------------------
+monitorix /usr/bin/ main program (daemon)
+monitorix.cgi $BASE_DIR/cgi-bin/ CGI (viewer)
+monitorix.conf /etc/ configuration file
+Changes /usr/share/doc/ changes log file
+COPYING /usr/share/doc/ license
+logo_bot.png $BASE_DIR bottom logo
+logo_top.png $BASE_DIR top logo
+monitorixico.png $BASE_DIR favicon
+monitorix-alert.sh /usr/share/doc/ alert example script
+monitorix-apache.conf /etc/httpd/conf.d/ apache configuration
+monitorix.init /etc/init.d/ redhat init script
+monitorix-deb.init /etc/init.d/ debian init script
+monitorix.logrotate /etc/logrotate.d/ logrotate script
+monitorix.spec /usr/share/doc/ RPM spec file
+monitorix.sysconfig /etc/sysconfig/ pre-run config file
+monitorix.lighttpd /etc/lighttpd/ lighttpd configuration
+README /usr/share/doc/ documentation
+README.FreeBSD /usr/share/doc/ documentation
+README.nginx /usr/share/doc/ documentation
+README.OpenBSD /usr/share/doc/ documentation
+README.NetBSD /usr/share/doc/ documentation
+man/man5/monitorix.conf.5 /usr/share/man/man5/ monitorix.conf manpage
+man/man8/monitorix.8 /usr/share/man/man8/ monitorix manpage
+reports/*.html $BASE_LIB/reports/ monthly reports i18n
+reports/send_reports $BASE_LIB/reports/ script to send reports
+
+
+Once succesfully installed, please take a look into the configuration file to
+setup the options according your system and enable or disable graphs.
+
+Finally start Monitorix using the system init script:
+
+# service monitorix start
+
+or with:
+
+# /etc/init.d/monitorix start
+
+At this point, Monitorix will start gathering the system information based on
+the configuration setup in 'monitorix.conf' file, and after some minutes, you
+should be able to see the results from your favorite browser pointing at:
+
+http://localhost/monitorix/
+(don't forget to (re)start your webserver)
+
+
+AUTHORS
+===============================================================================
+Monitorix is written and actively maintained by Jordi Sanfeliu.
+
+Many people further contributed by reporting problems, suggesting various
+improvements, sharing ideas or submitting actual code. Since the list might be
+incomplete, please see the 'Changes' file for a detailed description of all the
+contributions.
+My special thanks to all of them!
+
+
+CONTACT
+===============================================================================
+In case of help, bugs, ideas or suggestions please contact using any of the
+following ways:
+
+- IRC at freenode: #monitorix
+- Mailing List: https://lists.sourceforge.net/lists/listinfo/monitorix-general
+- Direct Email: Jordi Sanfeliu <jordi@fibranet.cat>
+
+
+DONATIONS
+===============================================================================
+If you or your company make regular use of this software, please consider
+making a donation to the author to support open source effort.
+Many thanks for any donation!
+
+
+LICENSE AND COPYRIGHT
+===============================================================================
+Monitorix is distributed under the terms of the GNU General Public License.
+See the included file "COPYING".
+
+Copyright (C) 2005-2012 Jordi Sanfeliu.
+http://www.monitorix.org
+
View
18 README.FreeBSD
@@ -0,0 +1,18 @@
+Notes to read after installation of Monitorix 2.4+ in FreeBSD systems
+===============================================================================
+Please take some time adjusting the options in the monitorix.conf file.
+See the monitorix.conf(5) man page for a detailed help of each configuration
+option.
+
+Make sure that the default ipfw(8) rule numbers defined in the monitorix.conf
+file doesn't conflict with any other rule number in your firewall:
+ - $PORT_RULE = "24000";
+ - $NGINX_RULE = "24100";
+
+This is the list of things that still need attention:
+ - [PCLAN] - PC LAN Internet activity is not supported yet. Help needed!
+ - [SERV] - Some services may not work.
+ - [HPTEMP] - HP Temperatures may not work because of the lack of HP software.
+ - [NFSS] - NFS server is not supported yet.
+ - [NFSC] - NFS client is not supported yet.
+
View
19 README.NetBSD
@@ -0,0 +1,19 @@
+Notes to read after installation of Monitorix 2.6+ in NetBSD systems
+===============================================================================
+Please take some time adjusting the options in the monitorix.conf file.
+See the monitorix.conf(5) man page for a detailed help of each configuration
+option.
+
+This is the list of things that still need attention:
+ - IP filter not supported yet, hence some network activity graphs won't work.
+ - File usage in 'VFS usage' graph doesn't work.
+ - [PROC] - Per processor kernel usage graph is not available because the
+ command 'sysctl kern.cp_time2' doesn't work yet.
+ - [PORT] - Network port activity not supported yet.
+ - [PCLAN] - PC LAN Internet activity is not supported yet. Help needed!
+ - [SERV] - Some services may not work.
+ - [HPTEMP] - HP Temperatures may not work because of the lack of HP software.
+ - [NFSS] - NFS server is not supported yet.
+ - [NFSC] - NFS client is not supported yet.
+ - [INT] - Device interrupt activity not supported yet.
+
View
20 README.OpenBSD
@@ -0,0 +1,20 @@
+Notes to read after installation of Monitorix 2.4+ in FreeBSD systems
+===============================================================================
+Please take some time adjusting the options in the monitorix.conf file.
+See the monitorix.conf(5) man page for a detailed help of each configuration
+option.
+
+Make sure that the default ipfw(8) rule numbers defined in the monitorix.conf
+file doesn't conflict with any other rule number in your firewall:
+ - $PORT_RULE = "24000";
+ - $NGINX_RULE = "24100";
+
+This is the list of things that still need attention:
+ - [PROC] - Per processor kernel usage graph is not available because the
+ command 'sysctl kern.cp_time2' doesn't work yet.
+ - [PCLAN] - PC LAN Internet activity is not supported yet. Help needed!
+ - [SERV] - Some services may not work.
+ - [HPTEMP] - HP Temperatures may not work because of the lack of HP software.
+ - [NFSS] - NFS server is not supported yet.
+ - [NFSC] - NFS client is not supported yet.
+
View
31 README.nginx
@@ -0,0 +1,31 @@
+NOTES FOR THOSE WHO WANT TO MONITOR 'nginx' WEB SERVER
+===============================================================================
+Since the 1.3.0 version and thanks to Aleksandr Miroshnychenko
+(al.miroshnychenko AT gmail.com) it is possible to enable the monitorization
+of the Nginx web server (http://nginx.net/).
+
+Here are the steps:
+
+1) Edit the 'monitorix.conf' file to enable the 'nginx' monitorization and set
+ the correct network port where Nginx is listening on:
+ our %GRAPH_ENABLE = (
+ [...]
+ "nginx" => "Y",
+ [...]
+
+ our $NGINX_PORT = "80";
+
+2) Make sure 'nginx' is compiled with the flag:
+ --with-http_stub_status_module
+
+3) Edit the 'nginx.conf' file and add or uncomment in the server section the
+ following:
+ location /nginx_status {
+ stub_status on;
+ access_log off;
+ allow 127.0.0.1;
+ deny all;
+ }
+
+4) Restart Nginx and Monitorix.
+
View
29 docs/monitorix-alert.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+#
+# Example script used to execute an alert action.
+#
+# - in CPU alerts the current value is the last 15min load average
+# - in FS alerts the current value is the root filesystem usage (%)
+#
+
+if [ $# != 3 ] ; then
+ echo "$0: Wrong number of parameters."
+ exit 1
+fi
+
+ALERT_TIMEINTVL=$1
+ALERT_THRESHOLD=$2
+current_value=$3
+
+(
+cat << EOF
+Message from hostname '$HOSTNAME'
+
+This system is reaching/exceeding the defined $ALERT_THRESHOLD threshold during the last $ALERT_TIMEINTVL seconds.
+
+The current value is: $current_value
+
+Please take proper actions to correct this situation.
+EOF
+) | mail -s "WARNING: Monitorix alert!" root
+
View
32 docs/monitorix-apache.conf
@@ -0,0 +1,32 @@
+#
+# Monitorix is a lightweight system monitoring tool
+#
+
+Alias /monitorix /usr/share/monitorix
+ScriptAlias /monitorix-cgi /usr/share/monitorix/cgi-bin
+
+<Directory /usr/share/monitorix/cgi-bin/>
+ DirectoryIndex monitorix.cgi
+ Options ExecCGI
+ Order Deny,Allow
+ Deny from all
+ Allow from 127.0.0.1
+</Directory>
+
+# Apache rules to restrict access to Monitorix:
+# Don't forget to add <username> in .htpasswd with the 'htpasswd' command.
+#
+#<Directory "/usr/share/monitorix">
+# Options Indexes Includes FollowSymLinks
+# Order Deny,Allow
+# Deny from All
+# Allow from 127.0.0.1
+# AllowOverride None
+# AuthUserFile /etc/httpd/conf/.htpasswd
+# AuthGroupFile /dev/null
+# AuthName "Monitorix: Restricted access, sorry."
+# AuthType Basic
+# Require user <username>
+# Satisfy Any
+#</Directory>
+
View
88 docs/monitorix-deb.init
@@ -0,0 +1,88 @@
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides: monitorix
+# Required-Start:
+# Required-Stop:
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Start Monitorix daemon
+### END INIT INFO
+
+# PATH should only include /usr/* if it runs after the mountnfs.sh script
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+
+DESC="Monitorix"
+NAME="monitorix"
+CONF="/etc/monitorix.conf"
+DAEMON="/usr/bin/$NAME"
+PIDFILE="/var/run/$NAME.pid"
+LOCKFILE="/var/lock/$NAME"
+SCRIPTNAME="/etc/init.d/$NAME"
+DAEMON_ARGS="-c $CONF -p $PIDFILE"
+
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 5
+
+# Read configuration variable file if it is present
+[ -r /etc/default/$NAME ] && . /etc/default/$NAME
+
+# Load the VERBOSE setting and other rcS variables
+. /lib/init/vars.sh
+
+# Define LSB log_* functions.
+# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
+. /lib/lsb/init-functions
+
+lock_monitorix() {
+ if [ -x /usr/bin/lockfile-create ]; then
+ lockfile-create $LOCKFILE
+ lockfile-touch $LOCKFILE &
+ LOCKTOUCHPID="$!"
+ fi
+}
+
+unlock_monitorix() {
+ if [ -x /usr/bin/lockfile-create ] ; then
+ kill $LOCKTOUCHPID
+ lockfile-remove $LOCKFILE
+ fi
+}
+
+case $1 in
+ start)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC $NAME"
+ lock_monitorix
+ start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -p $PIDFILE $DAEMON_ARGS
+ status=$?
+ unlock_monitorix
+ log_end_msg $status
+ ;;
+ stop)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC $NAME"
+ start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
+ log_end_msg $?
+ rm -f $PIDFILE
+ ;;
+ restart|force-reload)
+ $0 stop && sleep 2 && $0 start
+ ;;
+ try-restart)
+ if $0 status >/dev/null; then
+ $0 restart
+ else
+ exit 0
+ fi
+ ;;
+ reload)
+ exit 3
+ ;;
+ status)
+ status_of_proc $DAEMON "$DESC"
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|try-restart|force-reload|status}"
+ exit 2
+ ;;
+esac
View
4 docs/monitorix-lighttpd.conf
@@ -0,0 +1,4 @@
+$HTTP["host"] =~ "your\.monitorix\.vhost$" {
+ server.document-root = "/var/www/localhost/htdocs/monitorix"
+ alias.url = ( "/cgi-bin" => "/var/www/localhost/cgi-bin/" )
+}
View
87 docs/monitorix.init
@@ -0,0 +1,87 @@
+#!/bin/bash
+#
+# /etc/rc.d/init.d/monitorix
+#
+# Starts the Monitorix daemon
+#
+# chkconfig: 2345 99 10
+# description: Monitorix is a lightweight system monitoring tool
+# processname: monitorix
+# config: /etc/monitorix.conf
+# pidfile: /var/run/monitorix.pid
+
+### BEGIN INIT INFO
+# Provides: monitorix
+# Required-Start: $local_fs
+# Required-Stop: $local_fs
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Start up the Monitorix daemon
+# Description: Monitorix is a free, open source, lightweight system
+# monitoring tool designed to monitor as many services and
+# system resources as possible.
+### END INIT INFO
+
+# Source function library
+. /etc/init.d/functions
+
+if [ -f /etc/sysconfig/monitorix -a $UID -eq 0 ]; then
+ . /etc/sysconfig/monitorix
+fi
+
+RETVAL=0
+PROG="monitorix"
+DAEMON="/usr/bin/monitorix"
+PIDFILE="/var/run/monitorix.pid"
+CONF="/etc/monitorix.conf"
+
+start() {
+ if [ ! -f /var/lock/subsys/$PROG ] ; then
+ echo -n $"Starting $PROG: "
+ daemon $DAEMON -c $CONF -p $PIDFILE $OPTIONS && success || failure
+ RETVAL=$?
+ if [ $RETVAL -eq 0 ] ; then
+ touch /var/lock/subsys/$PROG
+ echo
+ fi
+ fi
+}
+
+stop() {
+ echo -n $"Stopping $PROG: "
+ killproc $PROG
+ RETVAL=$?
+ rm -f /var/lock/subsys/$PROG
+ rm -f $PIDFILE
+ echo
+}
+
+restart() {
+ stop
+ start
+}
+
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ restart)
+ restart
+ ;;
+ condrestart)
+ if [ -f /var/lock/subsys/$PROG ] ; then
+ restart
+ fi
+ ;;
+ status)
+ status $PROG
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|restart|condrestart|status}"
+ exit 1
+esac
+
+exit $RETVAL
View
7 docs/monitorix.logrotate
@@ -0,0 +1,7 @@
+/var/log/monitorix {
+ nocompress
+ missingok
+ postrotate
+ /bin/kill -HUP `cat /var/run/monitorix.pid 2>/dev/null` 2> /dev/null || true
+ endscript
+}
View
96 docs/monitorix.spec
@@ -0,0 +1,96 @@
+# rpm spec for Monitorix
+#
+
+Summary: Monitorix is a system monitoring tool
+Name: monitorix
+Version: 2.6.0
+Release: 1%{?dist}
+License: GPL
+Group: Applications/System
+URL: http://www.monitorix.org
+Packager: Jordi Sanfeliu <jordi@fibranet.cat>
+
+Source: %{name}-%{version}.tar.gz
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
+BuildArch: noarch
+
+Requires: rrdtool
+Requires: perl
+Requires: perl-libwww-perl
+Requires: perl-MailTools
+Requires: perl-MIME-Lite
+Requires: perl-DBI
+Requires: perl-XML-Simple
+
+%description
+Monitorix is a free, 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 may also be used on embedded devices as well.
+
+%prep
+%setup
+
+%build
+
+%install
+rm -rf %{buildroot}
+mkdir -p %{buildroot}%{_initrddir}
+install -m 0755 docs/monitorix.init %{buildroot}%{_initrddir}/monitorix
+mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d
+install -m 0644 docs/monitorix-apache.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/monitorix.conf
+mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
+install -m 0644 docs/monitorix.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/monitorix
+mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
+install -m 0644 docs/monitorix.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/monitorix
+mkdir -p %{buildroot}%{_sysconfdir}
+install -m 0644 monitorix.conf %{buildroot}%{_sysconfdir}/monitorix.conf
+mkdir -p %{buildroot}%{_bindir}
+install -m 0755 monitorix %{buildroot}%{_bindir}
+mkdir -p %{buildroot}%{_datadir}/monitorix
+install -m 0644 logo_top.png %{buildroot}%{_datadir}/monitorix
+install -m 0644 logo_bot.png %{buildroot}%{_datadir}/monitorix
+install -m 0644 monitorixico.png %{buildroot}%{_datadir}/monitorix
+mkdir -p %{buildroot}%{_datadir}/monitorix/imgs
+mkdir -p %{buildroot}%{_datadir}/monitorix/cgi-bin
+install -m 0755 monitorix.cgi %{buildroot}%{_datadir}/monitorix/cgi-bin
+mkdir -p %{buildroot}%{_localstatedir}/lib/monitorix/reports
+install -m 0644 reports/*.html %{buildroot}%{_localstatedir}/lib/monitorix/reports
+install -m 0755 reports/send_reports %{buildroot}%{_localstatedir}/lib/monitorix/reports
+mkdir -p %{buildroot}%{_localstatedir}/lib/monitorix/usage
+mkdir -p %{buildroot}%{_mandir}/man5
+mkdir -p %{buildroot}%{_mandir}/man8
+install -m 0644 man/man5/monitorix.conf.5 %{buildroot}%{_mandir}/man5
+install -m 0644 man/man8/monitorix.8 %{buildroot}%{_mandir}/man8
+
+%clean
+rm -rf %{buildroot}
+
+%post
+/sbin/chkconfig --add monitorix
+
+%files
+%defattr(-, root, root)
+%{_initrddir}/monitorix
+%config(noreplace) %{_sysconfdir}/httpd/conf.d/monitorix.conf
+%config(noreplace) %{_sysconfdir}/logrotate.d/monitorix
+%config(noreplace) %{_sysconfdir}/sysconfig/monitorix
+%config(noreplace) %{_sysconfdir}/monitorix.conf
+%{_bindir}/monitorix
+%{_datadir}/monitorix/logo_top.png
+%{_datadir}/monitorix/logo_bot.png
+%{_datadir}/monitorix/monitorixico.png
+%{_datadir}/monitorix/cgi-bin/monitorix.cgi
+%attr(777,apache,apache) %{_datadir}/monitorix/imgs
+%attr(755,root,root) %{_localstatedir}/lib/monitorix/usage
+%config(noreplace) %{_localstatedir}/lib/monitorix/reports/*.html
+%{_localstatedir}/lib/monitorix/reports/send_reports
+%doc %{_mandir}/man5/monitorix.conf.5.gz
+%doc %{_mandir}/man8/monitorix.8.gz
+%doc Changes COPYING README README.nginx README.FreeBSD README.OpenBSD README.NetBSD docs/monitorix-alert.sh docs/monitorix-lighttpd.conf
+
+%changelog
+* Thu Sep 01 2005 Jordi Sanfeliu <jordi@fibranet.cat>
+- Release 0.7.8.
+- First public release.
+- All changes are described in the Changes file.
View
3 docs/monitorix.sysconfig
@@ -0,0 +1,3 @@
+# Here you can specify your Monitorix command line options.
+#
+#OPTIONS=""
View
BIN logo_bot.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN logo_top.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
1,768 man/man5/monitorix.conf.5
1,768 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
57 man/man8/monitorix.8
@@ -0,0 +1,57 @@
+.\" Monitorix manpage.
+.\" Copyright (C) 2005-2012 by Jordi Sanfeliu <jordi@fibranet.cat>
+.\"
+.\" This is the man page for the monitorix collector daemon.
+.\"
+.TH monitorix 8 "Sep 2012" 2.6.0 "Monitorix collector daemon"
+.SH NAME
+monitorix
+.SH SYNOPSIS
+\fBmonitorix\fR \fB-c configfile\fR [\fB-p pidfile\fR] [\fB-d none | graph[,graph] | all\fR] [\fB-v\fR]
+.SH DESCRIPTION
+This Perl daemon starts the main Monitorix process, which gathers statistics about the system it is running on and stores this information in a set of RRD files.
+.SH OPTIONS
+.TP
+\fB\-c configfile\fR
+The default location of the configuration file varies depending on the operating system:
+.P
+.RS
+Linux: \fI/etc/monitorix.conf\fP
+.br
+FreeBSD: \fI/usr/local/etc/monitorix.conf\fP
+.P
+.RE
+.TP
+\fB\-p pidfile\fR
+Stores the daemon's process ID into the specified file.
+.TP
+\fB\-d none | graph[,graph] | all\fR
+Logs more information about what \fBmonitorix\fP is doing internally. The keys reflect if the data collected must be displayed on each case. If \fBall\fP is defined, the data collected of all enabled graphs will be shown. If \fBnone\fP is defined no data collected will be shown. Finally it is also possible to define a comma-separated list of graph names from which show their data collected.
+.br
+For a reference of all graph names check the option \fB@GRAPH_NAME\fP in the \fImonitorix.conf\fP configuration file.
+.TP
+\fB\-v\fR
+Displays version information.
+.SH SIGNALS
+On receipt of a SIGHUP, \fBmonitorix\fP will close and reopen its log file. This is useful in scripts which rotate and age log files.
+.P
+Note that the configuration file is not re-read. I plan to change this in future versions.
+.SH FILES
+The following is the set of the special files created on every startup:
+.TP 41
+\fB$BASE_DIR/cgi-bin/monitorix.conf.path\fP
+stores the path of \fIconfigfile\fP.
+.TP 41
+\fB$BASE_DIR/cgi-bin/monitorix.hplog\fP
+stores the output of \fIhplog\fP.
+.TP 41
+\fB$BASE_DIR/index.html\fP
+HTML main page.
+.SH AUTHOR
+Monitorix is written by Jordi Sanfeliu <jordi@fibranet.cat>
+.SH COPYRIGHT
+Copyright \(co 2005-2012 Jordi Sanfeliu
+.br
+Licensed under the GNU General Public License v2 (GPL).
+.SH "SEE ALSO"
+.BR monitorix.conf (5)
View
7,005 monitorix
7,005 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
13,765 monitorix.cgi
13,765 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
1,022 monitorix.conf
@@ -0,0 +1,1022 @@
+#!/usr/bin/perl
+#
+# Monitorix - configuration file
+# Copyright (C) 2005-2012 by Jordi Sanfeliu <jordi@fibranet.cat>
+#
+# Please be careful when touching this file taking special attention to
+# not break some Perl basic syntax.
+#
+# See monitorix.conf(5) manpage for a detailed information of each option.
+#
+
+use strict;
+
+our $TITLE = "Place a Title Here";
+our $HOSTNAME = "";
+our $THEME_COLOR = "black";
+our $REFRESH_RATE = "150";
+our $IFACE_MODE = "graph";
+our $ENABLE_ZOOM = "Y";
+our $NETSTATS_IN_BPS = "N";
+our $DISABLE_JAVASCRIPT_VOID = "N";
+
+our $BASE_DIR = "/usr/share/monitorix/";
+our $BASE_LIB = "/var/lib/monitorix/";
+our $BASE_URL = "/monitorix";
+our $BASE_CGI = "/monitorix-cgi";
+
+
+# Log files pathnames
+# -----------------------------------------------------------------------------
+our $LOG_FILE = "/var/log/monitorix";
+our $SECURE_LOG = "/var/log/secure";
+our $MAIL_LOG = "/var/log/maillog";
+our $MILTER_GL = "/var/milter-greylist/greylist.db";
+our $IMAP_LOG = "/var/log/imap";
+our $HYLAFAX_LOG = "/var/spool/hylafax/etc/xferfaxlog";
+our $CUPS_LOG = "/var/log/cups/page_log";
+our $FAIL2BAN_LOG = "/var/log/fail2ban.log";
+our $SPAMASSASSIN_LOG = "/var/log/maillog";
+our $CLAMAV_LOG = "/var/log/clamav/clamav.log";
+our $CG_LOGDIR = "/var/CommuniGate/SystemLogs/";
+our $SQUID_LOG = "/var/log/squid/access.log";
+
+our $IMAP_DATE_LOG_FORMAT = "%b %d";
+
+
+# Alert capabilities
+# -----------------------------------------------------------------------------
+our $ENABLE_ALERTS = "N";
+our $ALERT_LOADAVG_TIMEINTVL = "3600";
+our $ALERT_LOADAVG_THRESHOLD = "5.0";
+our $ALERT_LOADAVG_SCRIPT = "/path/to/script.sh";
+
+our $ALERT_ROOTFS_TIMEINTVL = "3600";
+our $ALERT_ROOTFS_THRESHOLD = "100";
+our $ALERT_ROOTFS_SCRIPT = "/path/to/script.sh";
+
+
+# Graphs (de)activation
+# -----------------------------------------------------------------------------
+our %GRAPH_ENABLE = (
+ "system" => "Y",
+ "kern" => "Y",
+ "proc" => "Y",
+ "hptemp" => "N",
+ "lmsens" => "N",
+ "nvidia" => "N",
+ "disk" => "N",
+ "fs" => "Y",
+ "net" => "Y",
+ "serv" => "Y",
+ "mail" => "N",
+ "port" => "Y",
+ "user" => "Y",
+ "apache" => "N",
+ "nginx" => "N",
+ "lighttpd" => "N",
+ "mysql" => "N",
+ "squid" => "N",
+ "nfss" => "N",
+ "nfsc" => "N",
+ "bind" => "N",
+ "ntp" => "N",
+ "fail2ban" => "N",
+ "icecast" => "N",
+ "int" => "Y",
+);
+
+
+# SYSTEM graph
+# -----------------------------------------------------------------------------
+our $SYSTEM1_RIGID = "1";
+our $SYSTEM1_LIMIT = "1";
+our $SYSTEM2_RIGID = "0";
+our $SYSTEM2_LIMIT = "100";
+
+
+# KERNEL graph
+# -----------------------------------------------------------------------------
+our $KERN_GRAPH_MODE = "R";
+our $KERN1_RIGID = "2";
+our $KERN1_LIMIT = "100";
+our %KERN_DATA = (
+ "user" => "Y",
+ "nice" => "Y",
+ "sys" => "Y",
+ "iow" => "Y",
+ "irq" => "Y",
+ "sirq" => "Y",
+ "steal" => "Y",
+ "guest" => "Y",
+);
+
+
+# PROC graph
+# -----------------------------------------------------------------------------
+our $PROC_MAX = "4";
+our $PROC_PER_ROW = "2";
+our $PROC_SIZE = "medium";
+our $PROC_DATA = "Y";
+our $PROC_RIGID = "2";
+our $PROC_LIMIT = "100";
+
+
+# HPTEMP graph
+# -----------------------------------------------------------------------------
+our @HPTEMP_1 = (
+ "2",
+ "3",
+);
+our @HPTEMP_2 = (
+ "1",
+ "6",
+);
+our @HPTEMP_3 = (
+ "16",
+ "18",
+ "19",
+ "20",
+ "21",
+ "22",
+);
+
+
+# LMSENS graph
+# -----------------------------------------------------------------------------
+our %SENSORS_LIST = (
+ "CORE0" => "Core 0",
+ "CORE1" => "Core 1",
+ "MB0" => "M/B Temp",
+ "CPU0" => "CPU Temp",
+ "FAN0" => "fan1",
+ "FAN1" => "fan2",
+ "FAN2" => "fan3",
+ "VOLT0" => "VCore 1",
+ "VOLT1" => "VCore 2",
+ "VOLT2" => "\\+3.3V",
+ "VOLT3" => "\\+5V",
+ "VOLT4" => "\\+12V",
+ "VOLT5" => "\\-12V",
+ "VOLT6" => "\\-5V",
+ "VOLT7" => "Battery",
+ "GPU0" => "nvidia",
+);
+
+
+# NVIDIA graph
+# -----------------------------------------------------------------------------
+our $NVIDIA_MAX = 1;
+
+
+# DISK graph
+# -----------------------------------------------------------------------------
+our @DISK_LIST = (
+ [
+ "/dev/sda",
+ "/dev/sdb",
+ "/dev/sdc",
+ ],
+);
+
+
+# FS graph
+# -----------------------------------------------------------------------------
+our @FS_LIST = (
+ [
+ "/",
+ "swap",
+ "/boot",
+ ],
+);
+our %FS_DESC = (
+);
+our %FS_DEV = (
+);
+our $FS2_RIGID = "0";
+our $FS2_LIMIT = "1000";
+our $FS3_RIGID = "0";
+our $FS3_LIMIT = "1000";
+
+
+# NET graph
+# -----------------------------------------------------------------------------
+our @NET_LIST = (
+ "eth0",
+);
+our @NET_DESC = (
+ "FastEthernet LAN",
+);
+our @NET_RIGID = (
+ "0",
+);
+our @NET_LIMIT = (
+ "10000000",
+);
+our $NET_GATEWAY = "eth0";
+
+
+# SERV graph
+# -----------------------------------------------------------------------------
+our $SERV_MODE = "I";
+our $SERV1_RIGID = "0";
+our $SERV1_LIMIT = "1000";
+our $SERV2_RIGID = "0";
+our $SERV2_LIMIT = "1000";
+our $SERV3_RIGID = "0";
+our $SERV3_LIMIT = "1000";
+
+
+# MAIL graph
+# -----------------------------------------------------------------------------
+our $MAIL_MTA = "sendmail";
+our $MAIL_GREYLIST = "milter-greylist";
+our $MAIL1_RIGID = "0";
+our $MAIL1_LIMIT = "1";
+our $MAIL2_RIGID = "0";
+our $MAIL2_LIMIT = "1000";
+our $MAIL3_RIGID = "0";
+our $MAIL3_LIMIT = "1000";
+our $MAIL4_RIGID = "0";
+our $MAIL4_LIMIT = "1000";
+our $MAIL5_RIGID = "0";
+our $MAIL5_LIMIT = "1000";
+
+
+# PORT graph
+# -----------------------------------------------------------------------------
+our $PORT_MAX = "9";
+our $PORT_RULE = "24000";
+our @PORT_LIST = (
+ "25",
+ "21",
+ "80",
+ "22",
+ "110",
+ "139",
+ "3306",
+ "53",
+ "143",
+);
+our @PORT_NAME = (
+ "SMTP",
+ "FTP",
+ "HTTP",
+ "SSH",
+ "POP3",
+ "NETBIOS",
+ "MYSQL",
+ "DNS",
+ "IMAP",
+);
+our @PORT_PROT = (
+ "tcp",
+ "tcp",
+ "tcp",
+ "tcp",
+ "tcp",
+ "tcp",
+ "tcp",
+ "udp",
+ "tcp",
+);
+our @PORT_RIGID = (
+ "0",
+ "0",
+ "0",
+ "0",
+ "0",
+ "0",
+ "0",
+ "0",
+ "0",
+);
+our @PORT_LIMIT = (
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+ "1000",
+);
+
+
+# USER graph
+# -----------------------------------------------------------------------------
+our $USER1_RIGID = "0";
+our $USER1_LIMIT = "100";
+our $USER2_RIGID = "0";
+our $USER2_LIMIT = "100";
+our $USER3_RIGID = "0";
+our $USER3_LIMIT = "100";
+
+
+# APACHE graph
+# -----------------------------------------------------------------------------
+our @APACHE_LIST = (
+ "http://localhost/",
+);
+our $APACHE1_RIGID = "0";
+our $APACHE1_LIMIT = "100";
+our $APACHE2_RIGID = "2";
+our $APACHE2_LIMIT = "100";
+our $APACHE3_RIGID = "0";
+our $APACHE3_LIMIT = "100";
+
+
+# NGINX graph
+# -----------------------------------------------------------------------------
+our $NGINX_PORT = "80";
+our $NGINX_RULE = "24100";
+our $NGINX1_RIGID = "0";
+our $NGINX1_LIMIT = "100";
+our $NGINX2_RIGID = "0";
+our $NGINX2_LIMIT = "100";
+our $NGINX3_RIGID = "0";
+our $NGINX3_LIMIT = "100";
+
+
+# LIGHTTPD graph
+# -----------------------------------------------------------------------------
+our @LIGHTTPD_LIST = (
+ "http://localhost/",
+);
+our $LIGHTTPD1_RIGID = "0";
+our $LIGHTTPD1_LIMIT = "100";
+our $LIGHTTPD2_RIGID = "0";
+our $LIGHTTPD2_LIMIT = "100";
+our $LIGHTTPD3_RIGID = "0";
+our $LIGHTTPD3_LIMIT = "100";
+
+
+# MYSQL graph
+# -----------------------------------------------------------------------------
+our $MYSQL_CONN_TYPE = "Host";
+our @MYSQL_HOST_LIST = (
+ "localhost",
+);
+our @MYSQL_PORT_LIST = (
+ "3306",
+);
+our @MYSQL_USER_LIST = (
+ "",
+);
+our @MYSQL_PASS_LIST = (
+ "",
+);
+our @MYSQL_SOCK_LIST = (
+ "/var/lib/mysql/mysql.sock",
+);
+our $MYSQL1_RIGID = "0";
+our $MYSQL1_LIMIT = "100";
+our $MYSQL2_RIGID = "2";
+our $MYSQL2_LIMIT = "100";
+our $MYSQL3_RIGID = "0";
+our $MYSQL3_LIMIT = "100";
+our $MYSQL4_RIGID = "0";
+our $MYSQL4_LIMIT = "100";
+our $MYSQL5_RIGID = "0";
+our $MYSQL5_LIMIT = "100";
+our $MYSQL6_RIGID = "0";
+our $MYSQL6_LIMIT = "100";
+
+
+# SQUID graph
+# -----------------------------------------------------------------------------
+our $SQUID_CMD = "squidclient -h 127.0.0.1";
+our @SQUID_GRAPH_1 = (
+ "TCP_MISS",
+ "TCP_DENIED",
+ "TCP_REFRESH_HIT",
+ "TCP_IMS_HIT",
+ "TCP_HIT",
+ "TCP_REFRESH_MISS",
+ "TCP_MEM_HIT",
+ "TCP_NEGATIVE_HIT",
+ "TCP_CLIENT_REFRESH_MISS",
+);
+our @SQUID_GRAPH_2 = (
+ "200",
+ "403",
+ "304",
+ "204",
+ "302",
+ "000",
+ "404",
+ "301",
+ "206",
+);
+our $SQUID1_RIGID = "0";
+our $SQUID1_LIMIT = "100";
+our $SQUID2_RIGID = "0";
+our $SQUID2_LIMIT = "100";
+our $SQUID3_RIGID = "0";
+our $SQUID3_LIMIT = "100";
+our $SQUID4_RIGID = "0";
+our $SQUID4_LIMIT = "100";
+our $SQUID5_RIGID = "0";
+our $SQUID5_LIMIT = "100";
+our $SQUID6_RIGID = "0";
+our $SQUID6_LIMIT = "100";
+our $SQUID7_RIGID = "0";
+our $SQUID7_LIMIT = "100";
+our $SQUID8_RIGID = "0";
+our $SQUID8_LIMIT = "100";
+our $SQUID9_RIGID = "0";
+our $SQUID9_LIMIT = "100";
+
+
+# NFSS graph
+# -----------------------------------------------------------------------------
+our $NFSS_VERSION = "3";
+our @NFSS_GRAPH_1 = (
+ "readlink",
+ "create",
+ "mkdir",
+ "symlink",
+ "rmdir",
+ "remove",
+ "rename",
+ "link",
+ "readdir",
+);
+our @NFSS_GRAPH_2 = (
+ "mknod",
+ "readdirplus",
+ "fsstat",
+ "fsinfo",
+ "pathconf",
+ "access",
+ "lookup",
+ "commit",
+ "null",
+);
+our @NFSS_GRAPH_3 = (
+ "read",
+ "write",
+ "getattr",
+ "setattr",
+);
+our $NFSS1_RIGID = "0";
+our $NFSS1_LIMIT = "100";
+our $NFSS2_RIGID = "0";
+our $NFSS2_LIMIT = "100";
+our $NFSS3_RIGID = "0";
+our $NFSS3_LIMIT = "100";
+our $NFSS4_RIGID = "0";
+our $NFSS4_LIMIT = "100";
+our $NFSS5_RIGID = "0";
+our $NFSS5_LIMIT = "100";
+our $NFSS6_RIGID = "0";
+our $NFSS6_LIMIT = "100";
+our $NFSS7_RIGID = "0";
+our $NFSS7_LIMIT = "100";
+our $NFSS8_RIGID = "0";
+our $NFSS8_LIMIT = "100";
+our $NFSS9_RIGID = "0";
+our $NFSS9_LIMIT = "100";
+
+
+# NFSC graph
+# -----------------------------------------------------------------------------
+our $NFSC_VERSION = "3";
+our @NFSC_GRAPH_1 = (
+ "readlink",
+ "create",
+ "mkdir",
+ "symlink",
+ "rmdir",
+ "remove",
+ "rename",
+ "link",
+ "readdir",
+);
+our @NFSC_GRAPH_2 = (
+ "mknod",
+ "readdirplus",
+ "fsstat",
+ "fsinfo",
+ "pathconf",
+);
+our @NFSC_GRAPH_3 = (
+ "read",
+ "write",
+);
+our @NFSC_GRAPH_4 = (
+ "getattr",
+ "setattr",
+);
+our @NFSC_GRAPH_5 = (
+ "access",
+ "lookup",
+ "commit",
+ "null",
+);
+our $NFSC1_RIGID = "0";
+our $NFSC1_LIMIT = "100";
+our $NFSC2_RIGID = "0";
+our $NFSC2_LIMIT = "100";
+our $NFSC3_RIGID = "0";
+our $NFSC3_LIMIT = "100";
+our $NFSC4_RIGID = "0";
+our $NFSC4_LIMIT = "100";
+our $NFSC5_RIGID = "0";
+our $NFSC5_LIMIT = "100";
+our $NFSC6_RIGID = "0";
+our $NFSC6_LIMIT = "100";
+
+
+# BIND graph
+# -----------------------------------------------------------------------------
+our @BIND_URL_LIST = (
+ "http://localhost:8053/",
+);
+our @BIND_IN_QUERIES_LIST = (
+ [
+ "A",
+ "AAAA",
+ "ANY",
+ "DS",
+ "MX",
+ "NS",
+ "PTR",
+ "SOA",
+ "SRV",
+ "TXT",
+ "NAPTR",
+ "A6",
+ "CNAME",
+ "SPF",
+ "KEY",
+ "DNSKEY",
+ "HINFO",
+ "WKS",
+ "PX",
+ "NSAP",