1monitorix.conf(5) Monitorix configuration file monitorix.conf(5)
2
3
4
6 monitorix.conf - Configuration file for Monitorix.
7
9 Monitorix is a free, open source, lightweight system monitoring tool
10 designed to monitor as many services and system resources as possible.
11 It has been created to be used on production Linux/UNIX servers, but
12 due to its simplicity and small size may also be used to monitor embed‐
13 ded devices as well.
14
15 It consists mainly of two programs: a collector, called monitorix,
16 which is a Perl daemon that is started automatically like any other
17 system service, and a CGI script called monitorix.cgi. Since 3.0 ver‐
18 sion Monitorix includes its own HTTP server built in, so you don't need
19 to install any web server to use it.
20
21 Every time monitorix is started it reads the configuration file from
22 the path specified in the command line (using the -c option), and once
23 checked, it creates the index.html file that will act as the Monitorix
24 main page.
25
26 It also creates a file called <base_dir>/cgi/monitorix.conf.path that
27 includes the absolute path of the configuration file. This file will be
28 read by monitorix.cgi to determine the exact location of the configura‐
29 tion file.
30
32 IMPORTANT NOTE: these options have default values that might vary de‐
33 pending on your operating system. Please check the configuration files
34 in /etc/monitorix/conf.d/.
35
36 Blank lines are ignored, and whitespace before and after a token or
37 value is ignored as well as tabulators, although a value can contain
38 whitespace within. Lines which begin with a # are considered comments
39 and ignored.
40
41 If you want to comment out a large block you can use C-style comments.
42 A /* signals the begin of a comment block and the */ signals the end of
43 the comment block.
44
45 If an option has multiple values their must be separated by comma.
46
47 title
48 A free description of the server; where it is located, the Com‐
49 pany name, etc.
50
51 Default value: Place a Title Here
52
53 hostname
54 The name of the host.
55
56 Default value:
57
58 theme_color
59 RRDtool comes with a default white theme, and since Monitorix
60 introduces its own black theme, you have two predefined themes
61 to choose from.
62
63 Default value: black
64
65 refresh_rate
66 The refresh rate (in seconds) of the statistics web page dis‐
67 played in your browser. If set to 0, page refreshing is dis‐
68 abled.
69
70 Default value: 150
71
72 iface_mode
73 The interface mode defines the manner in which data is shown in
74 the browser. Since version 1.4.0 it has been possible to display
75 the graphic data using plain text tables. This allows Monitorix
76 to be used by those running screen reader software, and also
77 simplifies automatic data processing through scripts.
78
79 The possible values are:
80 graph for rendered graphs.
81 text for plain text representation.
82
83 Default value: graph
84
85 enable_zoom
86 Zoom allows double clicking any graph in order to see a larger
87 version (zoomed in). This is especially useful for seeing addi‐
88 tional detail.
89
90 Default value: y
91
92 netstats_in_bps
93 This option toggles network values between bits (bps) and Bytes
94 (Bps) per second. By default the values will be shown in Bytes
95 per second (Bps).
96
97 Default value: n
98
99 netstats_mode
100 This option toggles network visualization mode between over‐
101 lapped (input and output values appear one in front the other)
102 and separated (input values appear on top and output values be‐
103 low, in negative).
104
105 Default value: overlapped
106
107 disable_javascript_void
108 This option enables or disables the use of javascript:void-URLs
109 when opening windows with zoomed graphs. Some people likes to
110 open links in the background by pressing the middle mouse button
111 in Firefox, and with the default javascript:void-URLs the only
112 they get is an empty window with nothing in it.
113
114 Default value: n
115
116 temperature_scale
117 This option toggles between values in Celsius or in Fahrenheit
118 in those graphs that represent temperatures.
119
120 The possible values are:
121 c for Celsius.
122 f for Fahrenheit.
123
124 Default value: c
125
126 show_gaps
127 This option, when enabled, shows the gaps (missing data) in the
128 graphs. This is specially useful to detect if the server or Mon‐
129 itorix were stopped for a while, or any other unavailability.
130
131 In order to be able to locate those gaps easily in each graph,
132 it uses the white color in the default black theme and the black
133 color in the white theme. These default colors are defined in
134 monitorix.conf so they can be changed as any other option.
135
136 Default value: n
137
138 global_zoom
139 This option zooms all the graphs (including the legend's font
140 size) by the given amount. The factor must be greater than 0 and
141 it accepts decimal values.
142
143 This is specially useful for people with big screens that either
144 want to avoid using the browser feature to zoom the contents of
145 the window and for those that watch the graphs from certain dis‐
146 tance.
147
148 Keep in mind that the contents of the graphs remains with the
149 same detail level all the time, and that it doesn't affects to
150 the standard zoomed graph that appears when clicking in the pic‐
151 ture.
152
153 Default value: 1
154
155 max_historic_years
156 This option defines the maximum number of years of historical
157 data in all graphs.
158
159 WARNING: Every time this value is extended Monitorix will resize
160 every .rrd file accordingly, removing all historical data.
161
162 There is no longer any upper limit for this value.
163
164 Default value: 1
165
166 accept_selfsigned_certs
167 This option forces to accept self-signed certificates when col‐
168 lecting values remotely using HTTPS protocol.
169
170 Default value: y
171
172 priority
173 Sometimes when a server is under heavy use, Monitorix might be
174 unable to collect some statistical data due to its normal prior‐
175 ity (0 by default). This makes monitoring useless because graphs
176 are empty during that hard period of time.
177
178 In order to mitigate this situation this option sets the prior‐
179 ity in which Monitorix will be scheduled by the kernel. The ac‐
180 cepted range of values is the same as in the setpriority() sys‐
181 tem call: that is, from -20 (maximum priority) to 19 (lowest
182 priority).
183
184 Default value: 0
185
186 image_format
187 This is the format of each generated graph. There are only two
188 possible values: PNG and SVG.
189
190 Default value: PNG
191
192 enable_parallelizing
193 This option will fork an independent process for each graph in
194 order to speed up graph generation in multi-core systems. It's
195 best to keep it disabled on unicore processors.
196
197 Default value: y
198
199 enable_rrd_lock
200 This option will synchronise the rrd file access by creating the
201 file /tmp/monitorix.lock and use it via flock. The read lock
202 during the cgi call can be disabled on a per call basis via set‐
203 ting the environment variable INHIBIT_LOCKING. This is useful
204 for modules that call the cgi function internally.
205
206 Default value: n
207
208 enable_relative_urls
209 This option will change all URLs in the graphs to relative, in‐
210 stead of absolute URLs.
211
212 Default value: n
213
214 include_dir
215 The main configuration file is usually called monitorix.conf and
216 its location is provided as part of the command line arguments.
217 In addition, other configuration files may be loaded placing
218 them in the directory pointed by this option. The names must end
219 with .conf to be included.
220
221 This option is mainly intended to include third-party modules
222 with their own configuration files without having to modify any
223 file from your Monitorix installation. All modules are located
224 in /usr/lib/monitorix (in some operating systems that path can
225 change).
226
227 All the configuration files in there will be loaded in alpha‐
228 betic order, so the last file loaded will overwrite any previous
229 option.
230
231 Default value: /etc/monitorix/conf.d
232
233 additional_graph_name
234 This is an optional configuration option for configuration files
235 in include_dir. It takes a comma separated list of additional
236 modules that is appended to the graph_name option. This enables
237 you to add custom modules without changing the monitorix.conf or
238 copy all names from graph_name to your config file.
239
240 Default value: None
241
242 ip_default_table
243 This option will define in which table Monitorix will put all
244 iptables rules for network traffic accounting monitoring. It
245 only works on Linux.
246
247 Although this is a global option, only the graphs port, nginx
248 and traffacct are affected by it.
249
250 Default value: filter
251
252 ipv6_disabled
253 This option enables or disables the use of the ip6tables com‐
254 mand. It only works on Linux.
255
256 Although this is a global option, only the graph port is cur‐
257 rently affected by it.
258
259 Default value: n
260
261 url_prefix_proxy
262 This option forces monitorix.cgi to bypass the URL building.
263 This is specially useful when Monitorix is used behind a reverse
264 proxy.
265
266 An example would be: http://myexternalwebsite.com
267
268 Default value:
269
270 enable_hourly_view
271 This option enables or disables the ability to select the hourly
272 view in the main page.
273
274 No .rrd file will change by selecting this option and the his‐
275 torical data won't be affected.
276
277 Default value: n
278
279 user_agent_id
280 This option defines the string to be used to identify Monitorix
281 in the HTTP requests. Its value will be sent as the "User-Agent"
282 header.
283
284 The default value will depend on the current Perl version in
285 your system. An example would be libwww-perl/5.833.
286
287 enable_back_button
288 This option enables or disables the ability to go back to the
289 main page from the graphs page without using the browser's back
290 button.
291
292 It will show a back arrow in the upper-left corner and it is
293 specially useful for people using the browser in full-screen
294 mode.
295
296 Default value: n
297
298 rrdtool_extra_options
299 This option permits create a comma-separated list of RRDtool op‐
300 tions that will be included in all graphs. This is specially
301 useful if you want to take advantage of an specific RRDtool
302 graphics option.
303
304 An example would be:
305
306 rrdtool_extra_options = "--grid-dash=1:0, --no-legend"
307
308 use_external_firewall
309 By default, Monitorix creates a set of iptables rules to collect
310 the amount of network activity that some graphs (port.pm and ng‐
311 inx.pm) need. This might be a problem for people using an exter‐
312 nal firewall that could eventually remove such iptables rules
313 created by Monitorix. In these cases, you may want to set this
314 option as y to tell Monitorix to not create such iptables rules,
315 but expect that they will be already created by an external
316 software.
317
318 Keep in mind that the rule names created in your firewall must
319 coincide with the names that Monitorix expects to find for each
320 case. Familiarize yourself with the iptables rules created auto‐
321 matically by Monitorix before enabling this option.
322
323 Default value: n
324
325 base_dir
326 This is the absolute path to the directory where all the web el‐
327 ements are located:
328
329 cgi/ directory where resides monitorix.cgi.
330 imgs/ directory for the .png graph images.
331 index.html Monitorix main page.
332 logo_bot.png Monitorix bottom logo.
333 logo_top.png Monitorix top logo.
334 monitorixico.png Monitorix favicon logo.
335
336 Default value: /var/lib/monitorix/www/
337 (depends on the operating system)
338
339 base_lib
340 This is the absolute path to the directory where all of the
341 monthly reports, daily traffic usage, and RRD files are located:
342
343 reports/ monthly reports localization directory.
344 usage/ daily traffic usage data directory.
345 *.rrd RRD files.
346
347 Default value: /var/lib/monitorix/
348 (depends on the operating system)
349
350 base_url
351 This is the URL prefix that Monitorix utilizes when referring to
352 its own pages and files.
353
354 Default value: /monitorix
355
356 base_cgi
357 This is the URL prefix that Monitorix utilizes when referring to
358 monitorix.cgi.
359
360 Default value: /monitorix-cgi
361
362 HTTP built-in server
363 enabled
364 This enables or disables the HTTP server that Monitorix has
365 built-in. This is specially useful for system administrators
366 that don't want to install a web server (Apache, Lighttpd, Ng‐
367 inx, etc.) to see the Monitorix graphs.
368
369 Default value: y
370
371 host
372 This option takes an optional host address for this server to
373 bind to. If none is specified (default) it will bind to all in‐
374 terfaces.
375
376 Default value:
377
378 port
379 This is the network port from where the HTTP server will listen
380 on.
381
382 Default value: 8080
383
384 user/group
385 This sets the user and group that the HTTP server will run as.
386
387 Default value for user: nobody
388 Default value for group: nobody
389
390 log_file
391 This is the path to the HTTP server log file.
392
393 If you leave this option blank or undefined Monitorix will log
394 using the standard file descriptors. This is specially useful on
395 systemd-based systems, you'll need to use the command journalctl
396 -u monitorix to see the logs.
397
398 Default value: /var/log/monitorix-httpd
399
400 hosts_deny
401 This is a comma delimited set of IP addresses which are not per‐
402 mitted to access Monitorix graphs. There is the special keyword
403 called all that can be used to deny all IP addresses.
404
405 The access control uses the same approach as in the TCP-Wrap‐
406 pers; the search stops at the first match:
407
408 - Access will be granted when an IP address matches an en‐
409 try in the hosts_allow list.
410 - Otherwise, access will be denied when an IP address
411 matches an entry in the hosts_deny list.
412 - Otherwise, access will be granted.
413
414 Default value:
415
416 hosts_allow
417 This is the opposite of hosts_deny option. IP addresses listed
418 here are permitted to access Monitorix graphs. There is also the
419 special keyword called all that can be used to allow access to
420 all IP addresses.
421
422 Default value:
423
424 https_url
425 This will force to use the prefix https:// in all links. This is
426 special useful if you plan to use a reverse-proxy HTTPS server
427 in front of the Monitorix HTTP built-in server.
428
429 Default value: n
430
431 autocheck_responsiveness
432 There is a well known problem with the HTTP built-in server that
433 Monitorix implements using the Perl module 'HTTP::Server::Sim‐
434 ple'. It looks like it's pretty weak to the common attacks that
435 any web server receives every day. As a consequence of that, it
436 just hangs, and when you want to see the stats of your server,
437 you just see your browser waiting for a response that never
438 comes, which ends up with a timeout. In these cases, you are
439 forced to login to your server and restart Monitorix, in order
440 to refresh the HTTP built-in server.
441
442 So in order to mitigate (hopefully) all this annoying hangups,
443 this options acts like an autocheck to control the responsive‐
444 ness of the HTTP server on every minute, and in case of no re‐
445 sponse then it will be restarted automatically.
446
447 Default value: y
448
449 HTTP built-in server with access authentication
450 enabled
451 This enables or disables the authentication mechanism to control
452 access to pages and other resources. The only allowed mechanism
453 is Basic and uses the 401 status code and the WWW-Authenticate
454 response header.
455
456 It's highly recommended to set this option according your needs
457 before start Monitorix.
458
459 For more information about the Basic access authentication mech‐
460 anism and its security implications, please refer to
461 http://en.wikipedia.org/wiki/Basic_access_authentication.
462
463 Default value: n
464
465 msg
466 This option sets the Realm to be used in the authentication.
467 That message should appear in the client dialog box to help user
468 to identify the secure area.
469
470 Default value: Monitorix: Restricted access
471
472 htpasswd
473 This option sets the path to the password file that was created
474 with the help of the htpasswd.pl script. That script encrypts
475 and validates passwords using the system's crypt() routine. If
476 your Monitorix package doesn't come with that script, you may
477 use the similar htpasswd(1) program provided with the Apache web
478 server.
479
480 The format of the password file consist of one or more lines
481 with a username and password separated by a colon.
482
483 The following is an example of a password file:
484
485 paul:oGkEsQK6RYIII
486 peter:HF1r7qRL4Kg6E
487
488 Since the script uses the crypt() algorithm, only the first 8
489 characters of the password are used to form the password. If the
490 supplied password is longer, the extra characters will be
491 silently discarded.
492
493 WARNING: don't use the character colon ':' as part of your name
494 or password since this character is used as field separator.
495
496 Default value: /var/lib/monitorix/htpasswd
497
498 hosts_deny
499 This is a comma delimited set of IP addresses which will be
500 forced to do authentication. There is the special keyword called
501 all that can be used to deny all IP addresses.
502
503 The access control uses a similar approach as in the TCP-Wrap‐
504 pers; the search stops at the first match:
505
506 - Access will be granted when an IP address matches an en‐
507 try in the hosts_allow list.
508 - Otherwise, access will be denied when an IP address
509 matches an entry in the hosts_deny list.
510 - Otherwise, access will be denied (if not defined it will
511 deny all hosts).
512
513 Default value: all
514
515 hosts_allow
516 This is the opposite of hosts_deny option. IP addresses listed
517 here will bypass the authentication mechanism (even when it is
518 enabled). It helps in specific cases like to avoid to have to
519 include the auth credentials in the url_prefix of the emailre‐
520 ports module. There is also the special keyword called all that
521 can be used to allow access to all IP addresses.
522
523 Default value:
524
525 Log files pathnames
526 log_file
527 This is the path of the Monitorix log file. Please check this
528 file periodically and especially after every update to confirm
529 proper operation.
530
531 If you leave this option blank or undefined Monitorix will log
532 using the standard file descriptors. This is specially useful on
533 systemd-based systems, you'll need to use the command journalctl
534 -u monitorix to see the logs.
535
536 Default value: /var/log/monitorix
537
538 secure_log
539 This is the path to the system log (also known as auth.log,
540 etc.) Monitorix uses this file to report SSH, POP3, FTP and Tel‐
541 net successful logins.
542
543 Default value: /var/log/secure
544
545 mail_log
546 This is the path to the mail log file. Monitorix uses this file
547 to report messages sent (supporting Sendmail and Postfix for‐
548 mats), and the MailScanner log format for spam-mail and virus-
549 mail alerts.
550
551 Default value: /var/log/maillog
552
553 milter_gl
554 This is the path to the dump file of milter-greylist.
555
556 Default value: /var/milter-greylist/greylist.db
557
558 imap_log
559 This is the path to the IMAP (Dovecot or UW-IMAP) log file. Mon‐
560 itorix uses this file to report IMAP and POP3 successful logins.
561
562 Default value: /var/log/imap
563
564 hylafax_log
565 This is the path to the Hylafax log file. Monitorix uses this
566 file to report successful FAX dispatches.
567
568 Default value: /var/spool/hylafax/etc/xferfaxlog
569
570 cups_log
571 This is the path to the CUPS page log file. Monitorix uses this
572 file to report on print jobs.
573
574 Default value: /var/log/cups/page_log
575
576 ftp_log
577 This is the path to the FTP server (ProFTPD, vsftpd or Pure-
578 FTPd) log. Monitorix uses this file to report FTP successful lo‐
579 gins and other FTP-related information.
580
581 Default value: /var/log/proftpd/access.log
582
583 fail2ban_log
584 This is the path to the Fail2ban log file. Monitorix uses this
585 file only if the option graph_mode has the value rate.
586
587 Default value: /var/log/fail2ban.log
588
589 spamassassin_log
590 This is the path to the Spamassassin log file. Monitorix uses
591 this file to report spam-mail alerts.
592
593 Default value: /var/log/maillog
594
595 clamav_log
596 This is the path to the Clamav log file. Monitorix uses this
597 file to report virus-mail alerts.
598
599 Default value: /var/log/clamav/clamav.log
600
601 cg_logdir
602 This is the path to the CommuniGate logs directory. Monitorix
603 uses these files to report the number of mail messages success‐
604 fully received and sent, and to report IMAP and POP3 successful
605 logins.
606
607 Default value: /var/CommuniGate/SystemLogs/
608
609 squid_log
610 This is the path to the Squid log file. Monitorix uses this file
611 to report on Squid Proxy requests.
612
613 Default value: /var/log/squid/access.log
614
615 imap_log_date_format
616 This is the Dovecot date format as it appears in the imap_log
617 file.
618
619 Default value: %b %d
620
621 secure_log_date_format
622 This is secure_log date format.
623
624 Default value: %b %e
625
626 Piwik tracking code
627 enabled
628 This enables the inclusion of the Piwik tracking code in the
629 main index.html file. Please refer to http://pi‐
630 wik.org/docs/tracking-api/ for more information on how to fill
631 these fields.
632
633 Default value: n
634
635 Enable or disable graphs
636 graph_enable
637 This enables or disables the monitoring of each graph. Placing a
638 y on a desired graph and restarting Monitorix will automatically
639 create the RRD file for that graph and start gathering informa‐
640 tion according to its settings.
641
642 System load average and usage (system.pm)
643 This graph shows information about system load average (classical UNIX
644 triplet), memory allocation, active processes (on Linux brought di‐
645 rectly from the /proc directory), entropy and the system uptime.
646
647 loadavg_enabled
648 This section enables or disables the alert capabilities for this
649 graph. Only the alert for the average CPU load is currently im‐
650 plemented. It works as follows:
651
652 This alert uses the minimum value between the second and the
653 third load averages (those that represent the last 5 and 15 min‐
654 utes), and if it reaches the loadavg_threshold value for the in‐
655 terval of time defined in loadavg_timeintvl, Monitorix will exe‐
656 cute the external alert script defined in loadavg_script.
657
658 The idea to use min(load5, load15) is to obtain a more symmetric
659 curve and a sooner cancellation of the alert.
660
661 The default Monitorix installation includes an example of a
662 shell-script alert called monitorix-alert.sh which you can use
663 as a base for your own script.
664
665 Default value: n
666
667 loadavg_timeintvl
668 This is the period of time (in seconds) that the threshold needs
669 to be exceeded before the external alert script is executed.
670
671 Default value: 3600
672
673 loadavg_threshold
674 This is the value that needs to be reached or exceeded within
675 the specified time period in loadavg_timeintvl to trigger the
676 mechanism for a particular action, which in this case is the ex‐
677 ecution of an external alert script.
678
679 The value of this option is compared against the last 15 minutes
680 of CPU load average.
681
682 Default value: 5.0
683
684 loadavg_script
685 This is the full path name of the script that will be executed
686 by this alert.
687
688 It will receive the following three parameters:
689
690 1st - the value currently defined in loadavg_timeintvl.
691 2nd - the value currently defined in loadavg_threshold.
692 3rd - the current 15min CPU load average.
693
694 Default value: /path/to/script.sh
695
696 time_unit
697 This is the unit in which will appear the values in the uptime
698 graph. Possible values are: minute, hour or day. It will default
699 to day even if none is specified.
700
701 Global kernel usage (kern.pm)
702 Note that the VFS graph is just informative of how the kernel is bal‐
703 ancing its tables. graph_mode
704 This changes the layout of the kernel usage graph, the possible
705 values are r for a real graph, or s for a stacked graph (every
706 line or area is stacked on top of the previous element).
707
708 Default value: r
709
710 list
711 This is the list of values offered in modern Linux kernels.
712 Older Linux kernels or other Operating Systems may not have all
713 of them. Placing a y or an n will enable or disable the value in
714 the graph.
715
716 Kernel usage per processor (proc.pm)
717 max
718 This is the number of processors or cores that your system has.
719 There is no limit, however keep in mind that every time this
720 number is changed Monitorix will resize the proc.rrd file ac‐
721 cordingly, removing all historical data.
722
723 Default value: 4
724
725 graphs_per_row
726 This is the number of processor graphs that will be put in a
727 row. Consider the interaction of this parameter with the size
728 and data options (below) in order to adjust the size and number
729 of graphs in relation to your horizontal screen size.
730
731 Default value: 2
732
733 size
734 This option sets the size of all processors graphs.
735
736 The possible values are:
737 large for 750x180 graphs.
738 main for 450x150 graphs.
739 medium for 325x150 graphs.
740 medium2 for 325x70 graphs.
741 small for 200x66 graphs.
742 mini for 183x66 graphs.
743 tiny for 110x40 graphs.
744
745 Default value: medium
746
747 DATA
748 This option will completely enable or disable the legend in the
749 processor graphs.
750
751 Default value: y
752
753 AMD power consumption (amdenergy.pm)
754 This graph is able to monitor the power draw of an unlimited number of
755 AMD CPUs if the amd_energy driver and sensors is available. I will show
756 power draw of the cores and the socket and the non-core part of the
757 power draw. It is calculated by subtracting the sum of the core power
758 draw from the socket power draw.
759
760 list
761 This is a list of groups of CPU sensors you want to monitor with
762 the same names as they appear in your sensors(1) command. Each
763 group will become a plot and there may be an unlimited number of
764 groups. You can define device names like amd_energy-isa-0000.
765
766 WARNING: Every time the number of groups or the size of the
767 groups in this option changes, Monitorix will resize the amden‐
768 ergy.rrd file accordingly, removing all historical data.
769
770 To collect the CPU power usage the energy counters from the sen‐
771 sors command via the amd_energy driver is used and a power con‐
772 sumption in the monitoring time interval calculated.
773
774 It is recommended that you first check if the sensors output is
775 able to provide energy counters (EcoreXXX and EsocketX) from the
776 CPU(s) that you plan to monitor. For example check sensors for
777 available sensors. You may test this with the following command
778 (root privileges might be needed to access the energy counters):
779
780 # sensors amd_energy-isa-0000
781 amd_energy-isa-0000
782 Adapter: ISA adapter
783 Ecore000: 31.81 kJ
784 Ecore001: 27.54 kJ
785 Ecore002: 25.44 kJ
786 Ecore003: 27.08 kJ
787 Ecore004: 48.45 kJ
788 Ecore005: 41.39 kJ
789 Ecore006: 42.49 kJ
790 Ecore007: 39.88 kJ
791 Ecore008: 109.67 kJ
792 Ecore009: 107.59 kJ
793 Ecore010: 115.21 kJ
794 Ecore011: 168.80 kJ
795 Ecore012: 61.64 kJ
796 Ecore013: 49.86 kJ
797 Ecore014: 42.20 kJ
798 Ecore015: 51.55 kJ
799 Ecore016: 35.41 kJ
800 Ecore017: 35.87 kJ
801 Ecore018: 33.91 kJ
802 Ecore019: 34.40 kJ
803 Ecore020: 102.11 kJ
804 Ecore021: 238.25 kJ
805 Ecore022: 86.68 kJ
806 Ecore023: 99.13 kJ
807 Ecore024: 23.79 kJ
808 Ecore025: 23.30 kJ
809 Ecore026: 23.48 kJ
810 Ecore027: 23.63 kJ
811 Ecore028: 23.53 kJ
812 Ecore029: 22.10 kJ
813 Ecore030: 20.83 kJ
814 Ecore031: 19.45 kJ
815 Esocket0: 21.12 MJ
816
817 If you see good results as above, you can add it to the group 0
818 like this:
819
820 <list>
821 0 = amd_energy-isa-0000
822 1 = amd_energy-isa-0001
823 </list>
824
825 number_of_cores
826 This list sets the number of cores for the CPUs specified in the
827 list option. It is required to specify the number of cores is
828 for each CPU in list
829
830 <number_of_cores>
831 amd_energy-isa-0000 = 64
832 amd_energy-isa-0001 = 32
833 </number_of_cores>
834
835 map
836 This list complements the list option. It basically allows you
837 to change the CPU name that will appear in the graph, hiding the
838 sensor name. If no association is defined, then Monitorix will
839 display the name of the CPU device as it is specified in the
840 config file.
841
842 <map>
843 amd_energy-isa-0000 = AMD CPU 1
844 amd_energy-isa-0001 = AMD CPU 2
845 </map>
846
847 desc
848 This list complements the list option. It allows you to include
849 a title for every group of CPUs. The title will appear in the
850 title above the plot.
851
852 <desc>
853 0 = Socket 1 power distribution
854 1 = Socket 2 power distribution
855 </desc>
856
857 socketpower_enabled
858 This section enables or disables the alert capabilities for this
859 graph; the alert for the socket power draw. It works as follows:
860
861 If the socket power draw of any of the specified CPU device
862 reaches or succeeds the socketpower_threshold (the interval of
863 time is not used here), Monitorix will execute the external
864 alert script defined in socketpower_script.
865
866 The default Monitorix installation includes an example of a
867 shell-script alert called monitorix-alert.sh which you can use
868 as a base for your own script.
869
870 Default value: n
871
872 socketpower_timeintvl
873 Not used in this alert.
874
875 Default value: None
876
877 socketpower_threshold
878 This is the value that needs to be reached or succeeded to trig‐
879 ger the mechanism for a particular action, which in this case is
880 the execution of an external alert script.
881
882 Default value: None
883
884 socketpower_script
885 This is the full path name of the script that will be executed
886 by this alert.
887
888 It will receive the following three parameters:
889
890 1st - the value currently defined in socketpower_timeintvl.
891 2nd - the value currently defined in socketpower_threshold.
892 3rd - the current socket power draw.
893
894 Default value: /path/to/script.sh
895
896 use_nan_for_missing_data
897 This option, when enabled via y, shows nan values for missing
898 data instead of 0. This is useful when 0 could be mistaken for
899 valid data.
900
901 Default value: n
902
903 gap_on_all_nan
904 This option, when enabled via y, combined with the show_gaps op‐
905 tion shows gaps only if all data points are nan instead of re‐
906 quiring only one to be nan for a gap. This can be useful if not
907 all sensor data are required for normal operation.
908
909 Default value: n
910
911 Intel RAPL power consumption (intelrapl.pm)
912 This graph is able to monitor the power draw of an unlimited number of
913 Intel RAPL supporting devices like Intel CPU packages. For example it
914 can (if the device RAPL data is available) show power draw of the
915 cores, integrated GPU, package, DRAM and the non-core part of the power
916 draw. The non-core power draw composition can be specified by setting
917 which parts will be subtracted from the package power draw.
918
919 list
920 This is a list of groups of CPU sensors you want to monitor with
921 an arbitrary name. Each group will become a plot and there may
922 be an unlimited number of groups. You can define sensor names
923 like ore and ackage.
924
925 WARNING: Every time the number of groups or the size of the
926 groups in this option changes, Monitorix will resize the intel‐
927 rapl.rrd file accordingly, removing all historical data.
928
929 To collect the CPU power usage the energy counters from the in‐
930 tel-rapl framework are used and a power consumption in the moni‐
931 tored time interval calculated.
932
933 It is recommended that you first check if the intel-rapl class
934 tree and collect your desired energy counters from the devices
935 that you plan to monitor. For example check tree /sys/class/pow‐
936 ercap/intel-rapl for available energy_uj energy counters. The
937 corresponding name files helps identifying the sensors.
938
939 You can add it to the group 0 like this:
940
941 <list>
942 0 = core, uncore, package, dram
943 1 = dram
944 </list>
945
946 list_item_names
947 This list complements the list option. It allows you to change
948 the group name that will appear in the graph, hiding the sensor
949 name. If no association is defined, then Monitorix will display
950 the name of the device as it is specified in the config file.
951
952 <list_item_names>
953 0 = CPU 1
954 1 = DRAM modules
955 </list_item_names>
956
957 sensors
958 This list sets the energy counter files for the devices speci‐
959 fied in the list option.
960
961 <sensors>
962 core = /sys/class/powercap/intel-rapl:0:0/energy_uj
963 uncore = /sys/class/powercap/intel-rapl:0:1/en‐
964 ergy_uj
965 package = /sys/class/powercap/intel-rapl:0/energy_uj
966 dram = /sys/class/powercap/intel-rapl:0:2/energy_uj
967 </sensors>
968
969 sensor_names
970 This list complements the sensors option. It allows you to
971 change the device name that will appear in the graph, hiding the
972 device name. If no association is defined, then Monitorix will
973 display the name of the device as it is specified in the config
974 file.
975
976 <sensor_names>
977 package = Package
978 core = Cores
979 uncore = IGP
980 dram = DRAM
981 </sensor_names>
982
983 package_sensors
984 This list allows you to set a device name for the package de‐
985 vice. This specified device is used as total power draw to cal‐
986 culate the non-core power draw by subtracting the power draw of
987 the devices specified for the same group in ackage_sensors. Non-
988 core power draw will not be shown if no package sensor is speci‐
989 fied for a certain group.
990
991 <package_sensors>
992 0 = package
993 </package_sensors>
994
995 package_content
996 This list complements the package_sensors option. It allows
997 specify the devices that are contained in the total package
998 power draw. This information is needed if you want to visualize
999 non-core power draw. Non-core power draw will be calculated by
1000 subtracting the sum power draw of a package content group from
1001 the package power draw.
1002
1003 <package_content>
1004 0 = core, uncore
1005 </package_content>
1006
1007 noncore_names
1008 This list allows you to change the non-core name for a certain
1009 group that will appear in the graph legend.
1010
1011 <noncore_names>
1012 0 = Non-Core
1013 </noncore_names>
1014
1015 desc
1016 This list complements the list option. It allows you to include
1017 a title for every group of devicess. The title will appear in
1018 the title above the plot.
1019
1020 <desc>
1021 0 = CPU power distribution
1022 1 = Memory power distribution
1023 </desc>
1024
1025 sum
1026 This list allows you to add a specific sum of devices to the
1027 plot of a certain group. No sum will be shown if not specified
1028 for the group.
1029
1030 <sum>
1031 0 = package, dram
1032 </sum>
1033
1034 sum_names
1035 This list complements the seum option. It allows specify the
1036 name of the sum if desired.
1037
1038 <sum_names>
1039 0 = Package + DRAM
1040 </sum_names>
1041
1042 packagepower_enabled
1043 This section enables or disables the alert capabilities for this
1044 graph; the alert for the package power draw. It works as fol‐
1045 lows:
1046
1047 If the package power draw specified by package_sensors of any of
1048 the specified device reaches or succeeds the package‐
1049 power_threshold (the interval of time is not used here), Moni‐
1050 torix will execute the external alert script defined in package‐
1051 power_script.
1052
1053 The default Monitorix installation includes an example of a
1054 shell-script alert called monitorix-alert.sh which you can use
1055 as a base for your own script.
1056
1057 Default value: n
1058
1059 packagepower_timeintvl
1060 Not used in this alert.
1061
1062 Default value: None
1063
1064 packagepower_threshold
1065 This is the value that needs to be reached or succeeded to trig‐
1066 ger the mechanism for a particular action, which in this case is
1067 the execution of an external alert script.
1068
1069 Default value: None
1070
1071 packagepower_script
1072 This is the full path name of the script that will be executed
1073 by this alert.
1074
1075 It will receive the following three parameters:
1076
1077 1st - the value currently defined in packagepower_timeintvl.
1078 2nd - the value currently defined in packagepower_threshold.
1079 3rd - the current package power draw.
1080
1081 Default value: /path/to/script.sh
1082
1083 use_nan_for_missing_data
1084 This option, when enabled via y, shows nan values for missing
1085 data instead of 0. This is useful when 0 could be mistaken for
1086 valid data.
1087
1088 Default value: n
1089
1090 gap_on_all_nan
1091 This option, when enabled via y, combined with the show_gaps op‐
1092 tion shows gaps only if all data points are nan instead of re‐
1093 quiring only one to be nan for a gap. This can be useful if not
1094 all sensor data are required for normal operation.
1095
1096 Default value: n
1097
1098 show_noncore_info
1099 This option, when enabled via y, enable showing description
1100 string in the legend how the non-core part is calculated.
1101
1102 Default value: n
1103
1104 max_number_of_values_per_group
1105 This option sets the maximum number of devices per group if more
1106 values are required.
1107
1108 WARNING: Every time the max_number_of_values_per_group value
1109 changes, Monitorix will resize the intelrapl.rrd file accord‐
1110 ingly, removing all historical data.
1111
1112 Default value: 10
1113
1114 HP ProLiant System Health (hptemp.pm)
1115 list
1116 This list will hold the defined temperature sensors for each
1117 graph. You must have installed the command hplog that comes with
1118 HP ProLiant System Health Application and Command Line Utili‐
1119 ties.
1120
1121 Each graph has a limited number of IDs:
1122
1123 graph_0 up to 8 IDs.
1124 graph_1 up to 6 IDs.
1125 graph_2 up to 6 IDs.
1126
1127 The following is a configuration example of selected IDs:
1128
1129 # hplog -t
1130 ID TYPE LOCATION STATUS CURRENT THRESHOLD
1131 1 Basic Sensor Ambient Normal 75F/ 24C 107F/ 42C
1132 2 Basic Sensor CPU (1) Normal 104F/ 40C 179F/ 82C
1133 3 Basic Sensor CPU (2) Normal ---F/---C 179F/ 82C
1134 4 Basic Sensor Memory Board Normal ---F/---C 188F/ 87C
1135 5 Basic Sensor Memory Board Normal 82F/ 28C 188F/ 87C
1136 6 Basic Sensor Memory Board Normal ---F/---C 188F/ 87C
1137 7 Basic Sensor System Board Normal 89F/ 32C 192F/ 89C
1138 8 Basic Sensor System Board Normal ---F/---C 192F/ 89C
1139 9 Basic Sensor System Board Normal 84F/ 29C 192F/ 89C
1140 10 Basic Sensor System Board Normal 118F/ 48C 230F/110C
1141 11 Basic Sensor System Board Normal 96F/ 36C 192F/ 89C
1142 12 Basic Sensor System Board Normal 84F/ 29C 154F/ 68C
1143 13 Basic Sensor System Board Normal 87F/ 31C 154F/ 68C
1144 14 Basic Sensor System Board Normal 89F/ 32C 156F/ 69C
1145 15 Basic Sensor System Board Normal 93F/ 34C 161F/ 72C
1146 16 Basic Sensor Ambient Normal ---F/---C 192F/ 89C
1147 17 Basic Sensor System Board Normal ---F/---C 192F/ 89C
1148 18 Basic Sensor SCSI Backplane Normal 32F/ 0C 140F/ 60C
1149
1150 <list>
1151 graph_0 = 2, 3
1152 graph_1 = 1, 5, 18
1153 graph_2 = 7, 9, 10, 11, 12, 13
1154 </list>
1155
1156 alerts
1157 This optional list enables the alert capabilities for this graph
1158 and complements with the list option. Each alert has three
1159 fields separated by comma: the time interval, the threshold and
1160 the path to the script to be executed.
1161
1162 The time interval is the period of time (in seconds) that the
1163 threshold needs to be exceeded before the external script is ex‐
1164 ecuted.
1165
1166 The threshold is the temperature that needs to be reached or ex‐
1167 ceeded within the specified time in time interval to execute the
1168 external script.
1169
1170 The script is the full path name of the script that will be exe‐
1171 cuted by this alert.
1172
1173 Each defined sensor has its own alert.
1174
1175 The default Monitorix installation includes an example of a
1176 shell-script alert called monitorix-alert.sh which you can use
1177 as a base for your own script.
1178
1179 The following is an example of an alert defined for the first
1180 temperature sensor:
1181
1182 <alerts>
1183 2 = 3600, 40, /path/to/script.sh
1184 </alerts>
1185
1186 Such alert means that if the value of the sensor number 2
1187 reaches or exceeds 40 during at least one hour (3600 seconds)
1188 the script in /path/to/script.sh will be executed.
1189
1190 The external script will receive the following arguments:
1191
1192 1st - the value defined as time interval.
1193 2nd - the value defined as threshold.
1194 3rd - the value of the sensor.
1195
1196 LM-Sensors and GPU temperatures (lmsens.pm)
1197 list
1198 In this list you may specify the sensors you want to monitor
1199 with the same names as they appear in your sensors(1) command.
1200
1201 For example, imagine a sensors(1) output like this:
1202
1203 # sensors
1204 coretemp-isa-0000
1205 Adapter: ISA adapter
1206 Core 0: +51.0°C (high = +78.0°C, crit = +100.0°C)
1207
1208 coretemp-isa-0001
1209 Adapter: ISA adapter
1210 Core 1: +49.0°C (high = +78.0°C, crit = +100.0°C)
1211
1212 f71882fg-isa-0a00
1213 Adapter: ISA adapter
1214 3.3V: +3.30 V
1215 Vcore: +1.21 V (max = +2.04 V)
1216 Vdimm: +1.82 V
1217 Vchip: +1.38 V
1218 +5V: +5.00 V
1219 12V: +14.37 V
1220 5VSB: +4.33 V
1221 3VSB: +3.30 V
1222 Battery: +3.22 V
1223 CPU: 2035 RPM
1224 System: 1765 RPM ALARM
1225 Power: 2110 RPM ALARM
1226 Aux: 2080 RPM ALARM
1227 M/B Temp: +36.00 C
1228 CPU Temp: +29.00 C
1229
1230 Then you may want to configure that list as:
1231
1232 <list>
1233 core0 = Core 0
1234 core1 = Core 1
1235 mb0 = M/B Temp
1236 cpu0 = CPU Temp
1237 fan0 = CPU
1238 fan1 = System
1239 fan2 = Power
1240 fan3 = Aux
1241 volt0 = 3.3V
1242 volt1 = VCore
1243 volt2 = Vdimm
1244 volt3 = Vchip
1245 volt4 = \+5V
1246 volt5 = 12V
1247 volt6 = 5VSB
1248 volt7 = 3VSB
1249 volt8 = Battery
1250 gpu0 = nvidia
1251 </list>
1252
1253 Note that you need to escape the plus and minus signs in the
1254 voltage labels. It also recommended to enclose the values using
1255 double quotes.
1256
1257 The Fan values can be prefixed with the words rpm: (optional) or
1258 percent:. This will tell to Monitorix how to treat these values
1259 in the graph and in the case of the later it will add the per‐
1260 centage symbol (%) right after the value. Just like this:
1261
1262 <list>
1263 fan0 = percent:Power
1264 </LIST>
1265
1266 The last one, gpu0, is set here just in case you have a sup‐
1267 ported graphics card and want to monitor its temperature. Cur‐
1268 rently only NVIDIA and ATI graphic cards are supported; with the
1269 values nvidia and ati respectively, and it requires the official
1270 NVIDIA or ATI drivers.
1271
1272 If the temperature of your graphical card appears in the output
1273 of lm_sensors, then you can tell Monitorix to use it instead of
1274 using the official NVIDIA or ATI drivers. In that case, you need
1275 to prefix with lmsensors: the name of the temperature value.
1276 Just like this:
1277
1278 <list>
1279 gpu0 = lmsensors:edge
1280 </list>
1281
1282 This list has the following maximums allowed:
1283
1284 Up to 16 core keys (from core0 to core15).
1285 Up to 2 mb keys (mb0 and mb1).
1286 Up to 4 cpu keys (from cpu0 to cpu3).
1287 Up to 9 fan keys (from fan0 to fan8).
1288 Up to 12 volt keys (from volt0 to volt11).
1289 Up to 9 gpu keys (from gpu0 to gpu8).
1290
1291 IMPORTANT NOTE: Sometimes the output of lm_sensors shows the
1292 same exact names for different temperature values and so Moni‐
1293 torix is unable to differentiate them. If you are under this
1294 situation please check the issue #131
1295 (https://github.com/mikaku/Monitorix/issues/131) to solve this
1296 situation.
1297
1298 desc
1299 This list complements the list option. It basically allows you
1300 to change the name that will appear in the graph, hiding the
1301 real name of the sensor. If no association is defined, then Mon‐
1302 itorix will display the name of the key (left side) in the desc
1303 option (in uppercase in some graphs).
1304
1305 <desc>
1306 mb0 = M/B
1307 fan0 = CPUFan
1308 gpu0 = ATI
1309 </desc>
1310
1311 Please note that in the default graph all names are limited to 5
1312 characters in order to fit up to 9 different values. In the
1313 zoomed graphs the limit is 8 characters.
1314
1315 alerts
1316 This optional list enables the alert capabilities for this graph
1317 and complements with the list option. Each alert has three
1318 fields separated by comma: the time interval, the threshold and
1319 the path to the script to be executed.
1320
1321 The time interval is the period of time (in seconds) that the
1322 threshold needs to be exceeded before the external script is ex‐
1323 ecuted.
1324
1325 The threshold is the temperature or volts, or whatever that
1326 needs to be reached or exceeded within the specified time in
1327 time interval to execute the external script.
1328
1329 The script is the full path name of the script that will be exe‐
1330 cuted by this alert.
1331
1332 Each defined sensor has its own alert.
1333
1334 The default Monitorix installation includes an example of a
1335 shell-script alert called monitorix-alert.sh which you can use
1336 as a base for your own script.
1337
1338 The following is an example of an alert defined for the first
1339 temperature sensor:
1340
1341 <alerts>
1342 core0 = 3600, 40, /path/to/script.sh
1343 </alerts>
1344
1345 Such alert means that if the value of the sensor core0 reaches
1346 or exceeds 40 during at least one hour (3600 seconds) the script
1347 in /path/to/script.sh will be executed.
1348
1349 The external script will receive the following arguments:
1350
1351 1st - the value defined as time interval.
1352 2nd - the value defined as threshold.
1353 3rd - the value of the sensor.
1354
1355 cmd
1356 This is the command that will be used to gather statistics. This
1357 option may also be used to add new sensors values not covered by
1358 LM-Sensors by referencing an external script which executes the
1359 command sensors and others.
1360
1361 Default value: sensors
1362
1363 use_nan_for_missing_data
1364 This option, when enabled via y, shows nan values for
1365 missing data instead of 0. This is useful when 0 could be
1366 mistaken for valid data.
1367
1368 Default value: n
1369
1370 gap_on_all_nan
1371 This option, when enabled via y, combined with the
1372 show_gaps option shows gaps only if all data points are
1373 nan instead of requiring only one to be nan for a gap.
1374 This can be useful if not all sensor data are required
1375 for normal operation.
1376
1377 Default value: n
1378
1379 Generic sensors statistics (gensens.pm)
1380 This graph helps to monitor up to three (so far) different sensors:
1381 temperatures, CPU frequencies and battery status which, depending of
1382 your machine, they should appear in the /sys directory.
1383
1384 list
1385 This is a list of an unlimited number of groups to define the
1386 sensors to monitor. Each group is numbered starting from 0, and
1387 each one can hold up to 9 different entries separated by comma
1388 which corresponds to the names of the sensors present in your
1389 computer that you want to monitor. This module is capable to
1390 identify the type of the group by searching the substrings temp,
1391 cpu, bat, pwr, fan, pct and byt, so it will put automatically
1392 the vertical label in the graph accordingly (Celsius or Fahren‐
1393 heit, Hz, Charge, Watts, RPM, Percent (%) and bytes respec‐
1394 tively). Of course, it cannot supports mixed sensors in a same
1395 group. For example, if you need to monitor more than 9 tempera‐
1396 ture sensors just create a new group in list.
1397
1398 An example would be:
1399
1400 <list>
1401 0 = temp0, temp1
1402 1 = cpu0, cpu1, cpu2, cpu3
1403 2 = bat0
1404 </list>
1405 title
1406 In this option you must associate a title with the group number
1407 specified in list. This is the title that will appear as the
1408 name of the graph. Following the settings in the example above:
1409
1410 <title>
1411 0 = Temperatures
1412 1 = CPU frequency
1413 2 = Battery status
1414 </title>
1415 desc
1416 In this option you must associate the complete pathname of the
1417 file from where to get the value of each entry defined in the
1418 list option. Following the settings in the example above:
1419
1420 <desc>
1421 temp0 = /sys/devices/virtual/thermal/ther‐
1422 mal_zone0/temp
1423 temp1 = /sys/devices/virtual/thermal/ther‐
1424 mal_zone1/temp
1425 cpu0 = /sys/devices/system/cpu/cpu0/cpufreq/scal‐
1426 ing_cur_freq
1427 cpu1 = /sys/devices/system/cpu/cpu1/cpufreq/scal‐
1428 ing_cur_freq
1429 cpu2 = /sys/devices/system/cpu/cpu2/cpufreq/scal‐
1430 ing_cur_freq
1431 cpu3 = /sys/devices/system/cpu/cpu3/cpufreq/scal‐
1432 ing_cur_freq
1433 bat0 = /sys/class/power_supply/BAT0/capacity
1434 </desc>
1435 unit
1436 With this option you can define the order of magnitude associ‐
1437 ated to a specific value. The value collected will be divided by
1438 the value defined here. For instance, the temperature sensors
1439 tend to give the value in 1000ths of degrees Celsius, something
1440 like 28300, which will need to be divided by 1000 to get the
1441 real temperature of 28.3. In the case of CPU frequencies the
1442 values come in Mhz which means that they need to be converted to
1443 Hz by dividing them by 0.001. Since the battery value represents
1444 a percentage, it doesn't need any special calculation. Therefore
1445 you can define something like this:
1446
1447 <unit>
1448 temp0 = 1000
1449 temp1 = 1000
1450 cpu0 = 0.001
1451 cpu1 = 0.001
1452 cpu2 = 0.001
1453 cpu3 = 0.001
1454 bat0 = 1
1455 </unit>
1456 map
1457 With this option you can optionally rename any of the sensor
1458 names defined in the list option. Following the above example:
1459
1460 <map>
1461 temp0 = Temperature Zone 0
1462 temp1 = Temperature Zone 1
1463 cpu0 = CPU0 frequency
1464 cpu1 = CPU1 frequency
1465 cpu2 = CPU2 frequency
1466 cpu3 = CPU3 frequency
1467 bat0 = Battery 0
1468 </map>
1469
1470 All names are limited to 20 characters.
1471
1472 alerts
1473 This optional list enables the alert capabilities for this graph
1474 and complements with the list option. Each alert has four fields
1475 separated by comma: the time interval, the threshold, the path
1476 to the script to be executed and when the alert must be trig‐
1477 gered. the last field is optional.
1478
1479 The time interval is the period of time (in seconds) that the
1480 threshold needs to be exceeded before the external script is ex‐
1481 ecuted.
1482
1483 The threshold is the value (temperature, Hz or battery charge)
1484 that needs to be reached or exceeded within the specified time
1485 in time interval to execute the external script. It can be spec‐
1486 ified as a unique value or as a range of two values separated by
1487 a dash.
1488
1489 The script is the full path name of the script that will be exe‐
1490 cuted by this alert.
1491
1492 The when value specifies when the alert must be triggered (above
1493 or below) the threshold, being above the default value when it's
1494 not specified. This forth parameter is only relevant when the
1495 threshold value is not a range.
1496
1497 Each defined sensor has its own alert.
1498
1499 The default Monitorix installation includes an example of a
1500 shell-script alert called monitorix-alert.sh which you can use
1501 as a base for your own script.
1502
1503 The following is an example of an alert defined for the first
1504 temperature sensor:
1505
1506 <alerts>
1507 temp0 = 3600, 40, /path/to/script.sh, above
1508 temp1 = 3600, 10, /path/to/script.sh, below
1509 temp2 = 3600, 40-60, /path/to/script.sh
1510 </alerts>
1511
1512 The first alert means that if the value of the sensor temp0 ex‐
1513 ceeds above 40 during at least one hour (3600 seconds) the
1514 script in /path/to/script.sh will be executed.
1515
1516 The second alert means that if the value of the sensor temp1 ex‐
1517 ceeds below 10 during at least one hour (3600 seconds) the
1518 script in /path/to/script.sh will be executed.
1519
1520 The third alert means that if the value of the sensor temp2 ex‐
1521 ceeds either below 40 or above of 60 during at least one hour
1522 (3600 seconds) the script in /path/to/script.sh will be exe‐
1523 cuted.
1524
1525 The external script will receive the following arguments:
1526
1527 1st - the value defined as time interval.
1528 2nd - the value defined as threshold.
1529 3rd - the value of the sensor.
1530 4th - the direction or when that alert was triggered by
1531 (above or below).
1532
1533 IPMI sensor statistics (ipmi.pm)
1534 This graph is able to monitor an unlimited number of IPMI sensors (tem‐
1535 peratures, fans and voltages).
1536
1537 list
1538 This is a comma-separated list that describes the groups of sen‐
1539 sors in desc. Put one description for each group. For every
1540 group specified you need to specify its sensors in the desc op‐
1541 tion.
1542
1543 WARNING: Every time the number of entries in this option
1544 changes, Monitorix will resize the ipmi.rrd file accordingly,
1545 removing all historical data.
1546
1547 An example would be:
1548
1549 list = Temperatures, Fans, Voltages
1550
1551 desc
1552 This is a list of sensors per group defined.
1553
1554 <desc>
1555 0 = CPU Temp, System Temp
1556 1 = FAN 1
1557 2 = Vcore, 3.3VCC, 12V, VDIMM, 5VCC, CPU VTT, VBAT, VSB,
1558 AVCC
1559 </desc>
1560
1561 The maximum number of sensors allowed for each group is 9.
1562
1563 units
1564 This is the type of sensor in each group. It's important to not
1565 mix different type of sensors in a same group. This value is in‐
1566 formative only, it's mostly used as a title for the y-axis in
1567 the graphs and should match with the output of the ipmitool com‐
1568 mand.
1569
1570 map
1571 This list complements the desc option. It basically allows you
1572 to change the name that will appear in the graph, hiding the
1573 real name of the sensor. If no association is defined, then Mon‐
1574 itorix will display the name specified in the desc option. Note,
1575 this only works in names that don't include whitespaces unless
1576 you use the whitespace_key_support option and replace white‐
1577 spaces with underscores in the key.
1578
1579 alerts
1580 This optional list enables the alert capabilities for this graph
1581 and complements with the desc option. Each alert has three
1582 fields separated by comma: the time interval, the threshold and
1583 the path to the script to be executed.
1584
1585 The time interval is the period of time (in seconds) that the
1586 threshold needs to be exceeded before the external script is ex‐
1587 ecuted.
1588
1589 The threshold is the temperature that needs to be reached or ex‐
1590 ceeded within the specified time in time interval to execute the
1591 external script.
1592
1593 The script is the full path name of the script that will be exe‐
1594 cuted by this alert.
1595
1596 Each defined sensor has its own alert.
1597
1598 The default Monitorix installation includes an example of a
1599 shell-script alert called monitorix-alert.sh which you can use
1600 as a base for your own script.
1601
1602 The following is an example of an alert defined for the first
1603 temperature sensor:
1604
1605 <alerts>
1606 CPU_Temp = 3600, 40, /path/to/script.sh
1607 </alerts>
1608
1609 Notice that the spaces in the sensor's name must be con‐
1610 verted to underscores, since a variable can hold spaces
1611 in its name.
1612
1613 Such alert means that if the value of the sensor CPU_Temp
1614 reaches or exceeds 40 during at least one hour (3600 seconds)
1615 the script in /path/to/script.sh will be executed.
1616
1617 The external script will receive the following arguments:
1618
1619 1st - the value defined as time interval.
1620 2nd - the value defined as threshold.
1621 3rd - the value of the sensor.
1622
1623 whitespace_key_support
1624 This list complements the map option. It changes the handling of
1625 the key names. Without this option enabled you can't rename keys
1626 with whitespaces using the map option. When enabled, whitespaces
1627 in the map key will be replaced by underscores(_) and enables
1628 you to specify the key names this way.
1629
1630 Default value: n
1631 graphs_per_row
1632 This is the number of graphs that will be put in a row.
1633
1634 Default value: 2
1635 use_nan_for_missing_data
1636 This option, when enabled via y, shows nan values for missing
1637 data instead of 0. This is useful when 0 could be mistaken for
1638 valid data.
1639
1640 Default value: n
1641 gap_on_all_nan
1642 This option, when enabled via y, combined with the show_gaps op‐
1643 tion shows gaps only if all data points are nan instead of re‐
1644 quiring only one to be nan for a gap. This can be useful if not
1645 all sensor data are required for normal operation.
1646
1647 Default value: n
1648 extra_args
1649 This option includes any extra argument to the ipmitool command
1650 executed by Monitorix, which is "ipmitool <extra_args> sdr".
1651 This is specially useful if you need to monitor a remote server.
1652 An example would be:
1653
1654 extra_args = -H <remote_ip> -U root -P <password>
1655
1656 Default value: none
1657
1658 Ambient sensor statistics (ambsens.pm)
1659 This graph is able to monitor an unlimited number of ambient sensors
1660 (temperatures, humidity, barometer, etc.).
1661
1662 list
1663 This is a comma-separated list that describes the type of sen‐
1664 sors in desc. Put one description for each type. For every type
1665 specified you need to specify its sensors in the desc option.
1666 Each one most be referenced as a numeric value starting from
1667 zero in the desc option. There you will define all the sensors
1668 than come with that type of sensor.
1669
1670 WARNING: Every time the number of entries in this option
1671 changes, Monitorix will resize the ambsens.rrd file accordingly,
1672 removing all historical data.
1673
1674 An example would be:
1675
1676 list = Ambient temperature, Humidity
1677
1678 desc
1679 This is a list of sensors per type defined. The name is irrele‐
1680 vant.
1681
1682 <desc>
1683 0 = at1, at2, at3
1684 1 = h0
1685 </desc>
1686
1687 The maximum number of sensors allowed for each type is 9.
1688
1689 units
1690 This is the class of sensor for each type. It's important to not
1691 mix different type of sensors in a same group. This value is in‐
1692 formative only, it's mostly used as a title for the y-axis in
1693 the graphs.
1694
1695 cmd
1696 This list complements the desc option. It basically allows you
1697 to associate a script or program (which may include arguments)
1698 that will be executed to retrieve the value for each sensor.
1699
1700 map
1701 This list complements the desc option. It basically allows you
1702 to change the name that will appear in the graph, hiding the
1703 real name of the sensor. If no association is defined, then Mon‐
1704 itorix will display the name specified in the desc option. Note,
1705 this only works in names that don't include whitespaces.
1706
1707 alerts
1708 This optional list enables the alert capabilities for this graph
1709 and complements with the list option. Each alert has four fields
1710 separated by comma: the time interval, the threshold, the path
1711 to the script to be executed and when the alert must be trig‐
1712 gered. the last field is optional.
1713
1714 The time interval is the period of time (in seconds) that the
1715 threshold needs to be exceeded before the external script is ex‐
1716 ecuted.
1717
1718 The threshold is the value (temperature, etc.) that needs to be
1719 reached or exceeded within the specified time in time interval
1720 to execute the external script. It can be specified as a unique
1721 value or as a range of two values separated by a dash.
1722
1723 The script is the full path name of the script that will be exe‐
1724 cuted by this alert.
1725
1726 The when value specifies when the alert must be triggered (above
1727 or below) the threshold, being above the default value when it's
1728 not specified. This forth parameter is only relevant when the
1729 threshold value is not a range.
1730
1731 Each defined sensor has its own alert.
1732
1733 The default Monitorix installation includes an example of a
1734 shell-script alert called monitorix-alert.sh which you can use
1735 as a base for your own script.
1736
1737 The following is an example of an alert defined for the first
1738 temperature sensor:
1739
1740 <alerts>
1741 temp0 = 3600, 40, /path/to/script.sh, above
1742 temp1 = 3600, 10, /path/to/script.sh, below
1743 temp2 = 3600, 40-60, /path/to/script.sh
1744 </alerts>
1745
1746 The first alert means that if the value of the sensor temp0 ex‐
1747 ceeds above 40 during at least one hour (3600 seconds) the
1748 script in /path/to/script.sh will be executed.
1749
1750 The second alert means that if the value of the sensor temp1 ex‐
1751 ceeds below 10 during at least one hour (3600 seconds) the
1752 script in /path/to/script.sh will be executed.
1753
1754 The third alert means that if the value of the sensor temp2 ei‐
1755 ther exceeds below 40 or above of 60 during at least one hour
1756 (3600 seconds) the script in /path/to/script.sh will be exe‐
1757 cuted.
1758
1759 The external script will receive the following arguments:
1760
1761 1st - the value defined as time interval.
1762 2nd - the value defined as threshold.
1763 3rd - the value of the sensor.
1764 4th - the direction or when that alert was triggered by
1765 (above or below).
1766
1767 graphs_per_row
1768 This is the number of graphs that will be put in a row.
1769
1770 Default value: 2
1771 scientific_notation
1772 This is an option to enable scientific notation for the current
1773 value in the legend.
1774
1775 Default value: n
1776 show_average
1777 This is an option to show also average, minimum and maximum val‐
1778 ues in the legend
1779
1780 Default value: n
1781
1782 AMD GPU temperatures and usage (amdgpu.pm)
1783 This graph is able to monitor an unlimited number of AMD GPUs as long
1784 as the driver provides a hwmon interface. Usually it is not guaranteed
1785 to always get the same hwmon path so it is advised to assign fixed
1786 links via udev rules.
1787
1788 list
1789 This is a list of groups of GPUs that you want to monitor. Each
1790 group will become a graph and there may be an unlimited number
1791 of groups. You can define device names like amd-w6800.
1792
1793 WARNING: Every time the number of groups in this option changes,
1794 Monitorix will resize the amdgpu.rrd file accordingly, removing
1795 all historical data.
1796
1797 To collect the GPU temperatures and usage data the hwmon subsys‐
1798 tem is used.
1799
1800 It is recommended that you first check if the hwmon subsystem is
1801 able to provide data from the GPU(s) that you plan to monitor.
1802 For example check /sys/class/hwmon/hwmon1 for available sensors.
1803
1804 You can add it to the group 0 like this:
1805
1806 <list>
1807 0 = amd-w6800, amd-rx6900
1808 1 = amd-wx5100
1809 </list>
1810
1811 The maximum number of GPUs allowed per group is 8.
1812
1813 sensors
1814 This list specifies the sensor locations in absolute paths. If a
1815 certain card does not have a specific sensor you leave the entry
1816 empty instead (/path/sensor_file1, , /path/sensor_file2). The
1817 order has to be: GPU busy percent, memory busy percent, GPU
1818 clock, memory clock, memory used, power consumption, power
1819 limit, fan pwm value, GPU temperature, junction temperature,
1820 memory temperature. Power consumption and limit will be shown in
1821 one plot.
1822
1823 <sensors>
1824 amd-rx6900 = /dev/amd-rx6900/device/gpu_busy_per‐
1825 cent, /dev/amd-rx6900/device/mem_busy_percent, /dev/amd-
1826 rx6900/freq1_input, /dev/amd-rx6900/freq2_input,
1827 /dev/amd-rx6900/device/mem_info_vram_used, /dev/amd-
1828 rx6900/power1_average, /dev/amd-rx6900/power1_cap,
1829 /dev/amd-rx6900/pwm1, /dev/amd-rx6900/temp1_input,
1830 /dev/amd-rx6900/temp2_input, /dev/amd-rx6900/temp3_input
1831 amd-wx5100 = /dev/amd-wx5100/device/gpu_busy_per‐
1832 cent, /dev/amd-wx5100/device/mem_busy_percent, /dev/amd-
1833 wx5100/freq1_input, /dev/amd-wx5100/freq2_input,
1834 /dev/amd-wx5100/device/mem_info_vram_used, /dev/amd-
1835 wx5100/power1_average, /dev/amd-wx5100/power1_cap,
1836 /dev/amd-wx5100/pwm1, /dev/amd-wx5100/temp1_input, ,
1837 </sensors>
1838
1839 map
1840 This list complements the list option. It basically allows you
1841 to change the GPU name that will appear in the graph, hiding the
1842 real device name. If no association is defined, then Monitorix
1843 will display the name of the GPU device as it is.
1844
1845 <map>
1846 amd-w6800 = W 6800
1847 amd-rx6900 = RX 6900
1848 </map>
1849
1850 desc
1851 This list complements the list option. It basically allows you
1852 to include a title for every group of GPUs. The title will ap‐
1853 pear in the title of the graph.
1854
1855 <desc>
1856 0 = Host
1857 1 = Virtual
1858 </desc>
1859
1860 coretemp_enabled
1861 This section enables or disables one of the alert capabilities
1862 for this graph; the alert for the core temperature. It works as
1863 follows:
1864
1865 If the core temperature of any of the specified GPU device names
1866 reaches or subceeds the coretemp_threshold (the interval of time
1867 is not used here), Monitorix will execute the external alert
1868 script defined in coretemp_script.
1869
1870 The default Monitorix installation includes an example of a
1871 shell-script alert called monitorix-alert.sh which you can use
1872 as a base for your own script.
1873
1874 Default value: n
1875
1876 coretemp_timeintvl
1877 Not used in this alert.
1878
1879 Default value: 0
1880
1881 coretemp_threshold
1882 This is the value that needs to be reached or subceeded to trig‐
1883 ger the mechanism for a particular action, which in this case is
1884 the execution of an external alert script.
1885
1886 Default value: 10
1887
1888 coretemp_script
1889 This is the full path name of the script that will be executed
1890 by this alert.
1891
1892 It will receive the following three parameters:
1893
1894 1st - the value currently defined in coretemp_timeintvl.
1895 2nd - the value currently defined in coretemp_threshold.
1896 3rd - the current core temperature.
1897
1898 Default value: /path/to/script.sh
1899
1900 memorytemp_enabled
1901 This section enables or disables one of the alert capabilities
1902 for this graph; the alert for the memory temperature. It works
1903 as follows:
1904
1905 If the memory temperature of any of the specified GPU names
1906 reaches or exceeds the memorytemp_threshold (the interval of
1907 time is not used here), Monitorix will execute the external
1908 alert script defined in memorytemp_script.
1909
1910 The default Monitorix installation includes an example of a
1911 shell-script alert called monitorix-alert.sh which you can use
1912 as a base for your own script.
1913
1914 Default value: n
1915
1916 memorytemp_timeintvl
1917 Not used in this alert.
1918
1919 Default value: 0
1920
1921 memorytemp_threshold
1922 This is the value that needs to be reached or exceeded to trig‐
1923 ger the mechanism for a particular action, which in this case is
1924 the execution of an external alert script.
1925
1926 Default value: 90
1927
1928 memorytemp_script
1929 This is the full path name of the script that will be executed
1930 by this alert.
1931
1932 It will receive the following three parameters:
1933
1934 1st - the value currently defined in memorytemp_timeintvl.
1935 2nd - the value currently defined in memorytemp_threshold.
1936 3rd - the current memory temperature.
1937
1938 Default value: /path/to/script.sh
1939
1940 accept_invalid_amdgpu
1941 During the init stage this graph verifies that every defined de‐
1942 vice name does exist in the system. If not, then the graph dis‐
1943 ables itself.
1944
1945 This option changes this behaviour and permits to continue work‐
1946 ing even if the device names defined doesn't exist. Keep in mind
1947 that you will continue seeing error messages in the logfile.
1948
1949 Default value: n
1950
1951 show_current_values
1952
1953 Print current values in the legend of the small righthand plots.
1954
1955 Default value: n
1956
1957 use_nan_for_missing_data
1958 This option, when enabled via y, shows nan values for missing
1959 data instead of 0. This is useful when 0 could be mistaken for
1960 valid data.
1961
1962 Default value: n
1963
1964 gap_on_all_nan
1965 This option, when enabled via y, combined with the show_gaps op‐
1966 tion shows gaps only if all data points are nan instead of re‐
1967 quiring only one to be nan for a gap. This can be useful if not
1968 all sensor data are required for normal operation.
1969
1970 Default value: n
1971
1972 respect_power_state
1973 This option, when enabled via y, will respect the AMD GPU D3
1974 power state. Monitorix won't wake up a GPU in D3 power state to
1975 check the sensors values but skip it. The power state sensor has
1976 to be specified via the ower_states option for each GPU that
1977 should be respected.
1978
1979 Default value: n
1980
1981 power_states
1982 This list complements the respect_power_state option. You can
1983 specify the power_state sensor for each GPU that should not be
1984 woken up if in D3.
1985
1986 <power_states>
1987 amd-w6800 = /dev/hwmon-w6800/device/power_state
1988 amd-rx6900 = /dev/hwmon-rx6900/device/power_state
1989 </power_states>
1990
1991 NVIDIA GPU temperatures and usage (nvidiagpu.pm)
1992 This graph is able to monitor an unlimited number of Nvidia GPUs via
1993 nvidia-smi.
1994
1995 list
1996 This is a list of groups of GPUs that you want to monitor. Each
1997 group will become a graph and there may be an unlimited number
1998 of groups.
1999
2000 WARNING: Every time the number of groups in this option changes,
2001 Monitorix will resize the nvidiagpu.rrd file accordingly, remov‐
2002 ing all historical data.
2003
2004 As identifier you can either use the GPU ID or the GPU UUID
2005 found via nvidia-smi --list-gpus. You can add it to the group 0
2006 like this:
2007
2008 <list>
2009 0 = 0, GPU-531b3e21-2fa4-1254-1215-2361f2d345ef
2010 1 = 2
2011 </list>
2012
2013 The maximum number of GPUs allowed per group is 8.
2014
2015 map
2016 This list complements the list option. It basically allows you
2017 to change the GPU name that will appear in the graph, hiding the
2018 real device name. If no association is defined, then Monitorix
2019 will display the name of the GPU device as it is.
2020
2021 <map>
2022 0 = RTX 3090
2023 GPU-531b3e21-2fa4-1254-1215-2361f2d345ef = RTX 3080
2024 2 = RTX 3080 Ti
2025 </map>
2026
2027 desc
2028 This list complements the list option. It basically allows you
2029 to include a title for every group of GPUs. The title will ap‐
2030 pear in the title of the graph.
2031
2032 <desc>
2033 0 = Host
2034 1 = Virtual
2035 </desc>
2036
2037 coretemp_enabled
2038 This section enables or disables one of the alert capabilities
2039 for this graph; the alert for the core temperature. It works as
2040 follows:
2041
2042 If the core temperature of any of the specified GPU device names
2043 reaches or subceeds the coretemp_threshold (the interval of time
2044 is not used here), Monitorix will execute the external alert
2045 script defined in coretemp_script.
2046
2047 The default Monitorix installation includes an example of a
2048 shell-script alert called monitorix-alert.sh which you can use
2049 as a base for your own script.
2050
2051 Default value: n
2052
2053 coretemp_timeintvl
2054 Not used in this alert.
2055
2056 Default value: 0
2057
2058 coretemp_threshold
2059 This is the value that needs to be reached or subceeded to trig‐
2060 ger the mechanism for a particular action, which in this case is
2061 the execution of an external alert script.
2062
2063 Default value: 10
2064
2065 coretemp_script
2066 This is the full path name of the script that will be executed
2067 by this alert.
2068
2069 It will receive the following three parameters:
2070
2071 1st - the value currently defined in coretemp_timeintvl.
2072 2nd - the value currently defined in coretemp_threshold.
2073 3rd - the current core temperature.
2074
2075 Default value: /path/to/script.sh
2076
2077 memorytemp_enabled
2078 This section enables or disables one of the alert capabilities
2079 for this graph; the alert for the memory temperature. It works
2080 as follows:
2081
2082 If the memory temperature of any of the specified GPU names
2083 reaches or exceeds the memorytemp_threshold (the interval of
2084 time is not used here), Monitorix will execute the external
2085 alert script defined in memorytemp_script.
2086
2087 The default Monitorix installation includes an example of a
2088 shell-script alert called monitorix-alert.sh which you can use
2089 as a base for your own script.
2090
2091 Default value: n
2092
2093 memorytemp_timeintvl
2094 Not used in this alert.
2095
2096 Default value: 0
2097
2098 memorytemp_threshold
2099 This is the value that needs to be reached or exceeded to trig‐
2100 ger the mechanism for a particular action, which in this case is
2101 the execution of an external alert script.
2102
2103 Default value: 90
2104
2105 memorytemp_script
2106 This is the full path name of the script that will be executed
2107 by this alert.
2108
2109 It will receive the following three parameters:
2110
2111 1st - the value currently defined in memorytemp_timeintvl.
2112 2nd - the value currently defined in memorytemp_threshold.
2113 3rd - the current memory temperature.
2114
2115 Default value: /path/to/script.sh
2116
2117 show_current_values
2118
2119 Print current values in the legend of the small righthand plots.
2120
2121 Default value: n
2122
2123 use_nan_for_missing_data
2124 This option, when enabled via y, shows nan values for missing
2125 data instead of 0. This is useful when 0 could be mistaken for
2126 valid data.
2127
2128 Default value: n
2129
2130 gap_on_all_nan
2131 This option, when enabled via y, combined with the show_gaps op‐
2132 tion shows gaps only if all data points are nan instead of re‐
2133 quiring only one to be nan for a gap. This can be useful if not
2134 all sensor data are required for normal operation.
2135
2136 Default value: n
2137
2138 NVIDIA temperatures and usage (nvidia.pm)
2139 This graph requires to have installed the official NVIDIA drivers.
2140
2141 max
2142 This is the number of NVIDIA cards currently plugged in your
2143 system.
2144
2145 The maximum allowed is 9.
2146
2147 Default value: 1
2148
2149 Disk drive temperatures and health (disk.pm)
2150 This graph is able to monitor an unlimited number of disk drives.
2151
2152 list
2153 This is a list of groups of disk drives that you want to moni‐
2154 tor. Each group will become a graph and there may be an unlim‐
2155 ited number of groups. You can define device names or paths to
2156 devices like /dev/disk/by-path/pci-0000:00:11.0-scsi-0:0:0:0.
2157
2158 WARNING: Every time the number of groups in this option changes,
2159 Monitorix will resize the disk.rrd file accordingly, removing
2160 all historical data.
2161
2162 To collect the disk drive temperatures and health the smartmon‐
2163 tools or the hddtemp command are required. Depending on the disk
2164 model reading smart values will wake up the disk and reset the
2165 sleep timer. To avoid waking them up set respect_standby = y but
2166 they still won't got to sleep automatically.
2167
2168 It is recommended that you first check if either smartctl(8) or
2169 hddtemp are able to collect data from the disk drive(s) that you
2170 plan to monitor. You may test this with the following command:
2171
2172 # hddtemp /dev/sda
2173 /dev/sda: WDC WD1600AABS-00M1A0: 48°C
2174
2175 If you see good results as above, you can add it to the group 0
2176 like this:
2177
2178 <list>
2179 0 = /dev/sda, /dev/disk/by-
2180 path/pci-0000:00:11.0-scsi-0:0:0:0
2181 1 = /dev/sdc, /dev/sdd
2182 </list>
2183
2184 The maximum number of disk device names allowed per group is 8.
2185
2186 map
2187 This list complements the list option. It basically allows you
2188 to change the disk name that will appear in the graph, hiding
2189 the real device name. If no association is defined, then Moni‐
2190 torix will display the name of the disk as it is.
2191
2192 <map>
2193 /dev/sda = "system disk"
2194 pci-0000:00:11.0-scsi-0:0:0:0 = "data disk"
2195 </map>
2196
2197 desc
2198 This list complements the list option. It basically allows you
2199 to include a title for every group of disk drives. The title
2200 will appear in the bottom of the graph.
2201
2202 <desc>
2203 0 = Local disks
2204 1 = Remote disks
2205 </desc>
2206
2207 realloc_enabled
2208 This section enables or disables one of the alert capabilities
2209 for this graph; the alert for the number of reallocated sectors
2210 in disk. It works as follows:
2211
2212 If the number of reallocated sectors in any of the specified
2213 disk device names reaches the realloc_threshold (the interval of
2214 time is not used here), Monitorix will execute the external
2215 alert script defined in realloc_script.
2216
2217 The default Monitorix installation includes an example of a
2218 shell-script alert called monitorix-alert.sh which you can use
2219 as a base for your own script.
2220
2221 Default value: n
2222
2223 realloc_timeintvl
2224 Not used in this alert.
2225
2226 Default value: 0
2227
2228 realloc_threshold
2229 This is the value that needs to be reached or exceeded to trig‐
2230 ger the mechanism for a particular action, which in this case is
2231 the execution of an external alert script.
2232
2233 Default value: 1
2234
2235 realloc_script
2236 This is the full path name of the script that will be executed
2237 by this alert.
2238
2239 It will receive the following three parameters:
2240
2241 1st - the value currently defined in realloc_timeintvl.
2242 2nd - the value currently defined in realloc_threshold.
2243 3rd - the current number of reallocated sectors.
2244
2245 Default value: /path/to/script.sh
2246
2247 pendsect_enabled
2248 This section enables or disables one of the alert capabilities
2249 for this graph; the alert for the number of current pending sec‐
2250 tors (or bad sectors) in disk. It works as follows:
2251
2252 If the number of current pending sectors in any of the specified
2253 disk device names reaches the pendsect_threshold (the interval
2254 of time is not used here), Monitorix will execute the external
2255 alert script defined in pendsect_script.
2256
2257 The default Monitorix installation includes an example of a
2258 shell-script alert called monitorix-alert.sh which you can use
2259 as a base for your own script.
2260
2261 Default value: n
2262
2263 pendsect_timeintvl
2264 Not used in this alert.
2265
2266 Default value: 0
2267
2268 pendsect_threshold
2269 This is the value that needs to be reached or exceeded to trig‐
2270 ger the mechanism for a particular action, which in this case is
2271 the execution of an external alert script.
2272
2273 Default value: 1
2274
2275 pendsect_script
2276 This is the full path name of the script that will be executed
2277 by this alert.
2278
2279 It will receive the following three parameters:
2280
2281 1st - the value currently defined in pendsect_timeintvl.
2282 2nd - the value currently defined in pendsect_threshold.
2283 3rd - the current number of pending sectors.
2284
2285 Default value: /path/to/script.sh
2286
2287 accept_invalid_disk
2288 During the init stage this graph verifies that every defined de‐
2289 vice name does exist in the system. If not, then the graph dis‐
2290 ables itself.
2291
2292 This option changes this behavior and permits to continue work‐
2293 ing even if the device names defined doesn't exist. Keep in mind
2294 that you will continue seeing error messages in the logfile.
2295
2296 Default value: n
2297
2298 respect_standby
2299 This option, when enabled via y, won't wake up disks if they are
2300 already in standby but also won't report new smart during
2301 standby.
2302
2303 Default value: n
2304
2305 use_nan_for_missing_data
2306 This option, when enabled via y, shows nan values for missing
2307 data instead of 0. This is useful when 0 could be mistaken for
2308 valid data.
2309
2310 Default value: n
2311
2312 gap_on_all_nan
2313 This option, when enabled via y, combined with the show_gaps op‐
2314 tion shows gaps only if all data points are nan instead of re‐
2315 quiring only one to be nan for a gap. This can be useful if not
2316 all sensor data are required for normal operation.
2317
2318 Default value: n
2319
2320 NVME drive temperatures and health (nvme.pm)
2321 This graph is able to monitor an unlimited number of nvme drives.
2322
2323 list
2324 This is a list of groups of nvme drives that you want to moni‐
2325 tor. Each group will become a graph and there may be an unlim‐
2326 ited number of groups. You can define device names or paths to
2327 devices like /dev/nvme0.
2328
2329 WARNING: Every time the number of groups in this option changes,
2330 Monitorix will resize the nvme.rrd file accordingly, removing
2331 all historical data.
2332
2333 To collect the nvme drive temperatures and health the smartmon‐
2334 tools command are required.
2335
2336 It is recommended that you first check if smartctl(8) is able to
2337 collect data from the nvme drive(s) that you plan to monitor.
2338 You may test this with the following command:
2339
2340 # smartctl -A /dev/nvme0
2341 === START OF SMART DATA SECTION ===
2342 SMART/Health Information (NVMe Log 0x02)
2343 Critical Warning: 0x00
2344 Temperature: 32 Celsius
2345 Available Spare: 100%
2346 Available Spare Threshold: 10%
2347 Percentage Used: 0%
2348 Data Units Read: 15,134,801 [7.74 TB]
2349 Data Units Written: 11,639,110 [5.95 TB]
2350 Host Read Commands: 108,213,874
2351 Host Write Commands: 84,023,019
2352 Controller Busy Time: 819
2353 Power Cycles: 94
2354 Power On Hours: 701
2355 Unsafe Shutdowns: 15
2356 Media and Data Integrity Errors: 0
2357 Error Information Log Entries: 0
2358 Warning Comp. Temperature Time: 0
2359 Critical Comp. Temperature Time: 0
2360 Temperature Sensor 1: 32 Celsius
2361 Temperature Sensor 2: 35 Celsius
2362
2363 If you see good results as above, you can add it to the group 0
2364 like this:
2365
2366 <list>
2367 0 = /dev/nvme0, /dev/nvme1
2368 1 = /dev/nvme2
2369 </list>
2370
2371 The maximum number of nvme device names allowed per group is 8.
2372
2373 map
2374 This list complements the list option. It basically allows you
2375 to change the nvme drive name that will appear in the graph,
2376 hiding the real device name. If no association is defined, then
2377 Monitorix will display the name of the nvme drive as it is.
2378
2379 <map>
2380 /dev/nvme = "system disk"
2381 pci-0000:00:11.0-scsi-0:0:0:0 = "data disk"
2382 </map>
2383
2384 desc
2385 This list complements the list option. It basically allows you
2386 to include a title for every group of nvme drives. The title
2387 will appear in the bottom of the graph.
2388
2389 <desc>
2390 0 = Individual drives
2391 1 = RAID
2392 </desc>
2393
2394 availspare_enabled
2395 This section enables or disables one of the alert capabilities
2396 for this graph; the alert for the normalized percentage (0 to
2397 100%) of the remaining spare capacity available. It works as
2398 follows:
2399
2400 If the percentage of available spare space in any of the speci‐
2401 fied nvme device names reaches or subceeds the avails‐
2402 pare_threshold (the interval of time is not used here), Moni‐
2403 torix will execute the external alert script defined in avails‐
2404 pare_script.
2405
2406 The default Monitorix installation includes an example of a
2407 shell-script alert called monitorix-alert.sh which you can use
2408 as a base for your own script.
2409
2410 Default value: n
2411
2412 availspare_timeintvl
2413 Not used in this alert.
2414
2415 Default value: 0
2416
2417 availspare_threshold
2418 This is the value that needs to be reached or subceeded to trig‐
2419 ger the mechanism for a particular action, which in this case is
2420 the execution of an external alert script.
2421
2422 Default value: 10
2423
2424 availspare_script
2425 This is the full path name of the script that will be executed
2426 by this alert.
2427
2428 It will receive the following three parameters:
2429
2430 1st - the value currently defined in availspare_timeintvl.
2431 2nd - the value currently defined in availspare_threshold.
2432 3rd - the current percentage number of available spare space.
2433
2434 Default value: /path/to/script.sh
2435
2436 percentused_enabled
2437 This section enables or disables one of the alert capabilities
2438 for this graph; the alert for the the percentage of NVM subsys‐
2439 tem life used based on the actual usage and the manufacturer's
2440 prediction of NVM life. It works as follows:
2441
2442 If the life percentage used in any of the specified nvme device
2443 names reaches or exceeds the percentused_threshold (the interval
2444 of time is not used here), Monitorix will execute the external
2445 alert script defined in percentused_script.
2446
2447 The default Monitorix installation includes an example of a
2448 shell-script alert called monitorix-alert.sh which you can use
2449 as a base for your own script.
2450
2451 Default value: n
2452
2453 percentused_timeintvl
2454 Not used in this alert.
2455
2456 Default value: 0
2457
2458 percentused_threshold
2459 This is the value that needs to be reached or exceeded to trig‐
2460 ger the mechanism for a particular action, which in this case is
2461 the execution of an external alert script.
2462
2463 Default value: 90
2464
2465 percentused_script
2466 This is the full path name of the script that will be executed
2467 by this alert.
2468
2469 It will receive the following three parameters:
2470
2471 1st - the value currently defined in percentused_timeintvl.
2472 2nd - the value currently defined in percentused_threshold.
2473 3rd - the current number of life percentage used.
2474
2475 Default value: /path/to/script.sh
2476
2477 accept_invalid_nvme
2478 During the init stage this graph verifies that every defined de‐
2479 vice name does exist in the system. If not, then the graph dis‐
2480 ables itself.
2481
2482 This option changes this behavior and permits to continue work‐
2483 ing even if the device names defined doesn't exist. Keep in mind
2484 that you will continue seeing error messages in the logfile.
2485
2486 Default value: n
2487
2488 show_extended_plots
2489
2490 Show additional plots for mean read and written bytes per sec‐
2491 ond, total bytes read and written, media errors and unsafe shut‐
2492 downs
2493
2494 Default value: y
2495
2496 show_current_values
2497
2498 Print current values in the legend of the small righthand plots.
2499
2500 Default value: n
2501
2502 use_nan_for_missing_data
2503 This option, when enabled via y, shows nan values for missing
2504 data instead of 0. This is useful when 0 could be mistaken for
2505 valid data.
2506
2507 Default value: n
2508
2509 gap_on_all_nan
2510 This option, when enabled via y, combined with the show_gaps op‐
2511 tion shows gaps only if all data points are nan instead of re‐
2512 quiring only one to be nan for a gap. This can be useful if not
2513 all sensor data are required for normal operation.
2514
2515 Default value: n
2516
2517 Filesystem usage and I/O activity (fs.pm)
2518 This graph is able to monitor an unlimited number of filesystems.
2519
2520 list
2521 This is a list of groups of mounted filesystems that you want to
2522 monitor. Each group will become a graph and there may be an un‐
2523 limited number of groups.
2524
2525 WARNING: Every time the number of groups in this option changes,
2526 Monitorix will resize the fs.rrd file accordingly, removing all
2527 historical data.
2528
2529 Take special care to use the same name as appears in the output
2530 of the df(1) command (the swap device is a special case). An ex‐
2531 ample would be:
2532
2533 <list>
2534 0 = /, swap, boot, home, /mnt/backup
2535 </list>
2536
2537 The maximum number of filesystems allowed per group is 8.
2538
2539 desc
2540 This list complements the list option. It basically allows you
2541 to change the name that will appear in the graph, hiding the
2542 real name of the mount point. If no association is defined, then
2543 Monitorix will display the name specified in the list option.
2544
2545 <desc>
2546 / = Root FS
2547 /home = My Home
2548 /mnt/backup = Backups
2549 </desc>
2550
2551 You can define as much entries as you want.
2552
2553 devmap
2554 This optional list complements the list option. When Monitorix
2555 is started, and in order to be able to show I/O activity, it at‐
2556 tempts to detect the mapping of devices specified in list, as
2557 defined in the df command output column "Mounted on". In the
2558 event that devices are not detected by Monitorix, the devmap op‐
2559 tion shall be used to manually define them, according to the un‐
2560 derlying OS:
2561
2562 Linux (kernel > 2.4)
2563 <devmap> device must match a device listed in the
2564 "/proc/diskstats" file.
2565
2566 Linux (kernel <= 2.4)
2567 <devmap> is not used, but because something is de‐
2568 fined in <devmap>, Monitorix will extract
2569 "disk_io" lines from the "/proc/stat" file.
2570
2571 FreeBSD
2572 <devmap> device recognized by the output of "io‐
2573 stat -xI <dev>" command.
2574
2575 OpenBSD and NetBSD
2576 <devmap> is not used, but because something is de‐
2577 fined in <devmap>, Monitorix will use the output
2578 of "iostat -DI" command.
2579
2580 Just an example:
2581 <devmap>
2582 /mnt/home = dm-1
2583 /mnt/backup = cciss/c0d2p6
2584 </devmap>
2585
2586 You can define as much entries as you want.
2587
2588 alerts
2589 This optional list enables the alert capabilities for this graph
2590 and complements with the list option. Each alert has three
2591 fields separated by comma: the time interval, the threshold and
2592 the path to the script to be executed.
2593
2594 The time interval is the period of time (in seconds) that the
2595 threshold needs to be exceeded before the external script is ex‐
2596 ecuted.
2597
2598 The threshold is the percentage of disk space used in the file
2599 system that needs to be reached or exceeded within the specified
2600 time in time interval to execute the external script.
2601
2602 The script is the full path name of the script that will be exe‐
2603 cuted by this alert.
2604
2605 Each defined filesystem has its own alert.
2606
2607 The default Monitorix installation includes an example of a
2608 shell-script alert called monitorix-alert.sh which you can use
2609 as a base for your own script.
2610
2611 The following is an example of an alert defined for the root
2612 filesystem:
2613
2614 <alerts>
2615 / = 3600, 98, /path/to/script.sh
2616 </alerts>
2617
2618 Such alert means that if the percentage of disk space used in
2619 the root filesystem reaches or exceeds 98 (more than 98) during
2620 at least one hour (3600 seconds) the script in
2621 /path/to/script.sh will be executed.
2622
2623 The external script will receive the following arguments:
2624
2625 1st - the value defined as time interval.
2626 2nd - the value defined as threshold.
2627 3rd - the filesystem disk usage.
2628
2629 use_nan_for_missing_data
2630 This option, when enabled via y, shows nan values for missing
2631 data instead of 0. This is useful when 0 could be mistaken for
2632 valid data.
2633
2634 Default value: n
2635
2636 gap_on_all_nan
2637 This option, when enabled via y, combined with the show_gaps op‐
2638 tion shows gaps only if all data points are nan instead of re‐
2639 quiring only one to be nan for a gap. This can be useful if not
2640 all sensor data are required for normal operation.
2641
2642 Default value: n
2643
2644 has_removable_devices
2645 This option, when enabled via y, solves the problem with those
2646 hotpluggable devices that were offline when Monitorix was
2647 started, and later when they went online Monitorix don't know
2648 their device names and do not appear in the I/O statistics
2649 graphs, unless you restart Monitorix. So, when this option is
2650 enabled Monitorix will re-check the devices on every update.
2651
2652 Default value: n
2653
2654 ZFS statistics (zfs.pm)
2655 This graph is able to monitor an unlimited number of pools.
2656
2657 max_pools
2658 This is the maximum number of pools that you can define in list.
2659 There is no limit to the number of pools monitored, but keep in
2660 mind that every time this number changes, Monitorix will resize
2661 the zfs.rrd file accordingly, removing all historical data.
2662
2663 Default value: 5
2664
2665 list
2666 This is a comma-separated list of pool names. The number of pool
2667 names defined here can't be greater than the number defined in
2668 max_pools.
2669
2670 Directory usage statistics (du.pm)
2671 This graph is able to monitor the usage of an unlimited number of di‐
2672 rectories.
2673
2674 IMPORTANT NOTE: The du command makes intensive disk I/O access that
2675 might slow down the whole system. Moreover, continued executions of
2676 this command will affect the buffer cache mechanism and this will also
2677 increase the system response time. To reduce executions refresh_inter‐
2678 val can be specified in seconds (Use 0 for default refresh interval).
2679
2680 list
2681 This is a comma-separated list that describes the groups of di‐
2682 rectories in desc. Put one description for each group. For every
2683 group specified you need to specify its directories in the desc
2684 option.
2685
2686 WARNING: Every time the number of entries in this option
2687 changes, Monitorix will resize the du.rrd file accordingly, re‐
2688 moving all historical data.
2689
2690 An example would be:
2691
2692 list = System, Users
2693
2694 desc
2695 This is a list of directories per group defined.
2696
2697 <desc>
2698 0 = /var/spool/mail, /var/spool/mqueue, /etc, /var/ftp,
2699 /tmp
2700 1 = /home/ace, /home/gene, /home/paul, /home/peter
2701 </desc>
2702
2703 The maximum number of directories allowed for each group is 9.
2704
2705 type
2706 This specifies the information that will be presented for each
2707 directory specified in each list. It accepts two possible val‐
2708 ues:
2709
2710 size for the directory size (which is the default op‐
2711 tion).
2712 files for the number of files inside the directory.
2713
2714 An example would be:
2715
2716 <type>
2717 0 = size
2718 1 = files
2719 </type>
2720
2721 dirmap
2722 This list complements the desc option. It basically allows you
2723 to change the name that will appear in the graph, hiding the
2724 real name of the directory. If no association is defined, then
2725 Monitorix will display the name specified in the desc option.
2726
2727 graphs_per_row
2728 This is the number of graphs that will be put in a row.
2729
2730 Default value: 2
2731
2732 extra_args
2733 This option includes any extra argument to the du command exe‐
2734 cuted by Monitorix, which is "du -ks". This is specially useful
2735 if you want to skip directories on different file systems, in
2736 this case just define this option like this:
2737
2738 extra_args = "-x"
2739
2740 IMPORTANT NOTICE: Keep in mind that including certain flags like
2741 '-h' (which gives results in human readable format) could make
2742 Monitorix unable to interpret the results.
2743
2744 refresh_interval
2745 Refresh interval in seconds. This is an option to reduce the ex‐
2746 ecution of the du command and undesired side effects caused by
2747 this. Default value 0 means normal refresh with all other plots.
2748 Besides the default meaningful values are from 60 to 86400.
2749 Keep in mind that changing the refresh_interval is possible
2750 without loosing history but changing the interval to a smaller
2751 one will introduce gaps in the data at the transition point.
2752
2753 Default value: 0
2754
2755 use_nan_for_missing_data
2756 This option, when enabled via y, shows nan values for missing
2757 data instead of 0. This is useful when 0 could be mistaken for
2758 valid data.
2759
2760 Default value: n
2761
2762 gap_on_all_nan
2763 This option, when enabled via y, combined with the show_gaps op‐
2764 tion shows gaps only if all data points are nan instead of re‐
2765 quiring only one to be nan for a gap. This can be useful if not
2766 all sensor data are required for normal operation.
2767
2768 Default value: n
2769
2770 Network traffic and usage (net.pm)
2771 max
2772 This is the maximum number of network interfaces that you can
2773 define in list. There is no limit, but keep in mind that every
2774 time this number changes, Monitorix will resize the net.rrd file
2775 accordingly, removing all historical data.
2776
2777 Default value: 10
2778
2779 list
2780 This is a comma-separated list of network interfaces that you
2781 may want to monitor. An example would be:
2782
2783 list = eth0, eth1
2784
2785 desc
2786 This is the option where each network interface specified in
2787 list is described. Each definition consists of three parameters
2788 separated by comma: the description of the interface and the
2789 rigid and limit values.
2790
2791 Put one description for each interface listed. An example would
2792 be:
2793
2794 <desc>
2795 eth0 = FastEthernet LAN, 0, 1000
2796 eth1 = ADSL 10Mbs Internet, 0, 1000
2797 </desc>
2798
2799 gateway
2800 This is where the network interface that acts as the gateway for
2801 this server is defined. This is mainly used if you plan to moni‐
2802 tor network traffic usage of your devices/networks using the
2803 traffacct graph below.
2804
2805 Netstat statistics (netstat.pm)
2806 This graph shows the state of the all IPv4 and IPv6 network connec‐
2807 tions.
2808
2809 Only the command to be used can be set here, besides the limit and
2810 rigid values.
2811
2812 cmd
2813 This is the command that will be used to gather statistics.
2814 There are two possible values:
2815
2816 ss
2817 netstat
2818
2819 Default value: ss
2820
2821 Tinyproxy statistics (tinyproxy.pm)
2822 This graph is able to monitor an unlimited number of Tinyproxy instal‐
2823 lations.
2824
2825 list
2826 This is a comma-separated list of URLs of Tinyproxys.
2827
2828 WARNING: Every time the number of entries in this option
2829 changes, Monitorix will resize the tinyproxy.rrd file accord‐
2830 ingly, removing all historical data.
2831
2832 Default value: http://your.proxy.com/
2833
2834 desc
2835 This list complements the list option, it defines the URL from
2836 where Monitorix must gather the statistics for each Tinyproxy
2837 defined.
2838
2839 An example of this option would be:
2840
2841 <desc>
2842 http://your.proxy.com = http://tinyproxy.stats
2843 </desc>
2844
2845 show_url
2846 If set to y Monitorix will show the original URL of each
2847 Tinyproxy at the bottom of the graph. For security reasons you
2848 may want to hide this information.
2849
2850 Default value: y
2851
2852 Traffic Control statistics (tc.pm)
2853 This graph is able to monitor an unlimited number of network interfaces
2854 managed by the tc command.
2855
2856 list
2857 This is a comma-separated list of network interfaces that you
2858 may want to monitor. An example would be:
2859
2860 list = eth0, eth1
2861
2862 desc
2863 This is the option where you define the queue disciplines you
2864 want to monitor for each network interface specified in list.
2865
2866 An example would be:
2867
2868 <desc>
2869 eth0 = cbq 1, sfq 10, sfq 20, sfq 30, ingress ffff
2870 eth1 = htb 1, pfifo 20, pfifo 21, pfifo 22
2871 </desc>
2872
2873 The maximum number of qdiscs allowed is 9.
2874
2875 map
2876 This option complements the desc option. It basically allows you
2877 to change the name of the qdiscs that will appear in the graphs.
2878 If no association is defined, then Monitorix will show the name
2879 as specified in the desc option.
2880
2881 Since the qdisc names have the space character in their names,
2882 they can't be used as the key in the association, instead you
2883 must the use their position number (starting by 0) in the desc
2884 option.
2885
2886 An example would be:
2887
2888 <map>
2889 <eth0>
2890 0 = Class Based Queueing
2891 1 = Stochastic Fairness Queueing 10
2892 </eth0>
2893 <eth1>
2894 0 = Hierarchical Token Bucket
2895 </eth1>
2896 </map>
2897
2898 Libvirt statistics (libvirt.pm)
2899 This graph is able to monitor an unlimited number of virtual machines
2900 managed by Libvirt.
2901
2902 cmd
2903 This is the command that will be used to gather statistics from
2904 each virtual machine listed in list.
2905
2906 Default value: virsh
2907
2908 An example would be:
2909
2910 cmd = virsh -r -c qemu:///session
2911
2912 list
2913 This is a list of groups of virtual machines that you want to
2914 monitor. Each group will become a graph and there may be an un‐
2915 limited number of groups.
2916
2917 WARNING: Every time the number of groups in this option changes,
2918 Monitorix will resize the libvirt.rrd file accordingly, removing
2919 all historical data.
2920
2921 An example would be:
2922
2923 <list>
2924 0 = centos6, winxp
2925 </list>
2926
2927 The maximum number of virtual machines allowed per group is 8.
2928
2929 desc
2930 This list complements the list option and is mandatory for every
2931 virtual machine listed. You must define the virtual block device
2932 and the MAC address of the virtual network device that you want
2933 to monitor for every virtual machine. Just like this:
2934
2935 <desc>
2936 centos6 = CentOS 6, vda, 52:54:00:45:d0:e7
2937 winxp = MS Windows XP, hda, 52:54:00:97:1c:e5
2938 </desc>
2939
2940 You might also define this list using sections for each virtual
2941 machine, this way you'll be able to define multiple disks and
2942 multiple network interfaces for each virtual machine. Just like
2943 this:
2944
2945 <desc>
2946 <centos6>
2947 desc = "CentOS 6"
2948 disk = vda, vdb, vdc
2949 net = 52:54:00:45:d0:e7, 52:54:00:45:d0:e8
2950 </centos6>
2951 </desc>
2952
2953 To obtain all these values you might want to use the following
2954 commands:
2955
2956 # virsh domblklist centos6
2957 Target Source
2958 ------------------------------------------------
2959 vda /home/jordi/kvm/centos6.img
2960 hdc -
2961
2962 # virsh domiflist centos6
2963 Interface Type Source Model MAC
2964 -------------------------------------------------------
2965 vnet3 network default virtio 52:54:00:45:d0:e7
2966
2967 This option also allows you to change the name that will appear
2968 in the graph, hiding the real name of the virtual machine. If no
2969 association is defined, then Monitorix will display the name
2970 specified in the list option.
2971
2972 Process statistics (process.pm)
2973 This graph is able to monitor an unlimited number of processes. This
2974 graph requires a Linux kernel version 2.6.20 at least to support
2975 process I/O accounting. Some systems with older kernels might also have
2976 been ported it though.
2977
2978 list
2979 This is a list of groups of processes that you want to monitor.
2980 Each group will become a graph and there may be an unlimited
2981 number of groups.
2982
2983 WARNING: Every time the number of groups in this option changes,
2984 Monitorix will resize the process.rrd file accordingly, removing
2985 all historical data.
2986
2987 Monitorix uses the following command to find the processes
2988 listed in this option:
2989
2990 # ps -eo pid,comm,command
2991
2992 Therefore names in the process list can be either exactly to the
2993 process name as it appears in the comm columns, or just a sub‐
2994 string of the process name that appears in the command column.
2995
2996 An example of this option would be:
2997
2998 <list>
2999 0 = httpd, sshd, ntpd, mysqld, proftpd, clamd, imap,
3000 sendmail, named, bash
3001 </list>
3002
3003 The maximum number of processes allowed per group is 10.
3004
3005 desc
3006 This list complements the list option. It basically allows you
3007 to change the name that will appear in the graph, hiding the
3008 real name of the process. If no association is defined, then
3009 Monitorix will display the name specified in the list option.
3010
3011 <desc>
3012 httpd = Apache
3013 imap = Dovecot
3014 named = Bind
3015 </desc>
3016
3017 You can define as much entries as you want.
3018
3019 time_unit
3020 This is the unit in which will appear the values in the uptime
3021 graph. Possible values are: minute, hour or day. It will default
3022 to day even if none is specified.
3023
3024 System services demand (serv.pm)
3025 This graph is able to monitor an unlimited number of system services or
3026 any application that has a log file.
3027
3028 list
3029 This is a list of groups of services that you plan to monitor.
3030 Each group will become a graph and there may be an unlimited
3031 number of groups.
3032
3033 WARNING: Every time the number of groups in this option changes,
3034 Monitorix will resize the serv.rrd file accordingly, removing
3035 all historical data.
3036
3037 An example of this option would be:
3038
3039 <list>
3040 Default = SSH, FTP, TELNET, IMAP, Samba, Fax, CUPS,
3041 POP3, SMTP, Spam, Virus, Fail2ban
3042 </list>
3043
3044 The maximum number of services allowed per group is 16.
3045
3046 desc
3047 This list complements the list option. It basically allows you
3048 to define how Monitorix will monitor such service.
3049
3050 You must use the same name of service that you defined in list
3051 followed by an equal sign and a number of values. The first
3052 value indicates if this will be a C (counter) or a G (gauge).
3053 Counters are perfect for values that accumulate on every sample
3054 (match lines in logfiles), Gauges are for values that can change
3055 on every new sample (disk usage, Samba users, etc). The second
3056 value indicates the logfile from where Monitorix will extract
3057 the information. It must be prefixed with file: to indicate that
3058 it's a file. If you need to use the output of a program instead,
3059 then you can prefix it with exec: and Monitorix will run this
3060 script and will use its output as if it was the logfile.
3061
3062 The third value is the first regular expression that Monitorix
3063 will use to match lines. It's normally used as the date that ap‐
3064 pears in the log file.
3065
3066 The forth and last value is a group of regular expressions sepa‐
3067 rated by a plus sign. You can prefix a regular expresion with i:
3068 in order to note that it must be insensitive case.
3069
3070 You can create multiple definitions of the same service with
3071 different values, so you are able to combine similar services
3072 into one single metric.
3073
3074 <desc>
3075 SSH = C, file:/var/log/secure, "^%b %e",
3076 "sshd\[.*\]: Accepted "
3077 Spam = C, file:/var/log/maillog, "^%b %e",
3078 "MailScanner.*Spam Checks:.*Found.*spam messages" +
3079 "amavis\[.* SPAM"
3080 Spam = C, file:/var/log/sa-update.log, "^%b %e",
3081 "spamd: identified spam"
3082 SMTP = C, file:/var/log/maillog, "^%b %e",
3083 i:"to=.*stat(us)?=sent"
3084 IMAP = C, file:/var/log/uwimap, "%b %d", " imapd\[.*
3085 Login user="
3086 IMAP = C, file:/var/log/dovecot, "%b %d", " imap-lo‐
3087 gin: .* Login: "
3088 Samba = G, exec:/usr/local/bin/samba.sh, "", ""
3089 POP3 = C, file:/var/log/uwimap, "%b %d", "
3090 ipop3d\[.* Login user="
3091 POP3 = C, file:/var/log/dovecot, "%b %d", " pop3-lo‐
3092 gin: .* Login: "
3093 </desc>
3094
3095 You can define as much entries as you want.
3096
3097 mode
3098 This option toggles the way the System Services Demand data is
3099 represented in the graph. There are two possible values:
3100
3101 i for incremental style.
3102 l for load (peaks) style.
3103
3104 Default value: i
3105
3106 graphs_per_row
3107 This is the number of graphs that will be put in a row.
3108
3109 Default value: 2
3110
3111 Mail statistics (mail.pm)
3112 This graph requires either MailScanner or amavisd-new mail scanners in
3113 order to account spam and virus emails. Spamassassin and Clamav an‐
3114 tivirus are also used for spam and virus email accounting.
3115
3116 mta
3117 This option specifies the MTA that Monitorix will use to collect
3118 mail statistics. The currently supported MTAs are:
3119 Sendmail
3120 Postfix
3121 Exim
3122
3123 NOTE: the pflogsumm utility is required when using the Postfix
3124 MTA.
3125
3126 Default value: sendmail
3127
3128 greylist
3129 This option specifies the Greylisting implementation that Moni‐
3130 torix will use to collect statistical information.
3131
3132 The currently supported Greylisting software is:
3133 milter-greylist
3134 postgrey
3135
3136 In the case of milter-greylist, Monitorix shows the same data
3137 that appears at the end of the file greylist.db.
3138
3139 In the case of Postgrey, Monitorix reads the mail_log file and
3140 searches for a specific type of lines. Lines of type "ac‐
3141 tion=greylist, reason=new" appear as Greylisted in the graph.
3142 Lines of type "action=greylist, reason=early-retry" appear as
3143 Delayed in the graph. Lines of type "action=pass, reason=triplet
3144 found" appear as Passed in the graph. And finally, lines of type
3145 "action=pass, reason=client whitelist" appear as Whitelisted in
3146 the graph.
3147
3148 Default value: milter-greylist
3149
3150 stats_rate
3151 This option only affects the Mail Statistics and the Greylisting
3152 graphs, and it specifies the rate in which the values are saved
3153 and shown. This option has two possible values:
3154 real
3155 per_second
3156
3157 If it's set to its default value (real), it will show the mes‐
3158 sages as in a 'per minute' rate. Since Monitorix collects data
3159 on every minute, this should be the preferred way to see the re‐
3160 sults.
3161
3162 In the other hand, and in order to keep backwards compatibility,
3163 if this option is missing in the configuration file, it will act
3164 as if it was set up as per_second, which means that the number
3165 of messages collected in each minute will be divided by 60.
3166
3167 Default value: real
3168
3169 delvd_enabled
3170 This section enables or disables one of the alert capabilities
3171 for this graph; the alert for the number of delivered messages.
3172 It works as follows:
3173
3174 If the number of delivered messages reaches the delvd_threshold
3175 value for the interval of time defined in delvd_timeintvl, Moni‐
3176 torix will execute the external alert script defined in
3177 delvd_script.
3178
3179 The default Monitorix installation includes an example of a
3180 shell-script alert called monitorix-alert.sh which you can use
3181 as a base for your own script.
3182
3183 Default value: n
3184
3185 delvd_timeintvl
3186 This is the period of time (in seconds) that the threshold needs
3187 to be exceeded before the external alert script is executed.
3188
3189 Default value: 60
3190
3191 delvd_threshold
3192 This is the value that needs to be reached or exceeded within
3193 the specified time period in delvd_timeintvl to trigger the
3194 mechanism for a particular action, which in this case is the ex‐
3195 ecution of an external alert script.
3196
3197 The value of this option is compared against the number of de‐
3198 livered messages since the last delvd_timeintvl seconds.
3199
3200 Default value: 100
3201
3202 delvd_script
3203 This is the full path name of the script that will be executed
3204 by this alert.
3205
3206 It will receive the following three parameters:
3207
3208 1st - the value currently defined in delvd_timeintvl.
3209 2nd - the value currently defined in delvd_threshold.
3210 3rd - the number of delivered messages.
3211
3212 Default value: /path/to/script.sh
3213
3214 mqueued_enabled
3215 This section enables or disables one of the alert capabilities
3216 for this graph; the alert for the number of queued messages. It
3217 works as follows:
3218
3219 If the number of queued messages reaches the mqueued_threshold
3220 value for the interval of time defined in mqueued_timeintvl,
3221 Monitorix will execute the external alert script defined in
3222 mqueued_script.
3223
3224 The default Monitorix installation includes an example of a
3225 shell-script alert called monitorix-alert.sh which you can use
3226 as a base for your own script.
3227
3228 Default value: n
3229
3230 mqueued_timeintvl
3231 This is the period of time (in seconds) that the threshold needs
3232 to be exceeded before the external alert script is executed.
3233
3234 Default value: 3600
3235
3236 mqueued_threshold
3237 This is the value that needs to be reached or exceeded within
3238 the specified time period in mqueued_timeintvl to trigger the
3239 mechanism for a particular action, which in this case is the ex‐
3240 ecution of an external alert script.
3241
3242 The value of this option is compared with the number of messages
3243 in the mail queue.
3244
3245 Default value: 100
3246
3247 mqueued_script
3248 This is the full path name of the script that will be executed
3249 by this alert.
3250
3251 It will receive the following three parameters:
3252
3253 1st - the value currently defined in mqueued_timeintvl.
3254 2nd - the value currently defined in mqueued_threshold.
3255 3rd - the number of messages in the mail queue.
3256
3257 Default value: /path/to/script.sh
3258
3259 Network port traffic (port.pm)
3260 This graph requires the iptables(8) command and optionally the ip6ta‐
3261 bles(8) command on Linux systems and the ipfw command on *BSD systems.
3262
3263 max
3264 This is the number of network ports that you want to monitor.
3265 There is no limit to the number of ports monitored, but keep in
3266 mind that every time this number changes, Monitorix will resize
3267 the port.rrd file accordingly, removing all historical data.
3268
3269 Default value: 9
3270
3271 rule
3272 This is the rule number that Monitorix will use when using the
3273 ipfw command to manage network port activity on *BSD systems.
3274 Change it if you think it might conflict with any other rule
3275 number.
3276
3277 Default value: 24000
3278
3279 list
3280 You may define here up to max network port numbers. If you need
3281 to monitor the same network port with TCP and UDP protocols, you
3282 can add your own suffix to the port number (e.g: 443t and 443u)
3283 in order to distinguish it from the double definition in the
3284 <desc> block. It also support port ranges (e.g: 49152:65534) to
3285 be able to monitor the traffic of a number of consecutive ports
3286 summarized on a unique graph.
3287
3288 If you see a red color in the background of a network port
3289 graph, it means that there is not a daemon listening on that
3290 port. This can be useful to know if some service gone down unex‐
3291 pectedly. Of course, this is only valid on a single port, not
3292 ranged ports.
3293
3294 desc
3295 This is the option where each network port specified in list is
3296 described. Each port definition consists of six parameters sepa‐
3297 rated by comma:
3298 - an small port description.
3299 - the network protocol (tcp or udp).
3300 - the connection type (in, out or in/out).
3301 - the rigid value.
3302 - the limit value.
3303 - the L optional option which specifies that this port
3304 should be listening and Monitorix will advice it, by
3305 changing the background color of the graph to red, if
3306 finds it down. This option has no effect on ranged ports.
3307
3308 There is also support (Linux only) for IPv6 network ports activ‐
3309 ity by using protocol names as tcp6 or udp6.
3310
3311 An example would be:
3312 list = 25, 25ip6, 80, 53t, 53u, 49152:65534
3313 <desc>
3314 25 = SMTP, tcp, in/out, 0, 1000, L
3315 25ip6 = SMTP, tcp6, in/out, 0, 1000, L
3316 80 = HTTP, tcp, in, 0, 1000, L
3317 53t = DNS, tcp, in, 0, 1000, L
3318 53u = DNS, udp, in, 0, 1000, L
3319 49152:65534 = FTP_PSV, tcp, in, 0, 1000
3320 </desc>
3321
3322 As you can see, you cannot use the same port number twice. In‐
3323 stead, you must distinguish it with some suffix. Monitorix will
3324 automatically extract all the first numeric digits, and will use
3325 that value as the network port number.
3326
3327 graphs_per_row
3328 This is the number of graphs that will be put in a row. Consider
3329 the interaction of this parameter with the max option in order
3330 to adjust the size and number of graphs in relation to your hor‐
3331 izontal screen size.
3332
3333 Default value: 3
3334
3335 size
3336 This is the size of the graphs of the ports. It currently ac‐
3337 cepts up to 8 different size names: large, main, medium,
3338 medium2, small, mini, tiny, zoom and remote. You can check the
3339 resolution of each size in the configuration file, inside the
3340 list named graph_size.
3341
3342 Default value: mini
3343
3344 cmd
3345 This option is used only under Linux systems. It is intended to
3346 define the command (with or without its complete path) that will
3347 be used to test if the network port is down (not listening).
3348 Currently there are only two possible values:
3349
3350 ss
3351 netstat
3352
3353 Default value: ss
3354
3355 Users using the system (user.pm)
3356 Only the limit and rigid values can be set here.
3357
3358 FTP statistics (ftp.pm)
3359 This graph supports currently ProFTPD, vsftpd and Pure-FTPd log file
3360 formats.
3361
3362 For best results with the ProFTPD server I recommend to add the follow‐
3363 ing line in its configuration file:
3364
3365 ExtendedLog /var/log/proftpd/access.log AUTH,DIRS,READ,WRITE
3366
3367 For best results with the vsftpd server I recommend to setup the option
3368 xferlog_std_format to NO, and the option ftp_log to /var/log/vs‐
3369 ftpd.log.
3370
3371 Pure-FTPd users might want to consider using the system syslog logfile.
3372
3373 server
3374 This option specifies the FTP server. The currently supported
3375 FTP servers are:
3376 ProFTPD
3377 vsftpd
3378 Pure-FTPd
3379
3380 Default value: proftpd
3381
3382 anon_user
3383 This option lists the different names (separated by comma) that
3384 can adopt the Anonymous user in the FTP server defined in
3385 server.
3386
3387 Default value: anonymous, ftp
3388
3389 Apache statistics (apache.pm)
3390 This graph requires that mod_status be loaded and ExtendedStatus option
3391 set to On in order to collect full status information of the Apache web
3392 server.
3393
3394 This graph is able to monitor an unlimited number of local and remote
3395 Apache web servers.
3396
3397 list
3398 This is a comma-separated list of URLs of the monitored Apache
3399 web servers.
3400
3401 WARNING: Every time the number of entries in this option
3402 changes, Monitorix will resize the apache.rrd file accordingly,
3403 removing all historical data.
3404
3405 Default value: http://localhost/server-status?auto
3406
3407 alerts
3408 This optional list enables the alert capabilities for this graph
3409 and complements with the list option. Each alert has three
3410 fields separated by comma: the time interval, the threshold and
3411 the path to the script to be executed.
3412
3413 The time interval is the period of time (in seconds) that the
3414 threshold needs to be exceeded before the external script is ex‐
3415 ecuted.
3416
3417 The threshold is the number of remaining free slots that needs
3418 to be reached or exceeded within the specified time in time in‐
3419 terval to execute the external script.
3420
3421 The script is the full path name of the script that will be exe‐
3422 cuted by this alert.
3423
3424 Each defined Apache has its own alert.
3425
3426 The default Monitorix installation includes an example of a
3427 shell-script alert called monitorix-alert.sh which you can use
3428 as a base for your own script.
3429
3430 The following is an example of an alert defined for the local
3431 Apache:
3432
3433 <alerts>
3434 http://localhost/server-status?auto = 3600, 5,
3435 /path/to/script.sh
3436 </alerts>
3437
3438 Such alert means that if the remaining free slots reaches or ex‐
3439 ceeds 5 (less than 5) during at least one hour (3600 seconds)
3440 the script in /path/to/script.sh will be executed.
3441
3442 The external script will receive the following arguments:
3443
3444 1st - the value defined as time interval.
3445 2nd - the value defined as threshold.
3446 3rd - the remaining free slots.
3447
3448 Nginx statistics (nginx.pm)
3449 This graph may require adding some lines in the configuration file ng‐
3450 inx.conf. Please see the README.nginx file to determine the exact steps
3451 needed to configure Nginx to get status information.
3452
3453 This graph requires the iptables(8) command on Linux systems, and the
3454 ipfw command on *BSD systems.
3455
3456 url
3457 This is the URL to be used to collect Nginx stats.
3458
3459 Default value: http://localhost/nginx_status
3460
3461 port
3462 This is the network port the Nginx web server is listening on.
3463 It will be used for traffic (with iptables), and for nginx_sta‐
3464 tus if url is not specified. If port of nginx_status is differ‐
3465 ent from port then specify it in the url (http://host:port/ng‐
3466 inx_status)
3467
3468 Default value: 80
3469
3470 rule
3471 This is the rule number that Monitorix will use when using the
3472 ipfw command to manage Nginx network activity on *BSD systems.
3473 Change it if you think it might conflict with any other rule
3474 number.
3475
3476 Default value: 24100
3477
3478 cmd
3479 This is the command that will be used to test if the Nginx web
3480 server is down (not listening). There are two possible values:
3481
3482 ss
3483 netstat
3484
3485 Default value: ss
3486
3487 Lighttpd statistics (lighttpd.pm)
3488 This graph requires that mod_status is loaded in order to collect sta‐
3489 tus information from the Lighttpd web server.
3490
3491 This graph is able to monitor an unlimited number of local and remote
3492 Lighttpd web servers.
3493
3494 list
3495 This is a comma-separated list of URLs of the monitored Lighttpd
3496 web servers.
3497
3498 WARNING: Every time the number of entries of this option
3499 changes, Monitorix will resize the lighttpd.rrd file accord‐
3500 ingly, removing all historical data.
3501
3502 Default value: http://localhost/server-status?auto
3503
3504 MySQL statistics (mysql.pm)
3505 This graph requires that you create a password protected MySQL user
3506 that is NOT granted privileges on any DB.
3507
3508 Example:
3509
3510 mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
3511 mysql> FLUSH PRIVILEGES;
3512
3513 where user is the new user name and password is the password that will
3514 be used for that user.
3515
3516 This graph is able to monitor an unlimited number of local and remote
3517 MySQL web servers.
3518
3519 NOTE: It is strongly recommended that you restart the MySQL service in
3520 order to avoid high peaks that could prevent correct display of the
3521 first plotted data.
3522
3523 conn_type
3524 This option toggles the way how Monitorix establishes the con‐
3525 nection with the MySQL server. There are two possible values:
3526
3527 host using the network (hostname and IP address).
3528 socket using a socket file.
3529
3530 Default value: host
3531
3532 list
3533 This is a comma-separated list of hostnames or path to sockets
3534 of MySQL servers.
3535
3536 WARNING: Every time the number of entries of this option change
3537 Monitorix will resize the mysql.rrd file accordingly, removing
3538 all historical data.
3539
3540 Default value: localhost
3541
3542 desc
3543 This is the option where each entry specified in the list is de‐
3544 scribed. Each definition consists of three parameters separated
3545 by comma: the port, the username and the password.
3546
3547 An example using the host type would be:
3548 <desc>
3549 localhost = 3306, user, secret
3550 </desc>
3551
3552 When using the socket type the network port is, of course, ir‐
3553 relevant but its field is still mandatory. This means that you
3554 must respect the three comma-separated values.
3555
3556 Some of the values shown in the graphs are the result of a cal‐
3557 culation of two values from either SHOW [GLOBAL] STATUS or SHOW
3558 VARIABLES. The following is an explanation of them:
3559
3560 Thread Cache Hit Rate
3561 (1 - (Threads_created / Connections)) * 100
3562 When an application connects to a MySQL database, the database
3563 has to create a thread to manage the connection and the queries
3564 that will be sent in that connection. The database instructs the
3565 kernel to create a new thread, and the kernel allocates re‐
3566 sources and creates the thread, then returns it to the MySQL
3567 service. When the connection is terminated by the application,
3568 MySQL tells the kernel to destroy the thread and free the re‐
3569 sources. This create/destroy mechanism causes considerable over‐
3570 head if the MySQL server has many new connections per second.
3571 If MySQL doesn't destroy the thread when the connection is ter‐
3572 minated, but reuses it and assigns it to the next connection
3573 then this will decrease the kernel overhead. This is why a high
3574 Thread Cache Hit Rate improves MySQL performance and decreases
3575 the system's CPU usage.
3576 Setting the parameter thread_cache_size in the my.cnf file ac‐
3577 cordingly will help to correctly balance between having a great
3578 thread cache and keeping MySQL memory consumption reasonable.
3579 Higher is better.
3580
3581 Query Cache Hit Rate
3582 Qcache_hits / (Qcache_hits + Com_select) * 100
3583 Higher should be considered better.
3584 A query cache size increase is recommended if the query cache
3585 usage is very close to 100% and the query cache hit rate is far
3586 from 100%. But sometimes a size increase will not lead to a bet‐
3587 ter hit rate: this means that the increase was not needed and
3588 that the application do not run enough cacheable SELECT queries.
3589 This value should grow proportionally with the number of exe‐
3590 cuted queries as long as the query cache is performing well.
3591 Please also have a look at the Query cache usage percentage to
3592 know if your query_cache configuration is appropriate.
3593
3594 For more information please refer to http://www.databasejour‐
3595 nal.com/features/mysql/article.php/3808841/Optimizing-the-MySQL-
3596 Query-Cache.htm
3597
3598 Query Cache Usage
3599 (1 - (Qcache_free_memory / query_cache_size)) * 100
3600 This value should be reasonably far from 100%, otherwise con‐
3601 sider incrementing the query_cache_size parameter in my.cnf.
3602
3603 Connections Usage
3604 (Max_used_connections / max_connections) * 100
3605 This value should be reasonably far from 100%, otherwise con‐
3606 sider incrementing the max_connections parameter in my.cnf.
3607
3608 Key Buffer Usage
3609 (Key_blocks_used / (Key_blocks_used + Key_blocks_unused)) * 100
3610 This value should be reasonably far from 100%, otherwise con‐
3611 sider incrementing the key_buffer_size parameter in my.cnf.
3612
3613 InnoDB Buffer Pool Usage
3614 (1 - (Innodb_buffer_pool_pages_free / Innodb_buf‐
3615 fer_pool_pages_total)) * 100
3616 This value should be reasonably far from 100%, otherwise con‐
3617 sider incrementing the innodb_buffer_pool_size parameter in
3618 my.cnf.
3619
3620 Temp. Tables To Disk
3621 (Created_temp_disk_tables / Created_temp_disk_tables + Cre‐
3622 ated_temp_tables)) * 100
3623 During operation, MySQL has to create some temporary tables
3624 (that can be explicit, so created by the web application, or im‐
3625 plicit, so for example MySQL has to create one when he runs some
3626 "SELECT DISTINCT", "UNION" or "VIEW" queries). MySQL will prefer
3627 to save this tmp tables to memory, for a fast access. But if
3628 tmp_table_size gets saturated, he has to write them on the disk
3629 instead, making the access slower.
3630 Note that if you modify the value of tmp_table_size in the MySQL
3631 configuration file, you should also modify the value of
3632 max_heap_table_size as well, since both values should have the
3633 same value because MySQL uses the minimum of both, so raising
3634 one of them is useless.
3635 Therefore this value helps to know how many tmp tables go to the
3636 disk instead than to the memory. Keep in mind that some large
3637 queries, involving TEXT and BLOB columns, are directly written
3638 to the disk instead than to the memory, because they would be
3639 too big. So you probably will want to avoid having a high % of
3640 tmp tables written to the disk, but you will never reach 0% on a
3641 big site, and this is fine.
3642 Lower is better ... but 0% is not reachable and you should not
3643 try to reach it, usually.
3644
3645 PostgreSQL statistics (pgsql.pm)
3646 This graph is able to monitor an unlimited number of PostgreSQL
3647 servers.
3648
3649 list
3650 This is a comma-separated list of names of PostgreSQL servers.
3651
3652 WARNING: Every time the number of entries in this option
3653 changes, Monitorix will resize the pgsql.rrd file accordingly,
3654 removing all historical data.
3655
3656 Default value: localhost
3657
3658 desc
3659 This is a list of blocks of names specified in the list option.
3660
3661 <desc>
3662 <localhost>
3663 host = localhost
3664 port = 5432
3665 username = user
3666 password = secret
3667 db_list =
3668 </localhost>
3669 </desc>
3670
3671 host
3672 This is the hostname or IP address of the PostgreSQL server name
3673 specified in its block.
3674
3675 Default value: localhost
3676
3677 port
3678 This is the port number of the PostgreSQL server name specified
3679 in its block.
3680
3681 Default value: 5432
3682
3683 username
3684 This is the username for authentication of the PostgreSQL server
3685 name specified in its block.
3686
3687 password
3688 This is the password for authentication of the PostgreSQL server
3689 name specified in its block.
3690
3691 db_list
3692 This is a comma-separated list of up to 9 databases that will be
3693 monitored in the PostgreSQL server name specified in its block.
3694
3695 MongoDB statistics (mongodb.pm)
3696 This graph is able to monitor an unlimited number of MongoDB servers.
3697
3698 list
3699 This is a comma-separated list of names of MongoDB servers.
3700
3701 WARNING: Every time the number of entries in this option
3702 changes, Monitorix will resize the mongodb.rrd file accordingly,
3703 removing all historical data.
3704
3705 Default value: localhost
3706
3707 max_db
3708 This is the maximum number of databases to be monitored in a
3709 MongoDB server. There is no limitation, just specify here the
3710 number of entries of the db_list option that has the most en‐
3711 tries.
3712
3713 WARNING: Every time the number of entries in this option
3714 changes, Monitorix will resize the mongodb.rrd file accordingly,
3715 removing all historical data.
3716
3717 Default value: 1
3718
3719 desc
3720 This is a list of blocks of names specified in the list option.
3721
3722 <desc>
3723 <localhost>
3724 host = 127.0.0.1
3725 db_list = mydb
3726 </localhost>
3727 </desc>
3728
3729 host
3730 This is the hostname or IP address of the MongoDB server speci‐
3731 fied in its block.
3732
3733 Default value: 127.0.0.1
3734
3735 port
3736 This is the port number of the MongoDB server specified in its
3737 block.
3738
3739 Default value:
3740
3741 username
3742 This is the username for authentication of the MongoDB server
3743 specified in its block.
3744
3745 password
3746 This is the password for authentication of the MongoDB server
3747 specified in its block.
3748
3749 db_list
3750 This is a comma-separated list of databases to be monitored of
3751 the MongoDB server specified in its block.
3752
3753 Default value: mydb
3754
3755 Varnish cache statistics (varnish.pm)
3756 This graph monitors a local installation of the Varnish HTTP accelera‐
3757 tor.
3758
3759 Only the limit and rigid values can be set here.
3760
3761 PageSpeed Module statistics (pagespeed.pm)
3762 This graph is able to monitor an unlimited number of PageSpeed instal‐
3763 lations.
3764
3765 list
3766 This is a comma-separated list of URLs of PageSpeed status
3767 pages.
3768
3769 WARNING: Every time the number of entries in this option
3770 changes, Monitorix will resize the pagespeed.rrd file accord‐
3771 ingly, removing all historical data.
3772
3773 Default value: http://modpagespeed.com/mod_pagespeed_statistics
3774
3775 For more information please refer to https://develop‐
3776 ers.google.com/speed/pagespeed/module and http://stackover‐
3777 flow.com/questions/9115595/what-do-the-mod-pagespeed-statistics-mean
3778
3779 Squid Proxy Web Cache (squid.pm)
3780 cmd
3781 This command displays statistics about the Squid HTTP proxy
3782 process and is the main command used to collect all data.
3783
3784 Default value: squidclient -h 127.0.0.1
3785
3786 graph_0
3787 graph_1
3788 These two lists hold the selected Squid result or status codes
3789 to be shown in each graph. Feel free to mix result status and
3790 code status in any of the two options.
3791
3792 For more information about the list of all the result and status
3793 codes, please refer to http://wiki.squid-cache.org/Squid‐
3794 Faq/SquidLogs.
3795
3796 Each graph has a limit number of 9 entries.
3797
3798 NFS server statistics (nfss.pm)
3799 version
3800 This option specifies which NFS server version is running in the
3801 system in order to correctly gather the correct values.
3802
3803 The possible values are:
3804 2 for NFS v2.
3805 3 for NFS v3.
3806 4 for NFS v4.
3807
3808 Default value: 3
3809
3810 graph_0
3811 graph_1
3812 graph_2
3813 These three lists hold the defined NFS server activity statis‐
3814 tics to be shown in each graph. Put every statistic name exactly
3815 as they appear in the output of the nfsstat(8) command.
3816
3817 Each graph has a limit number of 10 entries.
3818
3819 NFS client statistics (nfsc.pm)
3820 version
3821 This option specifies which NFS server version is running in the
3822 system in order to correctly gather the correct values.
3823
3824 The possible values are:
3825 2 for NFS v2.
3826 3 for NFS v3.
3827 4 for NFS v4.
3828
3829 Default value: 3
3830
3831 graph_1
3832 graph_2
3833 graph_3
3834 graph_4
3835 graph_5
3836 These five lists hold the defined NFS client activity statistics
3837 to be shown in each graph. Put every statistic name exactly as
3838 they appear in the output of the nfsstat(8) command.
3839
3840 Each graph has the following limit number of entries:
3841
3842 graph_1 up to 10 entries.
3843 graph_2 up to 10 entries.
3844 graph_3 up to 4 entries.
3845 graph_4 up to 4 entries.
3846 graph_5 up to 4 entries.
3847
3848 BIND statistics (bind.pm)
3849 This graph requires a BIND server with version 9.5 or higher, and in
3850 order to see all statistics provided by BIND you must configure the
3851 statistics-channels option like this:
3852
3853 statistics-channels {
3854 inet 127.0.0.1 port 8053;
3855 };
3856
3857 This graph is able to monitor an unlimited number of BIND servers.
3858
3859 list
3860 This is a comma-separated list of URLs of BIND servers status
3861 pages.
3862
3863 WARNING: Every time the number of entries in this option
3864 changes, Monitorix will resize the bind.rrd file accordingly,
3865 removing all historical data.
3866
3867 Default value: http://localhost:8053/
3868
3869 in_queries_list
3870 This is a comma-separated list of RR (Resource Records) types
3871 for each BIND server specified in list option. The RR types de‐
3872 fined here will appear in the Incoming Queries graph which shows
3873 the number of incoming queries for each RR type.
3874
3875 For a complete list of RR types check the BIND 9 Administrator
3876 Reference Manual at
3877 <http://ftp.isc.org/www/bind/arm95/Bv9ARM.html>.
3878
3879 <in_queries_list>
3880 http://localhost:8053/ = A, AAAA, ANY, DS, MX, NS, PTR,
3881 SOA, SRV, TXT, NAPTR, A6, CNAME, SPF, KEY, DNSKEY, HINFO, WKS,
3882 PX, NSAP
3883 </in_queries_list>
3884
3885 The maximum number of RR types allowed for this graph is 20.
3886
3887 out_queries_list
3888 This is a comma-separated list of RR (Resource Records) types
3889 for each BIND server. The RR types defined here will appear in
3890 the Outgoing Queries graph (_default view) which shows the num‐
3891 ber of outgoing queries sent by the DNS server resolver for each
3892 RR type.
3893
3894 <out_queries_list>
3895 http://localhost:8053/ = A, AAAA, ANY, DS, MX, NS, PTR,
3896 SOA, SRV, TXT, NAPTR, A6, CNAME, SPF, KEY, DNSKEY, HINFO, WKS,
3897 PX, NSAP
3898 </out_queries_list>
3899
3900 The maximum number of RR types allowed for this graph is 20.
3901
3902 server_stats_list
3903 This is a comma-separated list of counters about incoming re‐
3904 quest processing. The counters defined here will appear in the
3905 Server Statistics graph.
3906
3907 <server_stats_list>
3908 http://localhost:8053/ = Requestv4, Requestv6, ReqEdns0,
3909 ReqBadEDNSVer, ReqTSIG, ReqSIG0, ReqBadSIG, ReqTCP, Response,
3910 QrySuccess, QryAuthAns, QryNoauthAns, QryReferral, QryNxrrset,
3911 QrySERVFAIL, QryNXDOMAIN, QryRecursion, QryDuplicate, Qry‐
3912 Dropped, QryFailure
3913 </server_stats_list>
3914
3915 The maximum number of counters allowed for this graph is 20.
3916
3917 resolver_stats_list
3918 This is a comma-separated list of counters about name resolution
3919 performed in the internal resolver. The counters defined here
3920 will appear in the Resolver Statistics graph (_default view).
3921
3922 <resolver_stats_list>
3923 http://localhost:8053/ = Queryv4, Queryv6, Responsev4, Re‐
3924 sponsev6, NXDOMAIN, SERVFAIL, FORMERR, OtherError, EDNS0Fail,
3925 Truncated, Lame, Retry, QueryTimeout, GlueFetchv4, GlueFetchv6,
3926 GlueFetchv4Fail, GlueFetchv6Fail, ValAttempt, ValOk, ValNegOk
3927 </resolver_stats_list>
3928
3929 The maximum number of counters allowed for this graph is 20.
3930
3931 cache_rrsets_list
3932 This is a comma-separated list of RR (Resource Records) types
3933 for each BIND server. The RR types defined here will appear in
3934 the Cache DB RRsets graph (_default view) which shows the number
3935 of RRsets per RR type (positive or negative) and nonexistent
3936 names stored in the cache database.
3937
3938 <cache_rrsets_list>
3939 http://localhost:8053/ = A, !A, AAAA, !AAAA, DLV, !DLV, DS,
3940 !DS, MX, NS, CNAME, !CNAME, SOA, !SOA, !ANY, PTR, RRSIG, NSEC,
3941 DNSKEY, NXDOMAIN
3942 </cache_rrsets_list>
3943
3944 The maximum number of RR types allowed for this graph is 20.
3945
3946 Unbound statistics (unbound.pm)
3947 This graph monitors a local installation of an Unbound name server. It
3948 requires you to configure the options extended-statistics as yes and
3949 statistics-cumulative as no.
3950
3951 cmd
3952 This is the command that will be used to gather statistics from
3953 Unbound.
3954
3955 Default value: unbound-control
3956
3957 queries_type
3958 This is a comma-separated list of query types. The types defined
3959 here will appear in the Queries by type graph.
3960
3961 Default value: queries_type = A, AAAA, ANY, DS, MX, NS, PTR,
3962 SOA, SRV, TXT, NAPTR, A6, CNAME, SPF, KEY, DNSKEY, HINFO, WKS,
3963 PX, NSAP
3964
3965 The maximum number of types allowed for this graph is 20.
3966
3967 NTP statistics (ntp.pm)
3968 This graph is able to monitor an unlimited number of NTP servers.
3969
3970 list
3971 This is a comma-separated list of NTP servers.
3972
3973 WARNING: Every time the number of entries in this option
3974 changes, Monitorix will resize the ntp.rrd file accordingly, re‐
3975 moving all historical data.
3976
3977 Default value: localhost
3978
3979 desc
3980 This is a list of groups of Reference Identifier and Kiss-
3981 o'-Death Codes for every hostname specified in the list option.
3982
3983 For more information on these NTP codes:
3984 <http://www.iana.org/assignments/ntp-parameters/ntp-parame‐
3985 ters.xml>
3986 <http://www.iana.org/go/rfc5905>
3987
3988 <desc>
3989 localhost = AUTH, AUTO, CRYP, DENY, GPS, INIT, NKEY, RATE,
3990 RMOT, RSTR
3991 </desc>
3992
3993 The maximum number of codes allowed for each hostname is 10.
3994
3995 extra_args
3996 This option includes any extra argument to the NTP command exe‐
3997 cuted by Monitorix, which is "ntpq -pn". This is specially use‐
3998 ful if you want to force using IPv4, in this case just define
3999 this option like this:
4000
4001 extra_args = "-4"
4002
4003 Monitorix will add this extra argument to the NTP command which
4004 will become as "ntpq -pn -4".
4005
4006 Chrony statistics (chrony.pm)
4007 This graph is able to monitor an unlimited number of Chrony daemons.
4008
4009 list
4010 This is a comma-separated list of hostnames with the network
4011 port running chronyd. The format is <hostname>[:<port>] being
4012 the port part optional.
4013
4014 WARNING: Every time the number of entries in this option
4015 changes, Monitorix will resize the chrony.rrd file accordingly,
4016 removing all historical data.
4017
4018 Default value: localhost
4019
4020 Fail2ban statistics (fail2ban.pm)
4021 This graph is able to monitor an unlimited number of Fail2ban jails.
4022
4023 list
4024 This is a comma-separated list that describes the groups of
4025 jails in desc. Put one description for each group. For every
4026 group specified you need to specify its description in the desc
4027 option.
4028
4029 WARNING: Every time the number of entries in this option
4030 changes, Monitorix will resize the fail2ban.rrd file accord‐
4031 ingly, removing all historical data.
4032
4033 An example would be:
4034
4035 list = Security, Overload / Abuse
4036
4037 desc
4038 This is a list of jails per group defined in your Fail2ban con‐
4039 figuration.
4040
4041 <desc>
4042 0 = [apache], [apache-mod-security], [apache-overflows],
4043 [courierauth], [ssh], [pam-generic], [php-url-fopen], [vsftpd]
4044 1 = [apache-imdbphp], [apache-evasive], [apache-badbots],
4045 [apache-robots-txt], [communigate], [named-refused-udp], [named-
4046 refused-tcp], [trac-ticketspam]
4047 </desc>
4048
4049 The maximum number of jails allowed for each group is 9.
4050
4051 graphs_per_row
4052 This is the number of fail2ban graphs that will be put in a row.
4053
4054 Default value: 2
4055
4056 graph_mode
4057 This option changes how the values are represented in the graph.
4058 It has two possible values: absolute which is the default, and
4059 rate. The former takes the values directly from the command
4060 fail2ban-client status <JAIL> and so the values in the graph
4061 will appear as absolute. The later option shows the values in a
4062 rating format per minute.
4063
4064 Default value: absolute
4065
4066 Icecast Streaming Media Server (icecast.pm)
4067 This graph is able to monitor an unlimited number of Icecast servers.
4068
4069 list
4070 This is a list of URLs of Icecast server status pages.
4071
4072 WARNING: Every time the number of entries in this option
4073 changes, Monitorix will resize the icecast.rrd file accordingly,
4074 removing all historical data.
4075
4076 Default value: http://localhost:8000/status.xsl
4077
4078 desc
4079 This is a comma-separated list of Mount Points configured for
4080 every URL specified in the list option. IMPORTANT: the Mount
4081 Points must be specified in the same order that appears in the
4082 Icecast Server Status page.
4083
4084 <desc>
4085 http://localhost:8000/status.xsl = stream1, stream2,
4086 stream3
4087 </desc>
4088
4089 The maximum number of mountpoints allowed for each URL is 9.
4090
4091 graph_mode
4092 This changes the layout of the listeners graph, the possible
4093 values are r for a real graph, or s for a stacked graph (every
4094 line or area is stacked on top of the previous element).
4095
4096 Default value: r
4097
4098 Raspberry Pi sensor statistics (raspberrypi.pm)
4099 For more information please refer to http://elinux.org/RPI_vcgencmd_us‐
4100 age.
4101
4102 cmd
4103 This is where the vcgencmd command is installed.
4104
4105 Default value: /usr/bin/vcgencmd
4106
4107 clocks
4108 This is a comma-separated list of clock types that will be rep‐
4109 resented in the first graph.
4110
4111 An example would be:
4112
4113 clocks = arm, core, h264, isp, v3d, uart, emmc, pixel, hdmi
4114
4115 The maximum number of clocks allowed is 9.
4116
4117 volts
4118 This is a comma-separated list of voltage types that will be
4119 represented in the third graph.
4120
4121 An example would be:
4122
4123 volts = core, sdram_c, sdram_i, sdram_p
4124
4125 The maximum number of clocks allowed is 6.
4126
4127 Alternative PHP Cache statistics (phpapc.pm)
4128 This graph is able to monitor an unlimited number of PHP-APC installa‐
4129 tions.
4130
4131 list
4132 This is a comma-separated list of URLs of PHP-APC status pages.
4133
4134 WARNING: Every time the number of entries in this option
4135 changes, Monitorix will resize the phpapc.rrd file accordingly,
4136 removing all historical data.
4137
4138 Default value: http://localhost/apc.php?auto
4139
4140 Memcached statistics (memcached.pm)
4141 This graph is able to monitor an unlimited number of Memcached instal‐
4142 lations.
4143
4144 list
4145 This is a comma-separated list of hostnames with network port
4146 running Memcached.
4147
4148 WARNING: Every time the number of entries in this option
4149 changes, Monitorix will resize the memcached.rrd file accord‐
4150 ingly, removing all historical data.
4151
4152 Default value: localhost:11211
4153
4154 Redis statistics (redis.pm)
4155 This graph is able to monitor an unlimited number of Redis installa‐
4156 tions.
4157
4158 list
4159 This is a comma-separated list of hostnames with network port
4160 running Redis.
4161
4162 WARNING: Every time the number of entries in this option
4163 changes, Monitorix will resize the redis.rrd file accordingly,
4164 removing all historical data.
4165
4166 Default value: localhost:6379
4167
4168 PHP-FPM statistics (phpfpm.pm)
4169 This graph is able to monitor an unlimited number of PHP-FPM pools.
4170
4171 group
4172 This is a list of names (separated by comma) of the groups of
4173 pools that you want to monitor. The pools included in each group
4174 will be defined in the list option. You can define unlimited
4175 number of groups.
4176
4177 WARNING: Every time the number of groups changes, Monitorix will
4178 resize the phpfpm.rrd file accordingly, removing all historical
4179 data.
4180
4181 An example of this option would be:
4182
4183 <group>
4184 0 = First group of domains
4185 1 = Second group of domains
4186 </group>
4187
4188 list
4189 This is a list of pool names that you want to monitor for each
4190 group defined in group.
4191
4192 An example of this option would be:
4193
4194 <list>
4195 0 = example1, example2, example3
4196 1 = example10, example11
4197 </list>
4198
4199 The maximum number of pools allowed per group is 8.
4200
4201 desc
4202 This list complements the list option, it defines where and how
4203 Monitorix must gather the statistics for each pool defined.
4204
4205 An example of this option would be:
4206
4207 <desc>
4208 example1 = http://www.example1.com/php_fpm_status
4209 example2 = http://www.example2.com/php_fpm_status
4210 example3 = http://www.example3.com/php_fpm_status
4211 example10 = http://www.example10.com/php_fpm_status
4212 example11 = http://www.example11.com/php_fpm_status
4213 </desc>
4214
4215 map
4216 This list also complements the list option. It basically allows
4217 you to change the name that will appear in the graph, hiding the
4218 real name of the pool. If no association is defined, then Moni‐
4219 torix will display the name specified in the list option.
4220
4221 An example of this option would be:
4222
4223 <map>
4224 example1 = DOMAIN4
4225 example12 = DOMAIN55
4226 </map>
4227
4228 APC UPS statistics (apcupsd.pm)
4229 This graph is able to monitor an unlimited number of APC UPS (apcupsd)
4230 installations.
4231
4232 cmd
4233 This is the command that will be used (with the values in list)
4234 to get the statistics.
4235
4236 Default value: apcaccess
4237
4238 list
4239 This is a comma-separated list of hostnames with the network
4240 port running apcupsd.
4241
4242 WARNING: Every time the number of entries in this option
4243 changes, Monitorix will resize the apcupsd.rrd file accordingly,
4244 removing all historical data.
4245
4246 Default value: localhost:3551
4247
4248 use_nan_for_missing_data
4249 This option, when enabled via y, shows nan values for missing
4250 data instead of 0. This is useful when 0 could be mistaken for
4251 valid data.
4252
4253 Default value: n
4254
4255 gap_on_all_nan
4256 This option, when enabled via y, combined with the show_gaps op‐
4257 tion shows gaps only if all data points are nan instead of re‐
4258 quiring only one to be nan for a gap. This can be useful if not
4259 all sensor data are required for normal operation.
4260
4261 Default value: n
4262
4263 skipscale_for_transfer_voltage
4264 This option, when enabled via y, ignores the transfer voltage
4265 graph when scaling the plot axis.
4266
4267 Default value: n
4268
4269 skipscale_for_shutdown_level
4270 This option, when enabled via y, ignores the shutdown level
4271 graph when scaling the plot axis.
4272
4273 Default value: n
4274
4275 alt_scaling_for_voltage
4276 This option, when enabled via y, sets alternate plot axis scal‐
4277 ing for the voltage graph. This can be useful to improve the
4278 scaling in some cases.
4279
4280 Default value: n
4281
4282 alt_scaling_for_timeleft
4283 This option, when enabled via y, sets alternate plot axis scal‐
4284 ing for the time left graph. This can be useful to improve the
4285 scaling in some cases.
4286
4287 Default value: n
4288
4289 alt_scaling_for_battery_voltage
4290 This option, when enabled via y, sets alternate plot axis scal‐
4291 ing for the battery voltage graph. This can be useful to improve
4292 the scaling in some cases.
4293
4294 Default value: n
4295
4296 Network UPS Tools statistics (nut.pm)
4297 This graph is able to monitor an unlimited number of Network UPS Tools
4298 (upsc) installations.
4299
4300 list
4301 This is a comma-separated list of UPS names with optionally the
4302 hostname and the network port where it's running upsd. The for‐
4303 mat of each entry must be:
4304
4305 upsname[@hostname[:port]]
4306
4307 WARNING: Every time the number of entries in this option
4308 changes, Monitorix will resize the nut.rrd file accordingly, re‐
4309 moving all historical data.
4310
4311 Default value: ups@localhost
4312
4313 use_nan_for_missing_data
4314 This option, when enabled via y, shows nan values for missing
4315 data instead of 0. This is useful when 0 could be mistaken for
4316 valid data.
4317
4318 Default value: n
4319
4320 gap_on_all_nan
4321 This option, when enabled via y, combined with the show_gaps op‐
4322 tion shows gaps only if all data points are nan instead of re‐
4323 quiring only one to be nan for a gap. This can be useful if not
4324 all sensor data are required for normal operation.
4325
4326 Default value: n
4327
4328 ignore_error_output
4329 This option, when enabled via y, suppresses error output from
4330 upsc.
4331
4332 Default value: n
4333
4334 skipscale_for_transfer_voltage
4335 This option, when enabled via y, ignores the transfer voltage
4336 graph when scaling the plot axis.
4337
4338 Default value: n
4339
4340 skipscale_for_shutdown_level
4341 This option, when enabled via y, ignores the shutdown level
4342 graph when scaling the plot axis.
4343
4344 Default value: n
4345
4346 alt_scaling_for_voltage
4347 This option, when enabled via y, sets alternate plot axis scal‐
4348 ing for the voltage graph. This can be useful to improve the
4349 scaling in some cases.
4350
4351 Default value: n
4352
4353 alt_scaling_for_timeleft
4354 This option, when enabled via y, sets alternate plot axis scal‐
4355 ing for the time left graph. This can be useful to improve the
4356 scaling in some cases.
4357
4358 Default value: n
4359
4360 alt_scaling_for_battery_voltage
4361 This option, when enabled via y, sets alternate plot axis scal‐
4362 ing for the battery voltage graph. This can be useful to improve
4363 the scaling in some cases.
4364
4365 Default value: n
4366
4367 Wowza Media Server (wowza.pm)
4368 This graph is able to monitor an unlimited number of Wowza servers.
4369
4370 list
4371 This is a comma-separated list of URLs of Wowza server status
4372 pages. Each URL can include the Basic Authentication in the form
4373 of http://username:password@localhost:8086/connectioncounts.
4374
4375 WARNING: Every time the number of entries in this option
4376 changes, Monitorix will resize the wowza.rrd file accordingly,
4377 removing all historical data.
4378
4379 Default value: http://localhost:8086/connectioncounts
4380
4381 desc
4382 This is a comma-separated list of applications configured for
4383 every URL specified in the list option.
4384
4385 <desc>
4386 http://localhost:8086/connectioncounts = channel1, chan‐
4387 nel2, channel3
4388 </desc>
4389
4390 The maximum number of applications allowed for each URL is 8.
4391
4392 Devices interrupt activity (int.pm)
4393 Only the limit and rigid values can be set here.
4394
4395 Verlihub statistics (verlihub.pm)
4396 This graph monitors the Verlihub software for DC++ network.
4397
4398 Monitoring the Internet traffic of your LAN (traffacct.pm)
4399 If your server acts as the gateway for a group of PCs, devices or even
4400 whole networks in your local LAN, you may want to know how much Inter‐
4401 net traffic each one is generating.
4402
4403 This graph requires the iptables(8) command on GNU/Linux systems, and
4404 the ipfw command on *BSD systems.
4405
4406 The following are the options you will need to configure to accomplish
4407 all of this.
4408
4409 enabled
4410 This option enables this feature.
4411
4412 Default value: n
4413
4414 max
4415 This is the number of LAN devices you want to monitor. There is
4416 no limit, but keep in mind that every time this number changes,
4417 Monitorix will resize the traffacct.rrd file, removing all his‐
4418 torical data.
4419
4420 Default value: 10
4421
4422 graphs_per_row
4423 If your horizontal screen resolution is pretty wide, you may
4424 want to increase the number of graphs that appear on each row.
4425
4426 Default value: 2
4427
4428 list
4429 This is a comma-separated list of names of PCs, LAN devices or
4430 whole networks that you want to monitor. The only requirement is
4431 that all they must utilize this server as their gateway.
4432
4433 If the names in this list are able to be resolved by a DNS query
4434 then you don't need to define the desc list (below) with corre‐
4435 sponding IP addresses, unless you want monthly reports.
4436
4437 An example would be:
4438
4439 list = pc8, printer, pc9, scanner
4440
4441 desc
4442 This is the list of IPv4 or IPv6 addresses with network masks
4443 and email addresses corresponding to the entries defined in the
4444 list. This option is only used when the those entries are not
4445 resolvable through a DNS query.
4446
4447 An example would be:
4448
4449 <desc>
4450 0 = 192.168.1.101/32, ace@example.com
4451 1 = 192.168.1.102/32, gene@example.com
4452 2 = 192.168.1.103/32, paul@example.com
4453 3 = 2607:6300:93:1::/64, peter@example.com
4454 </desc
4455
4456 Monthly reports of Internet traffic (traffacct.pm)
4457 enabled
4458 If this option is set to y, Monitorix will send a report of all
4459 the monthly Internet activity of the defined devices in list to
4460 the specified email address on the first day of each month.
4461
4462 Default value: n
4463
4464 language
4465 Define here the language used in the monthly report.
4466
4467 The current possible values are: ca, de, en, it, nl_NL, pl and
4468 zh_CN.
4469
4470 Default value: en
4471
4472 default_mail
4473 This is the default email address used to send the monthly re‐
4474 ports. This option is only used if the second parameter in desc
4475 list is empty.
4476
4477 Default value: root@localhost
4478
4479 url_prefix
4480 This is the prefix of the same URL you use to connect to Moni‐
4481 torix. This is needed in order to get the graphs of the same ma‐
4482 chine.
4483
4484 Default value: http://localhost:8080
4485
4486 smtp_hostname
4487 This is the hostname that will be used as a SMTP relay to de‐
4488 liver the monthly report emails.
4489
4490 Default value: localhost
4491
4492 from_address
4493 This is the address that will be used as remittent for all the
4494 monthly report emails.
4495
4496 Default value: noreply@example.com
4497
4498 Monitoring remote servers (Multihost)
4499 The Multihost feature allows you to monitor an unlimited number of re‐
4500 mote servers that already have Monitorix installed. Make sure that all
4501 servers (local and remote) have the same version of Monitorix, other‐
4502 wise there would be some incompatibilities that would prevent showing
4503 correctly the graphs.
4504
4505 enabled
4506 This option enables the Multihost feature.
4507
4508 Default value: n
4509
4510 footer_url
4511 If set to y Monitorix will show the original URL of each server
4512 at the bottom of the graph. Where security is important you may
4513 want to hide this information.
4514
4515 Default value: y
4516
4517 graphs_per_row
4518 If your horizontal screen resolution is pretty wide, you may
4519 want to increase the number of graphs that appear on each row.
4520
4521 Default value: 2
4522
4523 default_option_when_all
4524 If the user has defined a considerable amount of remote servers
4525 and it selects the option "All" in the Hostname list and "All
4526 graphs" in the Graph list, the browser may hang for a while due
4527 to the huge amount of images to download remotely from different
4528 servers.
4529
4530 This option prevents precisely that this happens accidentally by
4531 setting a default value in the Graph list. Of course, the user
4532 is able to change it to "All graphs" at any moment.
4533
4534 The value of this option may be any of the ones that appear in
4535 the <graphs> section (near the end) of the monitorix.conf file.
4536
4537 Default value: "System load"
4538
4539 remotehost_list
4540 This is a comma-separated list with descriptive names of remote
4541 servers with Monitorix already installed and working that you
4542 plan to monitor from here.
4543
4544 An example of this list would be:
4545
4546 remotehost_list = server 1, server 2, server 3
4547
4548 remotehost_desc
4549 This is a numbered list that describes each of the names defined
4550 in the remotehost_list option and the remote values of base_url
4551 and base_cgi options.
4552
4553 An example would be:
4554
4555 <remotehost_desc>
4556 0 = http://www.example.com,/monitorix,/monitorix-cgi
4557 1 = http://10.0.0.1,/monitorix,/monitorix-cgi
4558 2 = http://192.168.0.100:8080,/,/
4559 </remotehost_desc>
4560
4561 As you can see all these three entries use URLs to designate the
4562 location of each remote server. This means that each server most
4563 also have been enabled the HTTP built-in server, or have been
4564 installed a CGI capable web server like Apache.
4565
4566 groups
4567 This enables the server grouping for those environments where
4568 there are too much servers to display at the same time. Hence,
4569 you can group them in order to show them separately.
4570
4571 Default value: n
4572
4573 remotegroup_list
4574 This is a list of groups of remote servers with Monitorix al‐
4575 ready installed and working that you plan to monitor from here.
4576
4577 An example of this list would be:
4578
4579 remotegroup_list = My Group
4580
4581 remotegroup_desc
4582 This is a numbered list that describes each of the names defined
4583 in the remotegroup_list option.
4584
4585 An example would be:
4586
4587 <remotegroup_desc>
4588 0 = server2, server 3
4589 </remotegroup_desc>
4590
4591 Automatic email reports (emailreports)
4592 This allows to send automatically selected graphs to one or more email
4593 addresses. This could be specially useful for some system administra‐
4594 tors who prefer receiving via email selected graphs instead of browsing
4595 to the remote servers every day.
4596
4597 enabled
4598 This option enables this feature. Note that you still need to
4599 enable the same option for each time interval you want to acti‐
4600 vate: daily, weekly, monthly, yearly.
4601
4602 Default value: n
4603
4604 url_prefix
4605 This is the prefix of the same URL you use to connect to Moni‐
4606 torix. Such URL is needed in order to get the graphs of that ma‐
4607 chine.
4608
4609 This option supports sending the credentials in the standard
4610 HTTP "Authorization" header, just like this:
4611
4612 http://username:password@localhost:8080
4613
4614 Default value: http://localhost:8080
4615
4616 smtp_hostname
4617 This is the hostname that will be used as a SMTP relay to de‐
4618 liver the automatic email reports.
4619
4620 method
4621 This option specifies the method of sending emails. The current
4622 valid options are smtp and relay. By default this option is not
4623 defined which is the same as if smtp option was defined.
4624
4625 Default value:
4626
4627 from_address
4628 This is the address that will be used as remittent for all the
4629 monthly report emails.
4630
4631 Default value: noreply@example.com
4632
4633 subject_prefix
4634 This is a string that will be prefixed in the Subject of all
4635 emails that will be sent.
4636
4637 Default value: Monitorix:
4638
4639 hour
4640 This is the hour (in 24h format) when the email reports will be
4641 sent.
4642
4643 Default value: 0
4644
4645 minute
4646 This is the minute when the email reports will be sent.
4647
4648 Default value: 0
4649
4650 daily
4651 weekly
4652 monthly
4653 yearly
4654 The email reports are sent based on the following schedule:
4655
4656 daily reports will be sent every day at 00:00h.
4657 weekly reports will be sent the first Monday of each week.
4658 monthly reports will be sent the first day of each month.
4659 yearly reports will be sent the first day of each year.
4660
4661 enabled
4662 This option enables each report individually.
4663
4664 Default value: n
4665
4666 graphs
4667 This is a comma-separated list of graph names you want to appear
4668 in the email report. The names are the same as their .rrd files.
4669 There is a list of them in the graph_name option in moni‐
4670 torix.conf.
4671
4672 Default value: system, fs
4673
4674 to
4675 This is a comma-separated list of recipient email addresses.
4676
4677 addendum_script
4678 This is the full path name of an external script that will be
4679 executed during the creation of the report, and its output will
4680 be appended to the mail. This is useful for system administra‐
4681 tors that want to add extra system information to the reports.
4682
4683 Default value:
4684
4685 rigid and limit values
4686 rigid
4687 This value defines how the graph must be scaled. Its possible
4688 values are:
4689
4690 0 No rigid, the graph will be scaled automatically. Only the
4691 lower-limit value will be used if it's defined.
4692 1 The graph will be scaled by default according the values in
4693 limit but without rigidness.
4694 2 The graph will be forced to scale using the contents of
4695 limit as its upper-limit and lower-limit values.
4696
4697 limit
4698 This is where you can enter the upper-limit and lower-limit val‐
4699 ues (separated by a colon) for a graph. The lower-limit value is
4700 optional. Some examples would be:
4701
4702 100:0 which means 100 as the upper-limit value and 0 for the
4703 lower-limit value. This is commonly used for percentage values.
4704 1000 which means 1000 as the upper-limit value and leaving un‐
4705 defined the lower-limit value. This can also be written as
4706 1000:.
4707
4709 Monitorix is written by Jordi Sanfeliu <jordi@fibranet.cat>
4710
4712 Copyright © 2005-2022 Jordi Sanfeliu
4713 Licensed under the GNU General Public License version 2 (GPLv2).
4714
4716 monitorix(8), rrdtool(1)
4717
4718
4719
47203.15.0 Dec 2022 monitorix.conf(5)