Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

monitorix.conf(5) [linux man page]

monitorix.conf(5)					   Monitorix configuration file 					 monitorix.conf(5)

NAME
monitorix.conf - Configuration file for Monitorix. SYNOPSIS
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 on 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 sys- tem 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 alternate locations: /etc/monitorix.conf and /usr/local/etc/monitorix.conf. DESCRIPTION
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. CONFIGURATION OPTIONS
Because this file follows the Perl syntax, you will find different type of options (scalar or normal variables, arrays and associative arrays), each one prefixed with $, @ and % respectively. This is important to keep in mind as the prefix symbols indicate what type of val- ues each option accepts. Remember to enclose all values with double quotes. TITLE A description of the server, where it is located, the Company name, etc. Default value: Place a Title Here HOSTNAME The name of the host. Default value: none THEME_COLOR RRDtool comes with a default white theme, and since Monitorix introduces its own black theme, you have two predefined themes to choose from. Default value: black REFRESH_RATE The refresh rate (in seconds) of the statistics web page displayed in your browser. If set to 0, page refreshing is disabled. Default value: 150 IFACE_MODE The interface mode defines the manner in which data is shown in the browser. Since version 1.4.0 it has been possible to display the graphic data using plain text tables. This allows Monitorix to be used by those running screen reader software, and also simplifies automatic data processing through scripts. The possible values are: graph for rendered graphs text for plain text representation Default value: graph ENABLE_ZOOM Zoom allows double clicking any graph in order to see a larger version (zoomed in). This is especially useful for seeing additional detail. Default value: Y NETSTATS_IN_BPS This option toggles network values between bits and bytes per second. Default value: N DISABLE_JAVASCRIPT_VOID This option enables or disables the use of use javascript:void-URLs when opening windows with zoomed graphs. Some people likes to open links in the background by pressing the middle mouse button in Firefox, and with the default javascript:void-URLs the only they get is an empty window with nothing in it. Default value: N BASE_DIR This is the absolute path to the directory where all the web elements are located: cgi-bin/ monitorix.cgi script directory imgs/ .png graph images directory index.html Monitorix main page logo_bot.png Monitorix bottom logo logo_top.png Monitorix top logo monitorixico.png Monitorix favicon logo Default value: /usr/share/monitorix/ (depends on the operating system) BASE_LIB This is the absolute path to the directory where all of the monthly reports, daily traffic usage, and RRD files are located: reports/ monthly reports localization directory usage/ daily traffic usage data directory *.rrd RRD files Default value: /var/lib/monitorix/ (depends on the operating system) BASE_URL This is the URL prefix that Monitorix utilizes when refering to its own pages and files. Default value: /monitorix BASE_CGI This is the URL prefix that Monitorix utilizes when refering to monitorix.cgi. Default value: /monitorix-cgi LOG_FILE This is the path to the Monitorix log file. Please check this file periodically and especially after every update to confirm proper operation. Default value: /var/log/monitorix SECURE_LOG This is the path to the system log (also known as secure, auth.log, etc.) Monitorix uses this file to report SSH, POP3, FTP and Tel- net successful logins. Default value: /var/log/secure MAIL_LOG This is the path to the mail log file. Monitorix uses this file to report messages sent (supporting Sendmail and Postfix formats), and the MailScanner log format for spam-mail and virus-mail alerts. Default value: /var/log/maillog MILTER_GL This is the path to the dump file of milter-greylist. Default value: /var/lib/milter-greylist/db/greylist.db IMAP_LOG This is the path to the IMAP (Dovecot or UW-IMAP) log file. Monitorix uses this file to report IMAP and POP3 successful logins. Default value: /var/log/imap HYLAFAX_LOG This is the path to the Hylafax log file. Monitorix uses this file to report successful FAX dispatches. Default value: /var/spool/hylafax/etc/xferfaxlog CUPS_LOG This is the path to the CUPS page log file. Monitorix uses this file to report on print jobs. Default value: /var/log/cups/page_log FAIL2BAN_LOG This is the path to the Fail2ban log file. Monitorix uses this file to report IP addresses banned. Default value: /var/log/fail2ban.log SPAMASSASSIN_LOG This is the path to the Spamassassin log file. Monitorix uses this file to report spam-mail alerts. Default value: /var/log/maillog CLAMAV_LOG This is the path to the Clamav log file. Monitorix uses this file to report virus-mail alerts. Default value: /var/log/clamav/clamav.log CG_LOGDIR This is the path to the CommuniGate logs directory. Monitorix uses these files to report the number of mail messages successfully received and sent, and to report IMAP and POP3 successful logins. Default value: /var/CommuniGate/SystemLogs/ SQUID_LOG This is the path to the Squid log file. Monitorix uses this file to report on Squid Proxy requests. Default value: /var/log/squid/access.log IMAP_DATE_LOG_FORMAT This is the Dovecot date format as it appears in the IMAP_LOG file. Default value: %b %d ENABLE_ALERTS This enables or disables the alert capabilities that were introduced in Monitorix version 1.4.0. Only two alerts are currently implemented; one for the average CPU load and one for the root filesystem disk use. They work as follows: The CPU load average uses the third value (the one that represents the last 15 minutes of load average), and if it reaches the ALERT_LOADAVG_THRESHOLD value for the interval of time defined in ALERT_LOADAVG_TIMEINTVL, Monitorix will execute the external alert script defined in ALERT_LOADAVG_SCRIPT. For the root filesystem disk use, if the percentage of disk space used reaches the ALERT_ROOTFS_THRESHOLD value for the interval of time defined in ALERT_ROOTFS_TIMEINTVL, Monitorix will execute the external alert script defined in ALERT_ROOTFS_SCRIPT. The default Monitorix installation includes an example alert shell-script called monitorix-alert.sh which you can use as a base for your own script. Default value: N ALERT_LOADAVG_TIMEINTVL This is the period of time (in seconds) that the threshold needs to be exceeded before the external alert script is executed. Default value: 3600 ALERT_LOADAVG_THRESHOLD This is the value that needs to be reached or exceeded within the specified time period in ALERT_LOADAVG_TIMEINTVL to trigger the mechanism for a particular action, which in this case is the execution of an external alert script. The value of this option is compared against the last 15 minutes of CPU load average. Default value: 5.0 ALERT_LOADAVG_SCRIPT This is the full path name of the script that will be executed by this alert. It will receive the following three parameters: 1st - the value currently defined in ALERT_LOADAVG_TIMEINTVL 2nd - the value currently defined in ALERT_LOADAVG_THRESHOLD 3rd - the current 15min CPU load average Default value: /path/to/script.sh ALERT_ROOTFS_TIMEINTVL This is the period of time (in seconds) that the threshold needs to be exceeded before the external alert script is executed. Default value: 3600 ALERT_ROOTFS_THRESHOLD This is the value that needs to be reached or exceeded within the specified time period in ALERT_ROOTFS_TIMEINTVL to trigger the mechanism for a particular action, which in this case is the execution of an external alert script. The value of this option is compared to the current root filesystem disk usage. Default value: 100 ALERT_ROOTFS_SCRIPT This is the full path name of the script that will be executed by this alert. It will receive the following three parameters: 1st - the value currently defined in ALERT_ROOTFS_TIMEINTVL 2nd - the value currently defined in ALERT_ROOTFS_THRESHOLD 3rd - the current root filesystem disk usage Default value: /path/to/script.sh GRAPH_ENABLE This enables or disables the monitoring of each graph. Placing a Y on a desired graph and restarting Monitorix will automatically create the RRD file for that graph and start gathering information according to its settings. System load average and usage (system.rrd) Only the limit and rigid values may be set here. Global kernel usage (kern.rrd) KERN_GRAPH_MODE This changes the layout of the kernel usage graph, the possible values are R for a real graph, or S for a stacked graph (every line or area is stacked on top of the previous element). Default value: R KERN_DATA This is the list of values offered in modern Linux kernels. Older Linux kernels or other Operating Systems may not have all of them. Placing a Y or an N will enable or disable the value in the graph. Kernel usage per processor (proc.rrd) PROC_MAX This is the number of processors or cores that your system has. There is no limit, however keep in mind that every time this number is changed Monitorix will resize the proc.rrd file accordingly, removing all historical data. Default value: 4 PROC_PER_ROW This is the number of processor graphs that will be put in a row. Consider the interaction of this parameter with the PROC_SIZE and PROC_DATA options (below) in order to adjust the size and number of graphs in relation to your horizontal screen size. Default value: 2 PROC_SIZE This option sets the size of all processors graphs. The possible values are: main for 450x150 graphs medium for 325x150 graphs medium2 for 325x70 graphs small for 200x66 graphs mini for 183x66 graphs tiny for 110x40 graphs Default value: medium PROC_DATA This option will completely enable or disable the legend in the processor graphs. Default value: Y HP ProLiant System Health (hptemp.rrd) HPTEMP_1 HPTEMP_2 HPTEMP_3 These arrays will hold the defined temperature sensors for each graph. You must have installed the latest version of hplog that comes with HP ProLiant System Health Application and Command Line Utilities. Each graph has a limited number of IDs: HPTEMP_1 up to 8 IDs HPTEMP_2 up to 6 IDs HPTEMP_3 up to 6 IDs The following is a configuration example of selected IDs: # hplog -t ID TYPE LOCATION STATUS CURRENT THRESHOLD 1 Basic Sensor Ambient Normal 75F/ 24C 107F/ 42C 2 Basic Sensor CPU (1) Normal 104F/ 40C 179F/ 82C 3 Basic Sensor CPU (2) Normal ---F/---C 179F/ 82C 4 Basic Sensor Memory Board Normal ---F/---C 188F/ 87C 5 Basic Sensor Memory Board Normal 82F/ 28C 188F/ 87C 6 Basic Sensor Memory Board Normal ---F/---C 188F/ 87C 7 Basic Sensor System Board Normal 89F/ 32C 192F/ 89C 8 Basic Sensor System Board Normal ---F/---C 192F/ 89C 9 Basic Sensor System Board Normal 84F/ 29C 192F/ 89C 10 Basic Sensor System Board Normal 118F/ 48C 230F/110C 11 Basic Sensor System Board Normal 96F/ 36C 192F/ 89C 12 Basic Sensor System Board Normal 84F/ 29C 154F/ 68C 13 Basic Sensor System Board Normal 87F/ 31C 154F/ 68C 14 Basic Sensor System Board Normal 89F/ 32C 156F/ 69C 15 Basic Sensor System Board Normal 93F/ 34C 161F/ 72C 16 Basic Sensor Ambient Normal ---F/---C 192F/ 89C 17 Basic Sensor System Board Normal ---F/---C 192F/ 89C 18 Basic Sensor SCSI Backplane Normal 32F/ 0C 140F/ 60C our @HPTEMP_1 = ( "2", "3", ); our @HPTEMP_2 = ( "1", "5", "18", ); our @HPTEMP_3 = ( "7", "9", "10", "11", "12", "13", ); LM-Sensors and GPU temperatures (lmsens.rrd) SENSORS_LIST You may specify in this associative array the sensors you want to monitor with the same names as they appear in your sensors com- mand. For example, imagine a sensors output like this: # sensors coretemp-isa-0000 Adapter: ISA adapter Core 0: +51.0oC (high = +78.0oC, crit = +100.0oC) coretemp-isa-0001 Adapter: ISA adapter Core 1: +49.0oC (high = +78.0oC, crit = +100.0oC) f71882fg-isa-0a00 Adapter: ISA adapter 3.3V: +3.30 V Vcore: +1.21 V (max = +2.04 V) Vdimm: +1.82 V Vchip: +1.38 V +5V: +5.00 V 12V: +14.37 V 5VSB: +4.33 V 3VSB: +3.30 V Battery: +3.22 V CPU: 2035 RPM System: 1765 RPM ALARM Power: 2110 RPM ALARM Aux: 2080 RPM ALARM M/B Temp: +36.00 C CPU Temp: +29.00 C Then you may want to configure the SENSORS_LIST associative array as: our %SENSORS_LIST = ( "CORE0" => "Core 0", "CORE1" => "Core 1", "MB0" => "M/B Temp", "CPU0" => "CPU Temp", "FAN0" => "CPU", "FAN1" => "System", "FAN2" => "Power", "FAN3" => "Aux", "VOLT0" => "3.3V", "VOLT1" => "VCore", "VOLT2" => "Vdimm", "VOLT3" => "Vchip", "VOLT4" => "\+5V", "VOLT5" => "12V", "VOLT6" => "5VSB", "VOLT7" => "3VSB", "VOLT8" => "Battery", "GPU0" => "nvidia", ); Note that you need to precede the plus and minus signs in the voltage labels with double forward slashes. The last one, GPU0, is set here just in case you have an NVIDIA card and want to monitor its temperature. Currently only NVIDIA cards are supported so the value nvidia is mandatory. This array has the following maximums allowed: Up to 16 CORE keys Up to 2 MB keys Up to 4 CPU keys Up to 9 FAN keys Up to 12 VOLT keys Up to 9 GPU keys NVIDIA temperatures and usage (nvidia.rrd) NVIDIA_MAX This is the number of NVIDIA cards currently plugged in your system. The maximum allowed is 9. Default value: 1 Disk drive temperatures and health (disk.rrd) This graph is able to monitor an unlimited number of disk drives. DISK_LIST This is a two-dimensional array of groups of disk device names that you want to monitor. Each group will become a graph and there may be an unlimited number of groups. WARNING: Every time the number of groups in this list changes, Monitorix will resize the disk.rrd file accordingly, removing all historical data. To collect the disk drive temperatures and health the commands smartmontools or hddtemp are required. It is recommended that you first check if either smartctl or hddtemp are able to collect data from the disk drive(s) that you plan to monitor. You may test this with the following command: # hddtemp /dev/sda /dev/sda: WDC WD1600AABS-00M1A0: 48oC If you see good results as above, you can add it in the list like this: our @DISK_LIST = ( [ "/dev/sda", "/dev/sdb", ], ); The maximum number of disk device names allowed per group is 8. Filesystem usage and I/O activity (fs.rrd) This graph is able to monitor an unlimited number of filesystems. FS_LIST This is a two-dimensional array of groups of mounted filesystems that you want to monitor. Each group will become a graph and there may be an unlimited number of groups. WARNING: Every time the number of groups in this list changes, Monitorix will resize the fs.rrd file accordingly, removing all his- torical data. Take special care to use the same name as appears in the output of the df command (the swap device is a special case). An example would be: our @FS_LIST = ( [ "/", "swap", "/boot", "/home", "/mnt/backup", ], ); The maximum number of filesystems allowed per group is 8. FS_DESC This associative array complements the FS_LIST array. It basically allows you to change the name that will appear in the graph, hid- ing the real name of the mount point. If no association is defined, then Monitorix will display the name specified in the FS_LIST array. our %FS_DESC = ( "/" => "Root FS", "/home" => "My Home", "/mnt/backup" => "Backups", ); You can define as much entries as you want. FS_DEV This associative array complements the FS_LIST array. Monitorix tries itself to detect automatically the device name associated to each filesystem defined in the FS_LIST array to show its I/O activity. If you feel Monitorix failed to detect it then you can help it using this associative array. our %FS_DEV = ( "/" => "/dev/sda1", "/home" => "/dev/mapper/dm-0", "/mnt/backup" => "/dev/mapper/dm-1", ); You can define as much entries as you want. Network traffic and usage (net.rrd) NET_LIST This is the list of network interfaces that you may want to monitor. An example would be: our @NET_LIST = ( "eth0", "eth1", ); The maximum number of entries allowed is 10. NET_DESC This is the array where each network interface listed in NET_LIST is described. Put one description for each interface listed. An example would be: our @NET_DESC = ( "FastEthernet LAN", "ADSL 10Mbs Internet", ); The maximum number of entries allowed is 10. NET_RIGID This is the location where the scaling of the network graph can be specified. The possible values are: 0 No rigid actually, no lower-limit and no upper-limit. 1 No rigid actually, but with lower-limit and upper-limit. 2 Rigid with lower-limit and upper-limit. There must be an entry here for each network interface listed in NET_LIST. An example would be: our @NET_RIGID = ( "0", "2", ); The maximum number of entries allowed is 10. NET_LIMIT This is where you can enter the upper value limit for the graph. Since Monitorix uses bytes/s instead of bits/s, the value entered here must be in bytes. Remember to put an entry here for each network interface listed in NET_LIST. Following the description of the above example, it would be: our @NET_LIMIT = ( "10000000", "1000000", ); That is: "Fast Ethernet LAN" means 100Mb/s, which means ~10MB/s which means 10000000 bytes. and "ADSL 10Mb Internet" means 10Mb/s, which means ~1MB/s which means 1000000 bytes. The maximum number of entries allowed is 10. NET_GATEWAY This is where the network interface that acts as the gateway for this server is defined. This is mainly used if you plan to monitor the network traffic usage of the PCs on your LAN using the PC_LIST option below. System services demand (serv.rrd) SERV_MODE This option toggles the way the System Services Demand data is represented in the graph. There are two possible values: I for incremental style L for load (spikes) style Default value: I Mail statistics (mail.rrd) MAIL_MTA This option specifies the MTA that Monitorix will use to collect mail statistics. The currently supported MTAs are: Sendmail Postfix NOTE: the pflogsumm utility is required when using Postfix MTA. Default value: sendmail MAIL_GREYLIST This option specifies the Greylisting implementation that Monitorix will use to collect statistical information. In the future more Greylisting software will be supported. The currently supported Greylist software is: milter-greylist Default value: milter-greylist Network port traffic (port.rrd) This graph requires the iptables command on Linux systems, and the ipfw command on FreeBSD and OpenBSD systems. PORT_MAX This is the number of network ports that you want to monitor. There is no limit to the number of ports monitored, but keep in mind that every time this number changes, Monitorix will resize the port.rrd file accordingly, removing all historical data. Default value: 9 PORT_RULE This is the rule number that Monitorix will use when using the ipfw command to manage network port activity on FreeBSD and OpenBSD systems. Change it if you think it might conflict with any other rule number. Default value: 24000 PORT_LIST You may define here up to PORT_MAX network port numbers. If you see a red color in the background of a network port graph, it means that there is not a daemon listening on that port. This can be useful to know if some service gone down unexpectedly. PORT_NAME This array complements the PORT_LIST array. Each option pairs with the one in the same position of the array. It basically permits naming network ports. PORT_PROT This array complements the PORT_LIST array. Each option pairs with the one in the same position of the array. It permits defining the protocol type to be used in the traffic reporting. The protocol type must be valid and supported by your system. Users using the system (user.rrd) Only the limit and rigid values may be set here. Apache statistics (apache.rrd) This graph requires that mod_status be loaded and ExtendedStatus option set to On in order to collect full status information of the Apache web server. This graph is able to monitor an unlimited number of local and remote Apache web servers. APACHE_LIST This is a list of URLs of the monitored Apache web servers. WARNING: Every time the number of entries in this list changes, Monitorix will resize the apache.rrd file accordingly, removing all historical data. Default value: http://localhost:80/ Nginx statistics (nginx.rrd) This graph may require adding some lines in the configuration file nginx.conf. Please see the README.nginx file to determine the exact steps needed to configure Nginx to get status information. This graph requires the iptables command on Linux systems, and the ipfw command on FreeBSD and OpenBSD systems. NGINX_PORT This is the network port the Nginx web server is listening on. Default value: 80 NGINX_RULE This is the rule number that Monitorix will use when using the ipfw command to manage Nginx network activity on FreeBSD and OpenBSD systems. Change it if you think it might conflict with any other rule number. Default value: 24100 Lighttpd statistics (lighttpd.rrd) This graph requires that mod_status is loaded in order to collect status information from the Lighttpd web server. This graph is able to monitor an unlimited number of local and remote Lighttpd web servers. LIGHTTPD_LIST This is a list of URLs of the monitored Lighttpd web servers. WARNING: Every time the number of entries of this list changes, Monitorix will resize the lighttpd.rrd file accordingly, removing all historical data. Default value: http://localhost:80/ MySQL statistics (mysql.rrd) This graph requires that you create a password protected MySQL user that is NOT granted privileges on any DB. Example: mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'password'; mysql> FLUSH PRIVILEGES; where user is the new user name and password is the password that will be used for that user. This graph is able to monitor an unlimited number of local and remote MySQL web servers. NOTE: It is strongly recommended that you restart the MySQL service in order to avoid high spikes that could prevent correct display of the first plotted data. MYSQL_CONN_TYPE This option toggles the way how Monitorix establishes the connection with the MySQL server. There are two possible values: Host using the network (hostname and IP address) Socket using a socket file Default value: Host MYSQL_HOST_LIST This is the list of hostnames of MySQL servers. WARNING: Every time the number of entries of this list change Monitorix will resize the mysql.rrd file accordingly, removing all historical data. Default value: localhost MYSQL_PORT_LIST This is the TCP port number to use for the connection of each hostname listed in the MYSQL_HOST_LIST. Default value: 3306 MYSQL_USER_LIST This is the user name used to connect to each hostname listed in the MYSQL_HOST_LIST. See the example above. Default value: none MYSQL_PASS_LIST This is the password used to connect to each hostname listed in the MYSQL_HOST_LIST. See the example above. Default value: none MYSQL_SOCK_LIST This is the list of socket files of MySQL servers. WARNING: Every time the number of entries of this list change Monitorix will resize the mysql.rrd file accordingly, removing all historical data. Default value: /var/lib/mysql/mysql.sock Some of the values shown in the graphs are the result of a calculation of two values from either SHOW [GLOBAL] STATUS or SHOW VARIABLES. The following is an explanation of them: Thread Cache Hit Rate (1 - (Threads_created / Connections)) * 100 When an application connects to a MySQL database, the database has to create a thread to manage the connection and the queries that will be sent in that connection. The database instructs the kernel to create a new thread, and the kernel allocates resources and creates the thread, then returns it to the MySQL service. When the connection is terminated by the application, MySQL tells the kernel to destroy the thread and free the resources. This create/destroy mechanism causes considerable overhead if the MySQL server has many new connections per second. If MySQL doesn't destroy the thread when the connection is terminated, but reuses it and assigns it to the next connection then this will decrease the kernel overhead. This is why a high Thread Cache Hit Rate improves MySQL performance and decreases the system's CPU usage. Setting the parameter thread_cache_size in the my.cnf file accordingly will help to correctly balance between having a great thread cache and keeping MySQL memory consumption reasonable. Higher is better. Query Cache Hit Rate Qcache_hits / Qcache_inserts Higher should be considered better. This value should grow proportionally with the number of executed queries, if the query cache is per- forming well. Please also have a look at the Query cache usage percentage to know if your query_cache configuration is appropriate. Query Cache Usage (1 - (Qcache_free_memory / query_cache_size)) * 100 This value should be reasonably far from 100%, otherwise consider incrementing the query_cache_size parameter in my.cnf. Connections Usage (Max_used_connections / max_connections) * 100 This value should be reasonably far from 100%, otherwise consider incrementing the max_connections parameter in my.cnf. Key Buffer Usage (Key_blocks_used / (Key_blocks_used + Key_blocks_unused)) * 100 This value should be reasonably far from 100%, otherwise consider incrementing the key_buffer_size parameter in my.cnf. InnoDB Buffer Pool Usage (1 - (Innodb_buffer_pool_pages_free / Innodb_buffer_pool_pages_total)) * 100 This value should be reasonably far from 100%, otherwise consider incrementing the innodb_buffer_pool_size parameter in my.cnf. Squid Proxy Web Cache (squid.rrd) SQUID_CMD This command displays statistics about the Squid HTTP proxy process and is the main command used to collect all data. Default value: squidclient -h 127.0.0.1 SQUID_GRAPH_1 SQUID_GRAPH_2 These arrays hold the selected Squid result or status codes to be shown in each graph. Feel free to mix result status and code sta- tus in any of the two arrays. For more information about the list of all the result and status codes, please refer to http://wiki.squid-cache.org/SquidFaq/Squid- Logs. Each graph has a limit number of 9 entries. NFS server statistics (nfss.rrd) NFSS_VERSION This option specifies which NFS server version is running in the system in order to correctly gather the correct values. The possible values are: 2 for NFS version 2 3 for NFS version 3 4 for NFS version 4 Default value: 3 NFSS_GRAPH_1 NFSS_GRAPH_2 NFSS_GRAPH_3 These arrays hold the defined NFS server activity statistics to be shown in each graph. Put every statistic name exactly as they appear in the output of the nfsstat command. Each graph has a limit number of 10 entries. NFS client statistics (nfsc.rrd) NFSC_VERSION This option specifies which NFS server version is running in the system in order to correctly gather the correct values. The possible values are: 2 for NFS version 2 3 for NFS version 3 4 for NFS version 4 Default value: 3 NFSC_GRAPH_1 NFSC_GRAPH_2 NFSC_GRAPH_3 NFSC_GRAPH_4 NFSC_GRAPH_5 These arrays hold the defined NFS client activity statistics to be shown in each graph. Put every statistic name exactly as they appear in the output of the nfsstat command. Each graph has the following limit number of entries: NFSC_GRAPH_1 up to 10 entries NFSC_GRAPH_2 up to 10 entries NFSC_GRAPH_3 up to 4 entries NFSC_GRAPH_4 up to 4 entries NFSC_GRAPH_5 up to 4 entries BIND statistics (bind.rrd) This graph requires a BIND server with version 9.5 or higher, and in order to see all statistics provided by BIND you must configure the statistics-channels like this: statistics-channels { inet 127.0.0.1 port 8053; }; This graph is able to monitor an unlimited number of BIND servers. BIND_URL_LIST This is a list of URLs of BIND servers status pages. WARNING: Every time the number of entries in this list changes, Monitorix will resize the bind.rrd file accordingly, removing all historical data. Default value: http://localhost:8053/ BIND_IN_QUERIES_LIST This is a two-dimensional array of RR (Resource Records) types for each BIND server. The RR types defined here will appear in the Incoming Queries graph which shows the number of incoming queries for each RR type. For a complete list of RR types check the BIND 9 Administrator Reference Manual at <http://ftp.isc.org/www/bind/arm95/Bv9ARM.html>. 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", ], ); The maximum number of RR types allowed for this graph is 20. BIND_OUT_QUERIES_LIST This is a two-dimensional array of RR (Resource Records) types for each BIND server. The RR types defined here will appear in the Outgoing Queries graph (_default view) which shows the number of outgoing queries sent by the DNS server resolver for each RR type. our @BIND_OUT_QUERIES_LIST = ( [ "A", "AAAA", "ANY", "DS", "MX", "NS", "PTR", "SOA", "SRV", "TXT", "NAPTR", "A6", "CNAME", "SPF", "KEY", "DNSKEY", "HINFO", "WKS", "PX", "NSAP", ], ); The maximum number of RR types allowed for this graph is 20. BIND_SERVER_STATS_LIST This is a two-dimensional array of counters about incoming request processing. The counters defined here will appear in the Server Statistics graph. our @BIND_SERVER_STATS_LIST = ( [ "Requestv4", "Requestv6", "ReqEdns0", "ReqBadEDNSVer", "ReqTSIG", "ReqSIG0", "ReqBadSIG", "ReqTCP", "Response", "QrySuccess", "QryAuthAns", "QryNoauthAns", "QryReferral", "QryNxrrset", "QrySERVFAIL", "QryNXDOMAIN", "QryRecursion", "QryDuplicate", "QryDropped", "QryFailure", ], ); The maximum number of counters allowed for this graph is 20. BIND_RESOLVER_STATS_LIST This is a two-dimensional array of counters about name resolution performed in the internal resolver. The counters defined here will appear in the Resolver Statistics graph (_default view). our @BIND_RESOLVER_STATS_LIST = ( [ "Queryv4", "Queryv6", "Responsev4", "Responsev6", "NXDOMAIN", "SERVFAIL", "FORMERR", "OtherError", "EDNS0Fail", "Truncated", "Lame", "Retry", "QueryTimeout", "GlueFetchv4", "GlueFetchv6", "GlueFetchv4Fail", "GlueFetchv6Fail", "ValAttempt", "ValOk", "ValNegOk", ], ); The maximum number of counters allowed for this graph is 20. BIND_CACHE_RRSETS_LIST This is a two-dimensional array of RR (Resource Records) types for each BIND server. The RR types defined here will appear in the Cache DB RRsets graph (_default view) which shows the number of RRsets per RR type (positive or negative) and nonexistent names stored in the cache database. our @BIND_CACHE_RRSETS_LIST = ( [ "A", "!A", "AAAA", "!AAAA", "DLV", "!DLV", "DS", "!DS", "MX", "NS", "CNAME", "!CNAME", "SOA", "!SOA", "!ANY", "PTR", "RRSIG", "NSEC", "DNSKEY", "NXDOMAIN", ], ); The maximum number of RR types allowed for this graph is 20. NTP statistics (ntp.rrd) This graph is able to monitor an unlimited number of NTP servers. NTP_HOST_LIST This is a list of NTP servers. WARNING: Every time the number of entries in this list changes, Monitorix will resize the ntp.rrd file accordingly, removing all historical data. Default value: localhost NTP_CODE_LIST This is a two-dimensional array of group of Reference Identifier and Kiss-o'-Death Codes for every hostname specified in the NTP_HOST_LIST option. For more information on these NTP codes: <http://www.iana.org/assignments/ntp-parameters/ntp-parameters.xml> <http://www.iana.org/go/rfc5905> our @NTP_CODE_LIST = ( [ "AUTH", "AUTO", "CRYP", "DENY", "GPS", "INIT", "NKEY", "RATE", "RMOT", "RSTR", ], [ "DENY", "RMOT", "RSTR", ], ); The maximum number of codes allowed for each hostname is 10. Fail2ban statistics (fail2ban.rrd) This graph is able to monitor an unlimited number of Fail2ban jails. FAIL2BAN_PER_ROW This is the number of fail2ban graphs that will be put in a row. Default value: 2 FAIL2BAN_LIST This is a two-dimensional array of unlimited group of jails defined in your Fail2ban configuration. For every group specified there is the ability to specify a description in the FAIL2BAN_DESC array. WARNING: Every time the number of entries in this list changes, Monitorix will resize the fail2ban.rrd file accordingly, removing all historical data. our @FAIL2BAN_LIST = ( [ "[apache]", "[apache-mod-security]", "[courierauth]", "[sshd]", "[pam-generic]", "[php-url-fopen]", "[vsftpd]", ], [ "[apache-imdbphp]", "[apache-evasive]", ], ); The maximum number of jails allowed for each group is 9. FAIL2BAN_DESC This is the description of each group of jails in FAIL2BAN_LIST. Put one description for each group. An example would be: our @FAIL2BAN_DESC = ( "Security", "Overload / Abuse", ); Icecast Streaming Media Server (icecast.rrd) This graph is able to monitor an unlimited number of Icecast servers. ICECAST_URL_LIST This is a list of URLs of Icecast server status pages. WARNING: Every time the number of entries in this list changes, Monitorix will resize the icecast.rrd file accordingly, removing all historical data. Default value: http://localhost:8000/status.xsl ICECAST_MP_LIST This is a two-dimensional array of mountpoints configured for every URL specified in the ICECAST_URL_LIST option. our @ICECAST_MP_LIST = ( [ "/stream1", "/stream2", "/stream3", ], [ "/stream1", "/stream2", ], ); The maximum number of mountpoints allowed for each URL is 9. ICECAST_GRAPH_MODE This changes the layout of the listeners graph, the possible values are R for a real graph, or S for a stacked graph (every line or area is stacked on top of the previous element). Default value: R Devices interrupt activity (int.rrd) Only the limit and rigid values may be set here. Monitoring remote servers (Multihost) The Multihost feature allows you to monitor an unlimitted number of remote servers that already have Monitorix installed. Monitorix assumes that every remote server has been configured with the same settings in the BASE_URL and BASE_CGI options. Future versions may introduce the ability to have different configurations between local and remote servers. MULTIHOST This option enables the Multihost feature. Default value: N MULTIHOST_FOOTER If set to Y Monitorix will show the original URL of each server at the bottom of the graph. Where security is important you may want to hide this information. Default value: Y MULTIHOST_IMGS_PER_ROW If your horizontal screen resolution is pretty wide, you may want to increase the number of graphs that appear on each row. Default value: 2 REMOTEHOST_LIST This is a list of remote servers, with Monitorix already installed and working, that you plan to monitor from here. It consists of a series of name/value pairs with the right side being the URL or IP address and the left the server description. An example of this list would be: our @REMOTEHOST_LIST = ( "WWW Linux", "http://www.example.com", "Backup Linux", "http://192.168.1.4", "SMTP Linux", "http://71.16.11.2:8080", ); As you can see all three entries use URLs to designate the location of each remote server. This means that each server most also have been installed on a CGI capable web server like Apache. GROUPS This enables the server grouping for those environments where there are too much servers to display at the same time. Hence, you can group them in order to show them separatedly. Default value: N REMOTEGROUP_LIST This is a list of groups of remote servers, with Monitorix already installed and working, that you plan to monitor from here. It consists of a series of name/value pairs with the right side being the names of the remote servers given in REMOTEHOST_LIST (sepa- rated by a colon) and in the left the group name. An example of this list would be: our @REMOTEGROUP_LIST = ( "My Group", "Backup Linux:SMTP Linux", ); Monitoring the Internet traffic of LAN PCs, devices or whole networks If your server acts as the gateway for a group of PCs, devices or even whole networks in your local LAN, you may want to know much Internet traffic each one is generating. This graph requires the iptables command on Linux systems, and the ipfw command on FreeBSD and OpenBSD systems. The following are the options you will need to configure to accomplish all of this. PC_LAN This option enables this feature. Default value: N PC_MAX This is the number of LAN devices you want to monitor. There is no limit, but keep in mind that every time this number changes, Mon- itorix will resize its current pc.rrd file, removing all historical data. Default value: 10 PC_IMGS_PER_ROW If your horizontal screen resolution is pretty wide, you may want to increase the number of graphs that appear on each row. Default value: 2 PC_LIST This is the list of names of PCs, LAN devices or whole networks that you want to monitor. The only requirement is that all they must utilize this server as their gateway. If the names in this list are able to be resolved by a DNS query then you don't need to define the PC_IP list (below) with corre- sponding IP addresses. An example would be: our @PC_LIST = ( "pc8", "printer", "scanner", "lan3", ); PC_IP This is the list of IP addresses and network masks corresponding to the entries defined in the PC_LIST. This list is only used when the those entries are not resolvable through a DNS query. An example would be: our @PC_IP = ( "192.168.1.108/32", "192.168.1.122/32", "192.168.1.203/32", "192.168.2.0/24", ); PC_ENABLE_MONTHLY_REPORTS If this option is set to Y, Monitorix will send a report of all the monthly Internet activity of the defined devices in PC_LIST to the specified email address on the first day of each month. Default value: N PC_REPORT_LANG Define here the language used in the monthly report. The possible values are: ca, de, en, it and pl. Default value: en PC_DEFAULT_MAIL This is the default email address used to send the monthly reports. This option is only used if the PC_REPORT_MAIL array is empty. Default value: root@localhost PC_REPORT_MAIL This is the list of email addresses (one per entry) that corresponds to each name listed in the PC_LIST array. If this list is empty then the PC_DEFAULT_MAIL option will be used as the default email address for all the PCs. An example would be: our @PC_MAIL = ( "user1@example.com", "user2@example.com", "user3@example.com", "admin@example.com", ); AUTHOR
Monitorix is written by Jordi Sanfeliu <jordi@fibranet.cat> COPYRIGHT
Copyright (C) 2005-2012 Jordi Sanfeliu Licensed under the GNU General Public License v2 (GPL). SEE ALSO
monitorix(8), rrdtool(1) 2.6.0 Sep 2012 monitorix.conf(5)
Man Page