]> granicus.if.org Git - icinga2/blob - itl/command-plugins.conf
Remove duplicate severity type in the documentation
[icinga2] / itl / command-plugins.conf
1 /******************************************************************************
2  * Icinga 2                                                                   *
3  * Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org)    *
4  *                                                                            *
5  * This program is free software; you can redistribute it and/or              *
6  * modify it under the terms of the GNU General Public License                *
7  * as published by the Free Software Foundation; either version 2             *
8  * of the License, or (at your option) any later version.                     *
9  *                                                                            *
10  * This program is distributed in the hope that it will be useful,            *
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of             *
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the              *
13  * GNU General Public License for more details.                               *
14  *                                                                            *
15  * You should have received a copy of the GNU General Public License          *
16  * along with this program; if not, write to the Free Software Foundation     *
17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.             *
18  ******************************************************************************/
19
20 template CheckCommand "ipv4-or-ipv6" {
21         vars.check_address = {{
22                 var addr_v4 = macro("$address$")
23                 var addr_v6 = macro("$address6$")
24
25                 if (addr_v4) {
26                         return addr_v4
27                 } else {
28                         return addr_v6
29                 }
30         }}
31 }
32
33 template CheckCommand "ping-common" {
34         import "plugin-check-command"
35
36         command = [ PluginDir + "/check_ping" ]
37
38         arguments = {
39                 "-H" = "$ping_address$"
40                 "-w" = "$ping_wrta$,$ping_wpl$%"
41                 "-c" = "$ping_crta$,$ping_cpl$%"
42                 "-p" = "$ping_packets$"
43                 "-t" = "$ping_timeout$"
44         }
45
46         vars.ping_wrta = 100
47         vars.ping_wpl = 5
48         vars.ping_crta = 200
49         vars.ping_cpl = 15
50 }
51
52 object CheckCommand "ping" {
53         import "ping-common"
54         import "ipv4-or-ipv6"
55
56         vars.ping_address = "$check_address$"
57 }
58
59 object CheckCommand "ping4" {
60         import "ping-common"
61
62         command += [ "-4" ]
63
64         vars.ping_address = "$address$"
65 }
66
67 object CheckCommand "ping6" {
68         import "ping-common"
69
70         command += [ "-6" ]
71
72         vars.ping_address = "$address6$"
73 }
74
75 template CheckCommand "hostalive-common" {
76         vars.ping_wrta = 3000.0
77         vars.ping_wpl = 80
78
79         vars.ping_crta = 5000.0
80         vars.ping_cpl = 100
81 }
82
83 object CheckCommand "hostalive" {
84         import "ping"
85         import "hostalive-common"
86 }
87
88 object CheckCommand "hostalive4" {
89         import "ping4"
90         import "hostalive-common"
91 }
92
93 object CheckCommand "hostalive6" {
94         import "ping6"
95         import "hostalive-common"
96 }
97
98 template CheckCommand "fping-common" {
99         import "plugin-check-command"
100
101         command = [
102                 PluginDir + "/check_fping",
103                 "$fping_address$"
104         ]
105
106         arguments = {
107                 "-w" = "$fping_wrta$,$fping_wpl$%"
108                 "-c" = "$fping_crta$,$fping_cpl$%"
109                 "-n" = "$fping_number$"
110                 "-i" = "$fping_interval$"
111                 "-b" = "$fping_bytes$"
112                 "-T" = "$fping_target_timeout$"
113                 "-S" = "$fping_source_ip$"
114                 "-I" = "$fping_source_interface$"
115         }
116
117         vars.fping_wrta = 100
118         vars.fping_wpl = 5
119         vars.fping_crta = 200
120         vars.fping_cpl = 15
121         vars.fping_number = 5
122         vars.fping_interval = 500
123 }
124
125 object CheckCommand "fping4" {
126         import "fping-common"
127
128         command += [ "-4" ]
129
130         vars.fping_address = "$address$"
131 }
132
133 object CheckCommand "fping6" {
134         import "fping-common"
135
136         command += [ "-6" ]
137
138         vars.fping_address = "$address6$"
139 }
140
141 object CheckCommand "dummy" {
142         import "plugin-check-command"
143
144         command = [
145                 PluginDir + "/check_dummy",
146                 "$dummy_state$",
147                 "$dummy_text$"
148         ]
149
150         vars.dummy_state = 0
151         vars.dummy_text = "Check was successful."
152 }
153
154 object CheckCommand "passive" {
155         import "dummy"
156
157         vars.dummy_state = 3
158         vars.dummy_text = "No Passive Check Result Received."
159 }
160
161 object CheckCommand "tcp" {
162         import "plugin-check-command"
163         import "ipv4-or-ipv6"
164
165         command = [ PluginDir + "/check_tcp" ]
166
167         arguments = {
168                 "-H" = {
169                         value =  "$tcp_address$"
170                         description = "Host name, IP Address, or unix socket (must be an absolute path)."
171                 }
172                 "-p" = {
173                         value =  "$tcp_port$"
174                         description = "The TCP port number."
175                 }
176                 "-e" = {
177                         value = "$tcp_expect$"
178                         description = "String to expect in server response (may be repeated)."
179                 }
180                 "-A" = {
181                         set_if = "$tcp_all$"
182                         description = "All expect strings need to occur in server response. Defaults to false."
183                 }
184                 "-E_send" = {
185                         key = "-E"
186                         order = 1
187                         set_if = "$tcp_escape_send$"
188                         description = "Enable usage of \n, \r, \t or \\ in send string."
189                 }
190                 "-s" = {
191                         order = 2
192                         value = "$tcp_send$"
193                         description = "String to send to the server."
194                 }
195                 "-E_quit" = {
196                         key = "-E"
197                         order = 3
198                         set_if = "$tcp_escape_quit$"
199                         description = "Enable usage of \n, \r, \t or \\ in quit string."
200                 }
201                 "-q" = {
202                         order = 4
203                         value = "$tcp_quit$"
204                         description = "String to send server to initiate a clean close of the connection."
205                 }
206                 "-r" = {
207                         value = "$tcp_refuse$"
208                         description = "Accept TCP refusals with states ok, warn, crit. Defaults to crit."
209                 }
210                 "-M" = {
211                         value = "$tcp_mismatch$"
212                         description = "Accept expected string mismatches with states ok, warn, crit. Defaults to warn."
213                 }
214                 "-j" = {
215                         set_if = "$tcp_jail$"
216                         description = "Hide output from TCP socket."
217                 }
218                 "-m" = {
219                         value = "$tcp_maxbytes$"
220                         description = "Close connection once more than this number of bytes are received."
221                 }
222                 "-d" = {
223                         value = "$tcp_delay$"
224                         description = "Seconds to wait between sending string and polling for response."
225                 }
226                 "-D" = {
227                         value = "$tcp_certificate$"
228                         description = "Minimum number of days a certificate has to be valid. 1st value is number of days for warning, 2nd is critical (if not specified: 0) - seperated by comma."
229                 }
230                 "-S" = {
231                         set_if = "$tcp_ssl$"
232                         description = "Use SSL for the connection."
233                 }
234                 "-w" = {
235                         value = "$tcp_wtime$"
236                         description = "Response time to result in warning status (seconds)."
237                 }
238                 "-c" = {
239                         value = "$tcp_ctime$"
240                         description = "Response time to result in critical status (seconds)."
241                 }
242                 "-t" = {
243                         value = "$tcp_timeout$"
244                         description = "Seconds before connection times out. Defaults to 10."
245                 }
246         }
247
248         vars.tcp_address = "$check_address$"
249         vars.tcp_all = false
250         vars.tcp_refuse = "crit"
251         vars.tcp_mismatch = "warn"
252         vars.tcp_timeout = 10
253 }
254
255 object CheckCommand "ssl" {
256         import "plugin-check-command"
257         import "ipv4-or-ipv6"
258
259         command = [ PluginDir + "/check_tcp" ]
260
261         arguments = {
262                 "-H" = "$ssl_address$"
263                 "-p" = "$ssl_port$"
264                 "--ssl" = { }
265                 "--timeout" = "$ssl_timeout$"
266                 "-D" = "$ssl_cert_valid_days_warn$,$ssl_cert_valid_days_critical$"
267         }
268
269         vars.ssl_address = "$check_address$"
270 }
271
272 object CheckCommand "udp" {
273         import "plugin-check-command"
274         import "ipv4-or-ipv6"
275
276         command = [
277                 PluginDir + "/check_udp",
278                 "-H", "$udp_address$",
279                 "-p", "$udp_port$"
280         ]
281
282         arguments = {
283                 "-s" = {
284                         value = "$udp_send$"
285                         required = true
286                 }
287                 "-e" = {
288                         value = "$udp_expect$"
289                         required = true
290                 }
291                 "-q" = "$udp_quit$"
292         }
293
294         vars.udp_address = "$check_address$"
295 }
296
297 object CheckCommand "http" {
298         import "plugin-check-command"
299         import "ipv4-or-ipv6"
300
301         command = [ PluginDir + "/check_http" ]
302
303         arguments = {
304                 "-H" = "$http_vhost$"
305                 "-I" = "$http_address$"
306                 "-u" = "$http_uri$"
307                 "-p" = "$http_port$"
308                 "-S" = {
309                         set_if = "$http_ssl$"
310                 }
311                 "--sni" = {
312                         set_if = "$http_sni$"
313                 }
314                 "-C" = {
315                         value = "$http_certificate$"
316                         description = "Minimum number of days a certificate has to be valid. Port defaults to 443."
317                 }
318                 "-J" = {
319                         value = "$http_clientcert$"
320                         description = "Name of file contains the client certificate (PEM format)"
321                 }
322                 "-K" = {
323                         value = "$http_privatekey$"
324                         description = "Name of file contains the private key (PEM format)"
325                 }
326                 "-a" = {
327                         value = "$http_auth_pair$"
328                         description = "Username:password on sites with basic authentication"
329                 }
330                 "--no-body" = {
331                         set_if = "$http_ignore_body$"
332                 }
333                 "-w" = "$http_warn_time$"
334                 "-c" = "$http_critical_time$"
335                 "-e" = "$http_expect$"
336                 "-d" = {
337                         value = "$http_headerstring$"
338                         description = "String to expect in the response headers"
339                 }
340                 "-s" = {
341                         value = "$http_string$"
342                         description = "String to expect in the content"
343                 }
344                 "-P" = {
345                         value = "$http_post$"
346                         description = "URL encoded http POST data"
347                 }
348                 "-j" = {
349                         value = "$http_method$"
350                         description = "Set http method (for example: HEAD, OPTIONS, TRACE, PUT, DELETE)"
351                 }
352                 "-M" = {
353                         value = "$http_maxage$"
354                         description = "Warn if document is more than seconds old"
355                 }
356                 "-T" = {
357                         value = "$http_contenttype$"
358                         description = "Specify Content-Type header when POSTing"
359                 }
360                 "-l" = {
361                         set_if = "$http_linespan$"
362                         description = "Allow regex to span newline"
363                         order = 1
364                 }
365                 "-r" = {
366                         value = "$http_expect_body_regex$"
367                         description = "Search page for regex"
368                         order = 2
369                 }
370                 "-R" = {
371                         value = "$http_expect_body_eregi$"
372                         description = "Search page for case-insensitive regex"
373                         order = 2
374                 }
375                 "--invert-regex" = {
376                         set_if = "$http_invertregex$"
377                         description = "Return CRITICAL if found, OK if not"
378                 }
379                 "-b" = {
380                         value = "$http_proxy_auth_pair$"
381                         description = "Username:password on proxy-servers with basic authentication"
382                 }
383                 "-A" = {
384                         value = "$http_useragent$"
385                         description = "String to be sent in http header as User Agent"
386                 }
387                 "-k" = {
388                         value = "$http_header$"
389                         description = "Any other tags to be sent in http header"
390                 }
391                 "-E" = {
392                         set_if = "$http_extendedperfdata$"
393                         description = "Print additional perfdata"
394                 }
395                 "-f" = {
396                         value = "$http_onredirect$"
397                         description = "How to handle redirect pages"
398                 }
399                 "-m" = {
400                         value = "$http_pagesize$"
401                         description = "Minim page size required:Maximum page size required"
402                 }
403                 "-t" = {
404                         value = "$http_timeout$"
405                         description = "Seconds before connection times out"
406                 }
407         }
408
409         vars.http_address = "$check_address$"
410         vars.http_ssl = false
411         vars.http_sni = false
412         vars.http_linespan = false
413         vars.http_invertregex = false
414 }
415
416 object CheckCommand "ftp" {
417         import "plugin-check-command"
418         import "ipv4-or-ipv6"
419
420         command = [ PluginDir + "/check_ftp" ]
421
422         arguments = {
423                 "-H" = {
424                         value = "$ftp_address$"
425                         description = "The host's address. Defaults to $address$ or $address6$ if the address attribute is not set."
426                 }
427                 "-p" = {
428                         value = "$ftp_port$"
429                         description = "The FTP port number. Defaults to none"
430                 }
431                 "-e" = {
432                         value = "$ftp_expect$"
433                         description = "String to expect in server response (may be repeated)."
434                 }
435                 "-A" = {
436                         set_if = "$ftp_all$"
437                         description = "All expect strings need to occur in server response. Default is any."
438                 }
439                 "-E_send" = {
440                         key = "-E"
441                         order = 1
442                         set_if = "$ftp_escape_send$"
443                         description = "Enable usage of \n, \r, \t or \\ in send string. Default is nothing."
444                 }
445                 "-s" = {
446                         order = 2
447                         value = "$ftp_send$"
448                         description = "String to send to the server."
449                 }
450                 "-E_quit" = {
451                         key = "-E"
452                         order = 3
453                         set_if = "$ftp_escape_quit$"
454                         description = "Can use \n, \r, \t or \\ in quit string. Default is \r\n added to end of quit."
455                 }
456                 "-q" = {
457                         order = 4
458                         value = "$ftp_quit$"
459                         description = "String to send server to initiate a clean close of the connection."
460                 }
461                 "-r" = {
462                         value = "$ftp_refuse$"
463                         description = "Accept TCP refusals with states ok, warn, crit. Defaults to crit."
464                 }
465                 "-M" = {
466                         value = "$ftp_mismatch$"
467                         description = "Accept expected string mismatches with states ok, warn, crit. Defaults to warn."
468                 }
469                 "-j" = {
470                         set_if = "$ftp_jail$"
471                         description = "Hide output from TCP socket."
472                 }
473                 "-m" = {
474                         value = "$ftp_maxbytes$"
475                         description = "Close connection once more than this number of bytes are received."
476                 }
477                 "-d" = {
478                         value = "$ftp_delay$"
479                         description = "Seconds to wait between sending string and polling for response."
480                 }
481                 "-D" = {
482                         value = "$ftp_certificate$"
483                         description = "Minimum number of days a certificate has to be valid. 1st value is number of days for warning, 2nd is critical (if not specified: 0) - seperated by comma."
484                 }
485                 "-S" = {
486                         set_if = "$ftp_ssl$"
487                         description = "Use SSL for the connection."
488                 }
489                 "-w" = {
490                         value = "$ftp_wtime$"
491                         description = "Response time to result in warning status (seconds)."
492                 }
493                 "-c" = {
494                         value = "$ftp_ctime$"
495                         description = "Response time to result in critical status (seconds)."
496                 }
497                 "-t" = {
498                         value = "$ftp_timeout$"
499                         description = "Seconds before connection times out. Defaults to 10."
500                 }
501         }
502
503         vars.ftp_address = "$check_address$"
504         vars.ftp_ssl = false
505         vars.ftp_refuse = "crit"
506         vars.ftp_mismatch = "warn"
507         vars.ftp_timeout = 10
508 }
509
510 object CheckCommand "smtp" {
511         import "plugin-check-command"
512         import "ipv4-or-ipv6"
513
514         command = [ PluginDir + "/check_smtp" ]
515
516         arguments = {
517                 "-H" = "$smtp_address$"
518                 "-p" = "$smtp_port$"
519                 "-f" = "$smtp_mail_from$"
520                 "-e" = "$smtp_expect$"
521                 "-C" = "$smtp_command$"
522                 "-R" = "$smtp_response$"
523                 "-F" = "$smtp_helo_fqdn$"
524                 "-D" = "$smtp_certificate_age$"
525                 "-S" = "$smtp_starttls$"
526                 "-A" = "$smtp_authtype$"
527                 "-U" = "$smtp_authuser$"
528                 "-P" = "$smtp_authpass$"
529                 "-q" = "$smtp_ignore_quit$"
530                 "-w" = "$smtp_warning$"
531                 "-c" = "$smtp_critical$"
532                 "-t" = "$smtp_timeout$"
533         }
534
535         vars.smtp_address = "$check_address$"
536 }
537
538 object CheckCommand "ssmtp" {
539         import "plugin-check-command"
540         import "ipv4-or-ipv6"
541
542         command = [ PluginDir + "/check_ssmtp" ]
543         arguments = {
544                 "-H" = "$ssmtp_address$"
545                 "-p" = "$ssmtp_port$"
546         }
547
548         vars.ssmtp_address = "$check_address$"
549 }
550
551 object CheckCommand "imap" {
552         import "plugin-check-command"
553         import "ipv4-or-ipv6"
554
555         command = [ PluginDir + "/check_imap" ]
556
557         arguments = {
558                 "-H" = "$imap_address$"
559                 "-p" = "$imap_port$"
560         }
561
562         vars.imap_address = "$check_address$"
563 }
564
565 object CheckCommand "simap" {
566         import "plugin-check-command"
567         import "ipv4-or-ipv6"
568
569           command = [ PluginDir + "/check_simap" ]
570
571         arguments = {
572                 "-H" = "$simap_address$"
573                 "-p" = "$simap_port$"
574         }
575
576         vars.simap_address = "$check_address$"
577 }
578
579 object CheckCommand "pop" {
580         import "plugin-check-command"
581         import "ipv4-or-ipv6"
582
583         command = [ PluginDir + "/check_pop" ]
584
585         arguments = {
586                 "-H" = "$pop_address$"
587                 "-p" = "$pop_port$"
588         }
589
590         vars.pop_address = "$check_address$"
591 }
592
593 object CheckCommand "spop" {
594         import "plugin-check-command"
595         import "ipv4-or-ipv6"
596
597         command = [ PluginDir + "/check_spop" ]
598
599         arguments = {
600                 "-H" = "$spop_address$"
601                 "-p" = "$spop_port$"
602         }
603
604         vars.spop_address = "$check_address$"
605 }
606
607 object CheckCommand "ntp_time" {
608         import "plugin-check-command"
609         import "ipv4-or-ipv6"
610
611         command = [ PluginDir + "/check_ntp_time" ]
612
613         arguments = {
614                 "-H" = "$ntp_address$"
615                 "-p" = "$ntp_port$"
616                 "-q" = "$ntp_quit$"
617                 "-w" = "$ntp_warning$"
618                 "-c" = "$ntp_critical$"
619                 "-o" = "$ntp_timeoffset$"
620                 "-t" = "$ntp_timeout$"
621         }
622
623         vars.ntp_address = "$check_address$"
624 }
625
626 object CheckCommand "ntp_peer" {
627         import "plugin-check-command"
628         import "ipv4-or-ipv6"
629
630         command = [ PluginDir + "/check_ntp_peer" ]
631
632         arguments = {
633                 "-H" = "$ntp_address$"
634                 "-p" = "$ntp_port$"
635                 "-w" = "$ntp_warning$"
636                 "-c" = "$ntp_critical$"
637                 "-W" = "$ntp_wstratum$"
638                 "-C" = "$ntp_cstratum$"
639                 "-j" = "$ntp_wjitter$"
640                 "-k" = "$ntp_cjitter$"
641                 "-m" = "$ntp_wsource$"
642                 "-n" = "$ntp_csource$"
643                 "-t" = "$ntp_timeout$"
644         }
645
646         vars.ntp_address = "$check_address$"
647 }
648
649 object CheckCommand "ssh" {
650         import "plugin-check-command"
651         import "ipv4-or-ipv6"
652
653         command = [ PluginDir + "/check_ssh" ]
654
655         arguments = {
656                 "-p" = "$ssh_port$"
657                 "-t" = "$ssh_timeout$"
658                 "host" = {
659                         value = "$ssh_address$"
660                         skip_key = true
661                         order = 1
662                 }
663         }
664
665         vars.ssh_address = "$check_address$"
666 }
667
668 object CheckCommand "disk" {
669         import "plugin-check-command"
670
671         command = [ PluginDir + "/check_disk" ]
672
673         arguments = {
674                 "-w" = {
675                         value = "$disk_wfree$"
676                         description = "Exit with WARNING status if less than INTEGER units of disk are free or Exit with WARNING status if less than PERCENT of disk space is free"
677                         required = true
678                         order = -3
679                 }
680
681                 "-c" = {
682                         value = "$disk_cfree$"
683                         description = "Exit with CRITICAL status if less than INTEGER units of disk are free or Exit with CRITCAL status if less than PERCENT of disk space is free"
684                         required = true
685                         order = -3
686                 }
687
688                 "-W" = {
689                         value = "$disk_inode_wfree$"
690                         description = "Exit with WARNING status if less than PERCENT of inode space is free"
691                 }
692
693                 "-K" = {
694                         value = "$disk_inode_cfree$"
695                         description = "Exit with CRITICAL status if less than PERCENT of inode space is free"
696                 }
697
698                 "-p" = {
699                         value = "$disk_partitions$"
700                         description = "Path or partition (may be repeated)"
701                         repeat_key = true
702                         order = 1
703                 }
704
705                 "-p_old" = {
706                         key = "-p"
707                         value = "$disk_partition$"
708                         order = 1
709                 }
710
711                 "-x" = {
712                         value = "$disk_partitions_excluded$"
713                         description = "Ignore device (only works if -p unspecified)"
714                 }
715
716                 "-x_old" = {
717                         key = "-x"
718                         value = "$disk_partition_excluded$"
719                 }
720
721                 "-C" = {
722                         set_if = "$disk_clear$"
723                         description = "Clear thresholds"
724                 }
725
726                 "-E" = {
727                         set_if = "$disk_exact_match$"
728                         description = "For paths or partitions specified with -p, only check for exact paths"
729                 }
730
731                 "-e" = {
732                         set_if = "$disk_errors_only$"
733                         description = "Display only devices/mountpoints with errors"
734                 }
735
736                 "-g" = {
737                         value = "$disk_group$"
738                         description = "Group paths. Thresholds apply to (free-)space of all partitions together"
739                 }
740
741                 "-k" = {
742                         set_if = "$disk_kilobytes$"
743                         description = "Same as --units kB"
744                 }
745
746                 "-l" = {
747                         set_if = "$disk_local$"
748                         description = " Only check local filesystems"
749                 }
750
751                 "-L" = {
752                         set_if = "$disk_stat_remote_fs$"
753                         description = "Only check local filesystems against thresholds. Yet call stat on remote filesystems to test if they are accessible (e.g. to detect Stale NFS Handles)"
754                 }
755
756                 "-M" = {
757                         set_if = "$disk_mountpoint$"
758                         description = "Display the mountpoint instead of the partition"
759                 }
760
761                 "-m" = {
762                         set_if = "$disk_megabytes$"
763                         description = "Same as --units MB"
764                 }
765
766                 "-A" = {
767                         set_if = "$disk_all$"
768                         description = "Explicitly select all paths. This is equivalent to -R .*"
769                 }
770
771                 "-R" = {
772                         value = "$disk_eregi_path$"
773                         description = "Case insensitive regular expression for path/partition (may be repeated)"
774                         repeat_key = true
775                 }
776
777                 "-r" = {
778                         value = "$disk_ereg_path$"
779                         description = "Regular expression for path or partition (may be repeated)"
780                         repeat_key = true
781                 }
782
783                 "-I" = {
784                         value = "$disk_ignore_eregi_path$"
785                         description = "Regular expression to ignore selected path/partition (case insensitive) (may be repeated)"
786                         repeat_key = true
787                         order = 2
788                 }
789
790                 "-i" = {
791                         value = "$disk_ignore_ereg_path$"
792                         description = "Regular expression to ignore selected path or partition (may be repeated)"
793                         repeat_key = true
794                         order = 2
795                 }
796
797                 "-t" = {
798                         value = "$disk_timeout$"
799                         description = "Seconds before connection times out (default: 10)"
800                 }
801
802                 "-u" = {
803                         value = "$disk_units$"
804                         description = "Choose bytes, kB, MB, GB, TB (default: MB)"
805                 }
806
807                 "-X" = {
808                         value = "$disk_exclude_type$"
809                         description = "Ignore all filesystems of indicated type (may be repeated)"
810                         repeat_key = true
811                 }
812         }
813
814         vars.disk_wfree = "20%"
815         vars.disk_cfree = "10%"
816         vars.disk_inode_wfree = "20%"
817         vars.disk_inode_cfree = "10%"
818         vars.disk_megabytes = true
819         vars.disk_exclude_type = ["none", "tmpfs", "sysfs", "proc", "devtmpfs", "devfs", "mtmfs"]
820 }
821
822 object CheckCommand "disk_smb" {
823         import "plugin-check-command"
824
825         command = [ PluginDir + "/check_disk_smb" ]
826
827         arguments = {
828                 "-H" = {
829                         value = "$disk_smb_hostname$"
830                         description = "NetBIOS name of the server."
831                 }
832                 "-s" = {
833                         value = "$disk_smb_share$"
834                         description = "Share name to be tested."
835                 }
836                 "-W" = {
837                         value = "$disk_smb_workgroup$"
838                         description = "Workgroup or Domain used (Defaults to 'WORKGROUP' if omitted)."
839                 }
840                 "-a" = {
841                         value = "$disk_smb_address$"
842                         description = "IP-address of HOST (only necessary if HOST is in another network)."
843                 }
844                 "-u" = {
845                         value = "$disk_smb_username$"
846                         description = "Username to log in to server. (Defaults to 'guest' if omitted)."
847                 }
848                 "-p" = {
849                         value = "$disk_smb_password$"
850                         description = "Password to log in to server. (Defaults to an empty password if omitted)."
851                 }
852                 "-w" = {
853                         value = "$disk_smb_wused$"
854                         description = "Percent of used space at which a warning will be generated (Default: 85%)."
855                 }
856                 "-c" = {
857                         value = "$disk_smb_cused$"
858                         description = "Percent of used space at which a critical will be generated (Defaults: 95%)"
859                 }
860                 "-P" = {
861                         value = "$disk_smb_port$"
862                         description = "Port to be used to connect to. Some Windows boxes use 139, others 445 (Defaults to smbclient default if omitted)."
863                 }
864         }
865
866         vars.disk_smb_wused = "85%"
867         vars.disk_smb_cused = "95%"
868 }
869
870 object CheckCommand "users" {
871         import "plugin-check-command"
872
873         command = [ PluginDir + "/check_users" ]
874
875         arguments = {
876                 "-w" = "$users_wgreater$"
877                 "-c" = "$users_cgreater$"
878         }
879
880         vars.users_wgreater = 20
881         vars.users_cgreater = 50
882 }
883
884 object CheckCommand "procs" {
885         import "plugin-check-command"
886
887         command = [ PluginDir + "/check_procs" ]
888
889         arguments = {
890                 "-w" = {
891                         value = "$procs_warning$"
892                         description = "Generate warning state if metric is outside this range" 
893                 }
894                 "-c" = {
895                         value = "$procs_critical$"
896                         description = "Generate critical state if metric is outside this range" 
897                 }
898                 "-m" = {
899                         value = "$procs_metric$"
900                         description = "Check thresholds against metric" 
901                 }
902                 "-t" = {
903                         value = "$procs_timeout$"
904                         description = "Seconds before plugin times out"
905                 }
906                 "-T" = {
907                         set_if = "$procs_traditional$"
908                         description = "Filter own process the traditional way by PID instead of /proc/pid/exe"
909                 }
910                 "-s" = {
911                         value = "$procs_state$"
912                         description = "Only scan for processes that have one or more of the status flags you specify"
913                 }
914                 "-p" = {
915                         value = "$procs_ppid$"
916                         description = "Only scan for children of the parent process ID indicated"
917                 }
918                 "-z" = {
919                         value = "$procs_vsz$"
920                         description = "Only scan for processes with VSZ higher than indicated"
921                 }
922                 "-r" = {
923                         value = "$procs_rss$"
924                         description = "Only scan for processes with RSS higher than indicated"
925                 }
926                 "-P" = {
927                         value = "$procs_pcpu$"
928                         description = "Only scan for processes with PCPU higher than indicated"
929                 }
930                 "-u" = {
931                         value = "$procs_user$"
932                         description = "Only scan for processes with user name or ID indicated"
933                 }
934                 "-a" = {
935                         value = "$procs_argument$"
936                         description = "Only scan for processes with args that contain STRING"
937                 }
938                 "--ereg-argument-array" = {
939                         value = "$procs_argument_regex$"
940                         description = "Only scan for processes with args that contain the regex STRING"
941                 }
942                 "-C" = {
943                         value = "$procs_command$"
944                         description = "Only scan for exact matches of COMMAND (without path)"
945                 }
946                 "-k" = {
947                         set_if = "$procs_nokthreads$"
948                         description = "Only scan for non kernel threads"
949                 }
950         }
951
952         vars.procs_traditional = false
953         vars.procs_nokthreads = false
954         vars.procs_warning = 250
955         vars.procs_critical = 400
956 }
957
958 object CheckCommand "swap" {
959         import "plugin-check-command"
960
961         command = [ PluginDir + "/check_swap" ]
962
963         arguments = {
964                 "-w" = "$swap_wfree$%"
965                 "-c" = "$swap_cfree$%"
966         }
967
968         vars.swap_wfree = 50
969         vars.swap_cfree = 25
970 }
971
972 object CheckCommand "load" {
973         import "plugin-check-command"
974
975         command = [ PluginDir + "/check_load" ]
976
977         arguments = {
978                 "-w" = {
979                         value = "$load_wload1$,$load_wload5$,$load_wload15$"
980                         description = "Exit with WARNING status if load average exceeds WLOADn"
981                 }
982                 "-c" = {
983                         value = "$load_cload1$,$load_cload5$,$load_cload15$"
984                         description = "Exit with CRITICAL status if load average exceed CLOADn; the load average format is the same used by 'uptime' and 'w'"
985                 }
986                 "-r" = {
987                         set_if = "$load_percpu$"
988                         description = "Divide the load averages by the number of CPUs (when possible)"
989                 }
990         }
991
992         vars.load_wload1 = 5.0
993         vars.load_wload5 = 4.0
994         vars.load_wload15 = 3.0
995
996         vars.load_cload1 = 10.0
997         vars.load_cload5 = 6.0
998         vars.load_cload15 = 4.0
999
1000         vars.load_percpu = false
1001 }
1002
1003 object CheckCommand "snmp" {
1004         import "plugin-check-command"
1005
1006         command = [ PluginDir + "/check_snmp" ]
1007
1008         arguments = {
1009                 "-H" = "$snmp_address$"
1010                 "-o" = "$snmp_oid$"
1011                 "-C" = "$snmp_community$"
1012                 "-c" = "$snmp_crit$"
1013                 "-w" = "$snmp_warn$"
1014                 "-s" = "$snmp_string$"
1015                 "-r" = "$snmp_ereg$"
1016                 "-R" = "$snmp_eregi$"
1017                 "-l" = "$snmp_label$"
1018                 "-u" = "$snmp_units$"
1019                 "-t" = "$snmp_timeout$"
1020                 "--invert-search" = {
1021                         set_if = "$snmp_invert_search$"
1022                         description = "Invert search result and return CRITICAL if found"
1023                 }
1024                 "-P" = "$snmp_version$"
1025                 "-m" = "$snmp_miblist$"
1026                 "--rate-multiplier" = "$snmp_rate_multiplier$"
1027                 "--rate" = {
1028                         set_if = "$snmp_rate$"
1029                         description = "Enable rate calculation"
1030                 }
1031                 "-n" = {
1032                         set_if = "$snmp_getnext$"
1033                         description = "Use SNMP GETNEXT instead of SNMP GET"
1034                 }
1035         }
1036
1037         vars.snmp_address = {{
1038                 var addr_v4 = macro("$address$")
1039                 var addr_v6 = macro("$address6$")
1040
1041                 if (addr_v4) {
1042                         return addr_v4
1043                 } else {
1044                         return "udp6:[" + addr_v6 + "]"
1045                 }
1046         }}
1047
1048         vars.snmp_community = "public"
1049         vars.snmp_invert_search = false
1050         vars.snmp_timeout = "10"
1051 }
1052
1053 object CheckCommand "snmpv3" {
1054         import "plugin-check-command"
1055         import "ipv4-or-ipv6"
1056
1057         command = [ PluginDir + "/check_snmp" ]
1058
1059         arguments = {
1060                 "-H" = {
1061                                 value = "$snmpv3_address$"
1062                                 description = "Host name, IP Address, or unix socket (must be an absolute path)"
1063                 }
1064                 "-n" = {
1065                                 set_if = "$snmpv3_getnext$"
1066                                 description = "Use SNMP GETNEXT instead of SNMP GET"
1067                 }
1068                 "-P" = {
1069                                 value = 3
1070                                 description = "SNMP protocol version"
1071                 }
1072                 "-L" = {
1073                                 value = "$snmpv3_seclevel$"
1074                                 description = "SNMPv3 securityLevel"
1075                 }
1076                 "-a" = {
1077                                 value = "$snmpv3_auth_alg$"
1078                                 description = "SNMPv3 auth proto"
1079                 }
1080                 "-U" = {
1081                                 value = "$snmpv3_user$"
1082                                 description = "SNMPv3 username"
1083                 }
1084                 "-A" = {
1085                                 value = "$snmpv3_auth_key$"
1086                                 description = "SNMPv3 authentication password"
1087                 }
1088                 "-X" = {
1089                                 value = "$snmpv3_priv_key$"
1090                                 description = "SNMPv3 privacy password"
1091                 }
1092                 "-o" = {
1093                                 value = "$snmpv3_oid$"
1094                                 description = "Object identifier(s) or SNMP variables whose value you wish to query"
1095                 }
1096                 "-x" = {
1097                                 value = "$snmpv3_priv_alg$"
1098                                 description = "SNMPv3 priv proto (default DES)"
1099                 }
1100                 "-w" = {
1101                                 value = "$snmpv3_warn$"
1102                                 description = "Warning threshold range(s)"
1103                 }
1104                 "-c" = {
1105                                 value = "$snmpv3_crit$"
1106                                 description = "Critical threshold range(s)"
1107                 }
1108                 "-s" = {
1109                                 value = "$snmpv3_string$"
1110                                 description = "Return OK state (for that OID) if STRING is an exact match"
1111                 }
1112                 "-r" = {
1113                                 value = "$snmpv3_ereg$"
1114                                 description = "Return OK state (for that OID) if extended regular expression REGEX matches"
1115                 }
1116                 "-R" = {
1117                                 value = "$snmpv3_eregi$"
1118                                 description = "Return OK state (for that OID) if case-insensitive extended REGEX matches"
1119                 }
1120                 "--invert-search" = {
1121                                 set_if = "$snmpv3_invert_search$"
1122                                 description = "Invert search result and return CRITICAL if found"
1123                 }
1124                 "-l" = {
1125                                 value = "$snmpv3_label$"
1126                                 description = "Prefix label for output from plugin"
1127                 }
1128         }
1129
1130         vars.snmpv3_address = "$check_address$"
1131         vars.snmpv3_auth_alg = "SHA"
1132         vars.snmpv3_priv_alg = "AES"
1133         vars.snmpv3_seclevel = "authPriv"
1134 }
1135
1136 object CheckCommand "snmp-uptime" {
1137         import "snmp"
1138
1139         vars.snmp_oid = "1.3.6.1.2.1.1.3.0"
1140 }
1141
1142 object CheckCommand "apt" {
1143         import "plugin-check-command"
1144
1145         command = [ PluginDir + "/check_apt" ]
1146 }
1147
1148 object CheckCommand "dhcp" {
1149         import "plugin-check-command"
1150
1151         command = [ PluginDir + "/check_dhcp" ]
1152
1153         arguments = {
1154                 "-s" = "$dhcp_serverip$"
1155                 "-r" = "$dhcp_requestedip$"
1156                 "-t" = "$dhcp_timeout$"
1157                 "-i" = "$dhcp_interface$"
1158                 "-m" = "$dhcp_mac$"
1159                 "-u" = {
1160                         set_if = "$dhcp_unicast$"
1161                 }
1162         }
1163
1164         vars.dhcp_unicast = false
1165 }
1166
1167 object CheckCommand "dns" {
1168         import "plugin-check-command"
1169         import "ipv4-or-ipv6"
1170
1171         command = [ PluginDir + "/check_dns" ]
1172
1173         arguments = {
1174                 "-H" = {
1175                         value = "$dns_lookup$"
1176                         description = "The name or address you want to query."
1177                 }
1178                 "-s" = {
1179                         value = "$dns_server$"
1180                         description = "Optional DNS server you want to use for the lookup."
1181                 }
1182                 "-a" = {
1183                         value = "$dns_expected_answers$"
1184                         description = "Optional ip address or host you expect the DNS server to return. Host must end with a dot (.). This option can be repeated multiple times (Returns OK if any value match). If multiple addresses are returned at once, you have to match the whole string of addresses separated with commas (sorted alphabetically)."
1185                 }
1186                 "-a_old" = {
1187                         key = "-a"
1188                         value ="$dns_expected_answer$"
1189                 }
1190                 "-A" = {
1191                         set_if = "$dns_authoritative$"
1192                 }
1193                 "-w" = {
1194                         value = "$dns_wtime$"
1195                         description = "Return warning if elapsed time exceeds value."
1196                 }
1197                 "-c" = {
1198                         value = "$dns_ctime$"
1199                         description = "Return critical if elapsed time exceeds value."
1200                 }
1201                 "-t" = {
1202                         value = "$dns_timeout$"
1203                         description = "Seconds before connection times out. Defaults to 10."
1204                 }
1205         }
1206
1207         vars.dns_lookup = "$host.name$"
1208         vars.dns_expected_answer = "$check_address$"
1209         vars.dns_timeout = 10
1210 }
1211
1212 object CheckCommand "dig" {
1213         import "plugin-check-command"
1214         import "ipv4-or-ipv6"
1215
1216         command = [ PluginDir + "/check_dig" ]
1217
1218         arguments = {
1219                 "-H" = "$dig_server$"
1220                 "-l" = "$dig_lookup$"
1221         }
1222
1223         vars.dig_server = "$check_address$"
1224 }
1225
1226 object CheckCommand "nscp" {
1227         import "plugin-check-command"
1228         import "ipv4-or-ipv6"
1229
1230         command = [ PluginDir + "/check_nt" ]
1231
1232         arguments = {
1233                 "-H" = "$nscp_address$"
1234                 "-p" = "$nscp_port$"
1235                 "-s" = "$nscp_password$"
1236                 "-v" = {
1237                         value = "$nscp_variable$"
1238                         required = true
1239                 }
1240                 "-l" = {
1241                         value = "$nscp_params$"
1242                         repeat_key = false
1243                 }
1244                 "-w" = "$nscp_warn$"
1245                 "-c" = "$nscp_crit$"
1246                 "-t" = "$nscp_timeout$"
1247                 "-d" = {
1248                         value = "SHOWALL"
1249                         description = "Use with SERVICESTATE to see working services or PROCSTATE for running processes"
1250                         set_if = "$nscp_showall$"
1251                 }
1252         }
1253
1254         vars.nscp_address = "$check_address$"
1255         vars.nscp_port = 12489
1256         vars.nscp_showall = false
1257 }
1258
1259 object CheckCommand "by_ssh" {
1260         import "plugin-check-command"
1261         import "ipv4-or-ipv6"
1262
1263         command = [ PluginDir + "/check_by_ssh" ]
1264
1265         arguments = {
1266                 "-H" = "$by_ssh_address$"
1267                 "-p" = "$by_ssh_port$"
1268                 "-C" = "$by_ssh_command$"
1269                 "-l" = "$by_ssh_logname$"
1270                 "-i" = "$by_ssh_identity$"
1271                 "-q" = {
1272                         set_if = "$by_ssh_quiet$"
1273                 }
1274                 "-w" = "$by_ssh_warn$"
1275                 "-c" = "$by_ssh_crit$"
1276                 "-t" = "$by_ssh_timeout$"
1277         }
1278
1279         vars.by_ssh_address = "$check_address$"
1280         vars.by_ssh_quiet = false
1281 }
1282
1283 object CheckCommand "ups" {
1284         import "plugin-check-command"
1285         import "ipv4-or-ipv6"
1286
1287         command = [ PluginDir + "/check_ups" ]
1288
1289         arguments = {
1290                 "-H" = {
1291                         value = "$ups_address$"
1292                         description = "Address of the upsd server"
1293                         required = true
1294                 }
1295                 "-u" = {
1296                         value = "$ups_name$"
1297                         description = "Name of the UPS to monitor"
1298                         required = true
1299                 }
1300                 "-p" = {
1301                         value = "$ups_port$"
1302                         description = "Port number (default: 3493)"
1303                 }
1304                 "-v" = {
1305                         value = "$ups_variable$"
1306                         description = "Variable to monitor, valid strings are LINE, TEMP, BATTPCT or LOADPCT"
1307                 }
1308                 "-w" = {
1309                         value = "$ups_warning$"
1310                         description = "Warning threshold for the selected variable"
1311                 }
1312                 "-c" = {
1313                         value = "$ups_critical$"
1314                         description = "Critical threshold for the selected variable"
1315                 }
1316                 "-T" = {
1317                         set_if = "$ups_celsius$"
1318                         description = "Display temperature in degrees Celsius instead of Fahrenheit"
1319                 }
1320                 "-t" = {
1321                         value = "$ups_timeout$"
1322                         description = "Seconds before the connection times out (default: 10)"
1323                 }
1324         }
1325
1326         vars.ups_address = "$check_address$"
1327         vars.ups_name = "ups"
1328 }
1329
1330 object CheckCommand "nrpe" {
1331         import "plugin-check-command"
1332         import "ipv4-or-ipv6"
1333
1334         command = [ PluginDir + "/check_nrpe" ]
1335
1336         arguments = {
1337                 "-H" = "$nrpe_address$"
1338                 "-p" = "$nrpe_port$"
1339                 "-c" = "$nrpe_command$"
1340                 "-n" = {
1341                         set_if = "$nrpe_no_ssl$"
1342                         description = "Do not use SSL."
1343                 }
1344                 "-u" = {
1345                         set_if = "$nrpe_timeout_unknown$"
1346                         description = "Make socket timeouts return an UNKNOWN state instead of CRITICAL"
1347                 }
1348                 "-t" = "$nrpe_timeout$"
1349                 "-a" = {
1350                         value = "$nrpe_arguments$"
1351                         repeat_key = false
1352                         order = 1
1353                 }
1354         }
1355
1356         vars.nrpe_address = "$check_address$"
1357         vars.nrpe_no_ssl = false
1358         vars.nrpe_timeout_unknown = false
1359
1360         timeout = 5m
1361 }
1362
1363 object CheckCommand "hpjd" {
1364         import "plugin-check-command"
1365         import "ipv4-or-ipv6"
1366
1367         command = [ PluginDir + "/check_hpjd" ]
1368
1369         arguments = {
1370                 "-H" = "$hpjd_address$"
1371                 "-C" = "$hpjd_community$"
1372                 "-p" = "$hpjd_port$"
1373         }
1374
1375         vars.hpjd_address = "$check_address$"
1376 }
1377
1378 object CheckCommand "icmp" {
1379         import "plugin-check-command"
1380
1381         command = [ PluginDir + "/check_icmp" ]
1382
1383         arguments = {
1384                 "-H" = {
1385                         value = "$icmp_address$"
1386                         repeat_key = false
1387                         order = 1
1388                 }
1389                 "-w" = "$icmp_wrta$,$icmp_wpl$%"
1390                 "-c" = "$icmp_crta$,$icmp_cpl$%"
1391                 "-s" = "$icmp_source$"
1392                 "-n" = "$icmp_packets$"
1393                 "-i" = "$icmp_packet_interval$"
1394                 "-I" = "$icmp_target_interval$"
1395                 "-m" = "$icmp_hosts_alive$"
1396                 "-b" = "$icmp_data_bytes$"
1397                 "-t" = "$icmp_timeout$"
1398         }
1399
1400         vars.icmp_address = "$address$"
1401         vars.icmp_wrta = 100
1402         vars.icmp_wpl = 5
1403         vars.icmp_crta = 200
1404         vars.icmp_cpl = 15
1405 }
1406
1407 object CheckCommand "ldap" {
1408     import "plugin-check-command"
1409     import "ipv4-or-ipv6"
1410
1411         command = [ PluginDir + "/check_ldap" ]
1412
1413         arguments = {
1414                 "-H" = {
1415                         value = "$ldap_address$"
1416                         description = "Host name, IP Address, or unix socket (must be an absolute path)"
1417                 }
1418                 "-p" = {
1419                         value = "$ldap_port$"
1420                         description = "Port number (default: 389)"
1421                 }
1422                 "-a" = {
1423                         value = "$ldap_attr$"
1424                         description = "ldap attribute to search (default: \"(objectclass=*)\""
1425                 }
1426                 "-b" = {
1427                         value = "$ldap_base$"
1428                         required = true
1429                         description = "ldap base (eg. ou=my unit, o=my org, c=at"
1430                 }
1431                 "-D" = {
1432                         value = "$ldap_bind$"
1433                         description = "ldap bind DN (if required)"
1434                 }
1435                 "-P" = {
1436                         value = "$ldap_pass$"
1437                         description = "ldap password (if required)"
1438                 }
1439                 "-T" = {
1440                         set_if = "$ldap_starttls$"
1441                         description = "use starttls mechanism introduced in protocol version 3"
1442                 }
1443                 "-S" = {
1444                         set_if = "$ldap_ssl$"
1445                         description = "use ldaps (ldap v2 ssl method). this also sets the default port to 636"
1446                 }
1447                 "-2" = {
1448                         set_if = "$ldap_v2$"
1449                         description = "Use LDAP protocol version 2"
1450                 }
1451                 "-3" = {
1452                         set_if = "$ldap_v3$"
1453                         description = "Use LDAP protocol version 3"
1454                 }
1455                 "-w" = {
1456                         value = "$ldap_warning$"
1457                         description = "Response time to result in warning status (seconds)"
1458                 }
1459                 "-c" = {
1460                         value = "$ldap_critical$"
1461                         description = "Response time to result in critical status (seconds)"
1462                 }
1463                 "-t" = {
1464                         value = "$ldap_timeout$"
1465                         description = "Seconds before connection times out (default: 10)"
1466                 }
1467                 "-v" = {
1468                         set_if = "$ldap_verbose$"
1469                         description = "Show details for command-line debugging"
1470                 }
1471         }
1472
1473         vars.ldap_address = "$check_address$"
1474         vars.ldap_v2 = true
1475         vars.ldap_v3 = false
1476         vars.ldap_timeout = 10s
1477         vars.ldap_verbose = false
1478 }
1479
1480 /* Contrib plugins */
1481 object CheckCommand "running_kernel" {
1482         import "plugin-check-command"
1483
1484         command = [ "sudo", PluginDir + "/check_running_kernel" ]
1485 }
1486
1487 object CheckCommand "clamd" {
1488         import "plugin-check-command"
1489
1490         command = [ PluginDir + "/check_clamd" ]
1491
1492         arguments = {
1493                 "-H" = {
1494                         value = "$clamd_address$"
1495                         description = "The host's address or unix socket (must be an absolute path)."
1496                         required = true
1497                 }
1498                 "-p" = {
1499                         value = "$clamd_port$"
1500                         description = "Port number (default: none)."
1501                 }
1502                 "-e" = {
1503                         value = "$clamd_expect$"
1504                         description = "String to expect in server response (may be repeated)."
1505                         repeat_key = true
1506                 }
1507                 "-A" = {
1508                         set_if = "$clamd_all$"
1509                         description = "All expect strings need to occur in server response. Default is any."
1510                 }
1511                 "-E_send" = {
1512                         key = "-E"
1513                         order = 1
1514                         set_if = "$clamd_escape_send$"
1515                         description = "Enable usage of \n, \r, \t or \\ in send string. Default is nothing."
1516                 }
1517                 "-s" = {
1518                         order = 2
1519                         value = "$clamd_send$"
1520                         description = "String to send to the server."
1521                 }
1522                 "-E_quit" = {
1523                         key = "-E"
1524                         order = 3
1525                         set_if = "$clamd_escape_quit$"
1526                         description = "Can use \n, \r, \t or \\ in quit string. Default is \r\n added to end of quit."
1527                 }
1528                 "-q" = {
1529                         order = 4
1530                         value = "$clamd_quit$"
1531                         description = "String to send server to initiate a clean close of the connection."
1532                 }
1533                 "-r" = {
1534                         value = "$clamd_refuse$"
1535                         description = "Accept TCP refusals with states ok, warn, crit. Defaults to crit."
1536                 }
1537                 "-M" = {
1538                         value = "$clamd_mismatch$"
1539                         description = "Accept expected string mismatches with states ok, warn, crit. Defaults to warn."
1540                 }
1541                 "-j" = {
1542                         set_if = "$clamd_jail$"
1543                         description = "Hide output from TCP socket."
1544                 }
1545                 "-m" = {
1546                         value = "$clamd_maxbytes$"
1547                         description = "Close connection once more than this number of bytes are received."
1548                 }
1549                 "-d" = {
1550                         value = "$clamd_delay$"
1551                         description = "Seconds to wait between sending string and polling for response."
1552                 }
1553                 "-D" = {
1554                         value = "$clamd_certificate$"
1555                         description = "Minimum number of days a certificate has to be valid. 1st value is number of days for warning, 2nd is critical (if not specified: 0) - seperated by comma."
1556                 }
1557                 "-S" = {
1558                         set_if = "$clamd_ssl$"
1559                         description = "Use SSL for the connection."
1560                 }
1561                 "-w" = {
1562                         value = "$clamd_wtime$"
1563                         description = "Response time to result in warning status (seconds)."
1564                 }
1565                 "-c" = {
1566                         value = "$clamd_ctime$"
1567                         description = "Response time to result in critical status (seconds)."
1568                 }
1569                 "-t" = {
1570                         value = "$clamd_timeout$"
1571                         description = "Seconds before connection times out. Defaults to 10."
1572                 }
1573         }
1574
1575         vars.clamd_ssl = false
1576         vars.clamd_refuse = "crit"
1577         vars.clamd_mismatch = "warn"
1578         vars.clamd_timeout = 10
1579 }
1580
1581 object CheckCommand "mailq" {
1582         import "plugin-check-command"
1583
1584         command = [ PluginDir + "/check_mailq" ]
1585
1586         arguments = {
1587                 "-w" = {
1588                         value = "$mailq_warning$"
1589                         description = "Min. number of messages in queue to generate warning"
1590                         required = true
1591                 }
1592                 "-c" = {
1593                         value = "$mailq_critical$"
1594                         description = "Min. number of messages in queue to generate critical alert ( w < c )"
1595                         required = true
1596                 }
1597                 "-W" = {
1598                         value = "$mailq_domain_warning$"
1599                         description = "Min. number of messages for same domain in queue to generate warning"
1600                 }
1601                 "-C" = {
1602                         value = "$mailq_domain_critical$"
1603                         description = "Min. number of messages for same domain in queue to generate critical alert ( W < C )"
1604                 }
1605                 "-t" = {
1606                         value = "$mailq_timeout$"
1607                         description = "Plugin timeout in seconds (default = 15)"
1608                 }
1609                 "-M" = {
1610                         value = "$mailq_servertype$"
1611                         description = "[ sendmail | qmail | postfix | exim | nullmailer ] (default = autodetect)"
1612                 }
1613         }
1614 }