1monitorix.conf(5)        Monitorix configuration file        monitorix.conf(5)
2
3
4

NAME

6       monitorix.conf - Configuration file for Monitorix.
7

DESCRIPTION

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

CONFIGURATION OPTIONS

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

AUTHOR

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

SEE ALSO

4716       monitorix(8), rrdtool(1)
4717
4718
4719
47203.15.0                             Dec 2022                  monitorix.conf(5)
Impressum