1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
4 * main vmware-esx template
7 template CheckCommand "vmware-esx-command" {
8 command = [ PluginContribDir + "/check_vmware_esx" ]
11 "--ignore_unknown" = {
12 set_if = "$vmware_ignoreunknown$"
13 description = "Sometimes 3 (unknown) is returned from a component. But the check itself is ok. With this option the plugin will return OK (0) instead of UNKNOWN (3)."
15 "--ignore_warning" = {
16 set_if = "$vmware_ignorewarning$"
17 description = "Sometimes 2 (warning) is returned from a component. But the check itself is ok (from an operator view)."
20 value = "$vmware_timeout$"
21 description = "Seconds before plugin times out (default: 90)."
24 set_if = "$vmware_trace$"
25 description = "Set verbosity level of vSphere API request/respond trace."
28 value = "$vmware_sessionfile$"
29 description = "Vmware auth session file - no efect if $vmware_nosession$ var is true."
31 "--sessionfiledir" = {
32 value = "$vmware_sessionfiledir$"
33 description = "Vmware auth session file directory - no efect if $vmware_nosession$ var is true."
36 set_if = "$vmware_nosession$"
37 description = "No auth session - IT SHOULD BE USED FOR TESTING PURPOSES ONLY!."
40 value = "$vmware_username$"
41 description = "Username to connect with."
44 value = "$vmware_password$"
45 description = "Password to use with the username."
48 value = "$vmware_authfile$"
49 description = "Autentication file content: \
55 vars.vmware_timeout = "90"
56 vars.vmware_ignorewarning = false
57 vars.vmware_auth_nosession = false
58 vars.vmware_sessionfiledir = "/var/spool/icinga2/tmp"
66 template CheckCommand "vmware-esx-dc" {
67 import "vmware-esx-command"
71 value = "$vmware_datacenter$"
73 description = "Datacenter/Vcenter hostname."
76 value = "$vmware_cluster$"
78 description = "ESX or ESXi clustername."
81 value = "$vmware_sslport$"
82 description = "If a SSL port different from 443 is used."
86 vars.vmware_sslport = "443"
89 object CheckCommand "vmware-esx-dc-volumes" {
90 import "vmware-esx-dc"
93 "--select" = "volumes"
94 "--subselect" = "$vmware_subselect$"
96 set_if = "$vmware_gigabyte$"
97 description = "Output in GB instead of MB."
100 set_if = "$vmware_usedspace$"
101 description = "Output used space instead of free."
104 set_if = "$vmware_alertonly$"
105 description = "List only alerting volumes."
107 "--exclude" = "$vmware_exclude$"
108 "--include" = "$vmware_include$"
110 set_if = "$vmware_isregexp$"
112 "--warning" = "$vmware_warn$"
113 "--critical" = "$vmware_crit$"
116 vars.vmware_usedspace = true
117 vars.vmware_alertonly = false
118 vars.vmware_warn = "80%"
119 vars.vmware_crit = "90%"
122 object CheckCommand "vmware-esx-dc-runtime-info" {
123 import "vmware-esx-dc"
128 description = "Shows all runtime info for the datacenter/Vcenter."
133 object CheckCommand "vmware-esx-dc-runtime-listvms" {
134 import "vmware-esx-dc"
137 "--select" = "runtime"
138 "--subselect" = "listvms"
139 "--exclude" = "$vmware_exclude$"
140 "--include" = "$vmware_include$"
142 set_if = "$vmware_isregexp$"
145 set_if = "$vmware_multiline$"
148 set_if = "$vmware_alertonly$"
154 object CheckCommand "vmware-esx-dc-runtime-listhost" {
155 import "vmware-esx-dc"
158 "--select" = "runtime"
159 "--subselect" = "listhost"
160 "--exclude" = "$vmware_exclude$"
161 "--include" = "$vmware_include$"
163 set_if = "$vmware_isregexp$"
166 set_if = "$vmware_multiline$"
169 set_if = "$vmware_alertonly$"
174 object CheckCommand "vmware-esx-dc-runtime-listcluster" {
175 import "vmware-esx-dc"
178 "--select" = "runtime"
179 "--subselect" = "listcluster"
180 "--exclude" = "$vmware_exclude$"
181 "--include" = "$vmware_include$"
183 set_if = "$vmware_isregexp$"
186 set_if = "$vmware_multiline$"
189 set_if = "$vmware_alertonly$"
194 object CheckCommand "vmware-esx-dc-runtime-issues" {
195 import "vmware-esx-dc"
198 "--select" = "runtime"
199 "--subselect" = "issues"
200 "--exclude" = "$vmware_exclude$"
201 "--include" = "$vmware_include$"
203 set_if = "$vmware_isregexp$"
206 set_if = "$vmware_multiline$"
211 object CheckCommand "vmware-esx-dc-runtime-status" {
212 import "vmware-esx-dc"
215 "--select" = "runtime"
216 "--subselect" = "status"
220 object CheckCommand "vmware-esx-dc-runtime-tools" {
221 import "vmware-esx-dc"
224 "--select" = "runtime"
225 "--subselect" = "tools"
227 set_if = "$vmware_poweredonly$"
229 "--exclude" = "$vmware_exclude$"
230 "--include" = "$vmware_include$"
232 set_if = "$vmware_isregexp$"
235 set_if = "$vmware_multiline$"
238 set_if = "$vmware_alertonly$"
240 "--open-vm-tools" = {
241 set_if = "$vmware_openvmtools$"
251 template CheckCommand "vmware-esx-soap-host" {
252 import "vmware-esx-command"
256 value = "$vmware_host$"
258 description = "ESX or ESXi hostname."
261 value = "$vmware_datacenter$"
263 description = "Datacenter/Vcenter hostname."
266 value = "$vmware_sslport$"
267 description = "If a SSL port different from 443 is used."
271 vars.vmware_host = "$address$"
272 vars.vmware_sslport = "443"
275 object CheckCommand "vmware-esx-soap-host-check" {
276 import "vmware-esx-soap-host"
281 description = "Simple check to verify a successfull connection to VMWare SOAP API."
286 object CheckCommand "vmware-esx-soap-host-uptime" {
287 import "vmware-esx-soap-host"
290 "--select" = "uptime"
294 object CheckCommand "vmware-esx-soap-host-cpu" {
295 import "vmware-esx-soap-host"
299 "--warning" = "$vmware_warn$"
300 "--critical" = "$vmware_crit$"
303 vars.vmware_warn = "80%"
304 vars.vmware_crit = "90%"
308 object CheckCommand "vmware-esx-soap-host-cpu-ready" {
309 import "vmware-esx-soap-host"
313 "--subselect" = "ready"
317 object CheckCommand "vmware-esx-soap-host-cpu-wait" {
318 import "vmware-esx-soap-host"
322 "--subselect" = "wait"
326 object CheckCommand "vmware-esx-soap-host-cpu-usage" {
327 import "vmware-esx-soap-host"
331 "--subselect" = "usage"
332 "--warning" = "$vmware_warn$"
333 "--critical" = "$vmware_crit$"
336 vars.vmware_warn = "80%"
337 vars.vmware_crit = "90%"
340 object CheckCommand "vmware-esx-soap-host-mem" {
341 import "vmware-esx-soap-host"
348 object CheckCommand "vmware-esx-soap-host-mem-usage" {
349 import "vmware-esx-soap-host"
353 "--subselect" = "usage"
354 "--warning" = "$vmware_warn$"
355 "--critical" = "$vmware_crit$"
358 vars.vmware_warn = "80%"
359 vars.vmware_crit = "90%"
362 object CheckCommand "vmware-esx-soap-host-mem-consumed" {
363 import "vmware-esx-soap-host"
367 "--subselect" = "consumed"
368 "--warning" = "$vmware_warn$"
369 "--critical" = "$vmware_crit$"
373 object CheckCommand "vmware-esx-soap-host-mem-swapused" {
374 import "vmware-esx-soap-host"
378 "--subselect" = "swapused"
380 set_if = "$vmware_multiline$"
382 "--warning" = "$vmware_warn$"
383 "--critical" = "$vmware_crit$"
387 object CheckCommand "vmware-esx-soap-host-mem-overhead" {
388 import "vmware-esx-soap-host"
392 "--subselect" = "overhead"
393 "--warning" = "$vmware_warn$"
394 "--critical" = "$vmware_crit$"
398 object CheckCommand "vmware-esx-soap-host-mem-memctl" {
399 import "vmware-esx-soap-host"
403 "--subselect" = "memctl"
405 set_if = "$vmware_multiline$"
407 "--warning" = "$vmware_warn$"
408 "--critical" = "$vmware_crit$"
412 object CheckCommand "vmware-esx-soap-host-net" {
413 import "vmware-esx-soap-host"
417 "--exclude" = "$vmware_exclude$"
419 set_if = "$vmware_isregexp$"
424 object CheckCommand "vmware-esx-soap-host-net-usage" {
425 import "vmware-esx-soap-host"
429 "--subselect" = "usage"
430 "--warning" = "$vmware_warn$"
431 "--critical" = "$vmware_crit$"
435 object CheckCommand "vmware-esx-soap-host-net-receive" {
436 import "vmware-esx-soap-host"
440 "--subselect" = "receive"
441 "--warning" = "$vmware_warn$"
442 "--critical" = "$vmware_crit$"
446 object CheckCommand "vmware-esx-soap-host-net-send" {
447 import "vmware-esx-soap-host"
451 "--subselect" = "send"
452 "--warning" = "$vmware_warn$"
453 "--critical" = "$vmware_crit$"
457 object CheckCommand "vmware-esx-soap-host-net-nic" {
458 import "vmware-esx-soap-host"
462 "--subselect" = "nic"
463 "--exclude" = "$vmware_exclude$"
465 set_if = "$vmware_isregexp$"
470 object CheckCommand "vmware-esx-soap-host-volumes" {
471 import "vmware-esx-soap-host"
474 "--select" = "volumes"
475 "--subselect" = "$vmware_subselect$"
477 set_if = "$vmware_gigabyte$"
478 description = "Output in GB instead of MB."
481 set_if = "$vmware_usedspace$"
482 description = "Output used space instead of free."
485 set_if = "$vmware_alertonly$"
486 description = "List only alerting volumes."
488 "--exclude" = "$vmware_exclude$"
489 "--include" = "$vmware_include$"
491 set_if = "$vmware_isregexp$"
493 "--warning" = "$vmware_warn$"
494 "--critical" = "$vmware_crit$"
496 set_if = "$vmware_spaceleft$"
500 vars.vmware_usedspace = true
501 vars.vmware_alertonly = false
502 vars.vmware_warn = "80%"
503 vars.vmware_crit = "90%"
506 object CheckCommand "vmware-esx-soap-host-io" {
507 import "vmware-esx-soap-host"
514 object CheckCommand "vmware-esx-soap-host-io-aborted" {
515 import "vmware-esx-soap-host"
519 "--subselect" = "aborted"
520 "--warning" = "$vmware_warn$"
521 "--critical" = "$vmware_crit$"
525 object CheckCommand "vmware-esx-soap-host-io-resets" {
526 import "vmware-esx-soap-host"
530 "--subselect" = "resets"
531 "--warning" = "$vmware_warn$"
532 "--critical" = "$vmware_crit$"
536 object CheckCommand "vmware-esx-soap-host-io-read" {
537 import "vmware-esx-soap-host"
541 "--subselect" = "read"
542 "--warning" = "$vmware_warn$"
543 "--critical" = "$vmware_crit$"
547 object CheckCommand "vmware-esx-soap-host-io-read-latency" {
548 import "vmware-esx-soap-host"
552 "--subselect" = "read_latency"
553 "--warning" = "$vmware_warn$"
554 "--critical" = "$vmware_crit$"
558 object CheckCommand "vmware-esx-soap-host-io-write" {
559 import "vmware-esx-soap-host"
563 "--subselect" = "write"
564 "--warning" = "$vmware_warn$"
565 "--critical" = "$vmware_crit$"
569 object CheckCommand "vmware-esx-soap-host-io-write-latency" {
570 import "vmware-esx-soap-host"
574 "--subselect" = "write_latency"
575 "--warning" = "$vmware_warn$"
576 "--critical" = "$vmware_crit$"
580 object CheckCommand "vmware-esx-soap-host-io-usage" {
581 import "vmware-esx-soap-host"
585 "--subselect" = "usage"
586 "--warning" = "$vmware_warn$"
587 "--critical" = "$vmware_crit$"
591 object CheckCommand "vmware-esx-soap-host-io-kernel-latency" {
592 import "vmware-esx-soap-host"
596 "--subselect" = "kernel_latency"
597 "--warning" = "$vmware_warn$"
598 "--critical" = "$vmware_crit$"
602 object CheckCommand "vmware-esx-soap-host-io-device-latency" {
603 import "vmware-esx-soap-host"
607 "--subselect" = "device_latency"
608 "--warning" = "$vmware_warn$"
609 "--critical" = "$vmware_crit$"
613 object CheckCommand "vmware-esx-soap-host-io-queue-latency" {
614 import "vmware-esx-soap-host"
618 "--subselect" = "queue_latency"
619 "--warning" = "$vmware_warn$"
620 "--critical" = "$vmware_crit$"
624 object CheckCommand "vmware-esx-soap-host-io-total-latency" {
625 import "vmware-esx-soap-host"
629 "--subselect" = "total_latency"
630 "--warning" = "$vmware_warn$"
631 "--critical" = "$vmware_crit$"
635 object CheckCommand "vmware-esx-soap-host-media" {
636 import "vmware-esx-soap-host"
639 "--select" = "hostmedia"
640 "--exclude" = "$vmware_exclude$"
641 "--include" = "$vmware_include$"
643 set_if = "$vmware_isregexp$"
646 set_if = "$vmware_multiline$"
651 object CheckCommand "vmware-esx-soap-host-service" {
652 import "vmware-esx-soap-host"
655 "--select" = "service"
656 "--exclude" = "$vmware_exclude$"
657 "--include" = "$vmware_include$"
659 set_if = "$vmware_isregexp$"
662 set_if = "$vmware_multiline$"
667 object CheckCommand "vmware-esx-soap-host-runtime" {
668 import "vmware-esx-soap-host"
671 "--select" = "runtime"
672 "--exclude" = "$vmware_exclude$"
673 "--include" = "$vmware_include$"
675 set_if = "$vmware_isregexp$"
680 object CheckCommand "vmware-esx-soap-host-runtime-con" {
681 import "vmware-esx-soap-host"
684 "--select" = "runtime"
685 "--subselect" = "con"
689 object CheckCommand "vmware-esx-soap-host-runtime-listvms" {
690 import "vmware-esx-soap-host"
693 "--select" = "runtime"
694 "--subselect" = "listvms"
695 "--exclude" = "$vmware_exclude$"
696 "--include" = "$vmware_include$"
698 set_if = "$vmware_isregexp$"
701 set_if = "$vmware_multiline$"
706 object CheckCommand "vmware-esx-soap-host-runtime-status" {
707 import "vmware-esx-soap-host"
710 "--select" = "runtime"
711 "--subselect" = "status"
715 object CheckCommand "vmware-esx-soap-host-runtime-health" {
716 import "vmware-esx-soap-host"
719 "--select" = "runtime"
720 "--subselect" = "health"
721 "--exclude" = "$vmware_exclude$"
722 "--include" = "$vmware_include$"
724 set_if = "$vmware_isregexp$"
729 object CheckCommand "vmware-esx-soap-host-runtime-health-listsensors" {
730 import "vmware-esx-soap-host"
733 "--select" = "runtime"
734 "--subselect" = "health"
735 "--exclude" = "$vmware_exclude$"
736 "--include" = "$vmware_include$"
738 set_if = "$vmware_isregexp$"
744 object CheckCommand "vmware-esx-soap-host-runtime-health-nostoragestatus" {
745 import "vmware-esx-soap-host"
748 "--select" = "runtime"
749 "--subselect" = "health"
750 "--exclude" = "$vmware_exclude$"
751 "--include" = "$vmware_include$"
753 set_if = "$vmware_isregexp$"
755 "--nostoragestatus" = {}
759 object CheckCommand "vmware-esx-soap-host-runtime-storagehealth" {
760 import "vmware-esx-soap-host"
763 "--select" = "runtime"
764 "--subselect" = "storagehealth"
765 "--exclude" = "$vmware_exclude$"
766 "--include" = "$vmware_include$"
768 set_if = "$vmware_isregexp$"
771 set_if = "$vmware_multiline$"
776 object CheckCommand "vmware-esx-soap-host-runtime-temp" {
777 import "vmware-esx-soap-host"
780 "--select" = "runtime"
781 "--subselect" = "temp"
782 "--exclude" = "$vmware_exclude$"
783 "--include" = "$vmware_include$"
785 set_if = "$vmware_isregexp$"
788 set_if = "$vmware_multiline$"
793 object CheckCommand "vmware-esx-soap-host-runtime-issues" {
794 import "vmware-esx-soap-host"
797 "--select" = "runtime"
798 "--subselect" = "issues"
799 "--exclude" = "$vmware_exclude$"
800 "--include" = "$vmware_include$"
802 set_if = "$vmware_isregexp$"
805 set_if = "$vmware_multiline$"
810 object CheckCommand "vmware-esx-soap-host-storage" {
811 import "vmware-esx-soap-host"
814 "--select" = "storage"
815 "--exclude" = "$vmware_exclude$"
816 "--include" = "$vmware_include$"
818 set_if = "$vmware_isregexp$"
823 object CheckCommand "vmware-esx-soap-host-storage-adapter" {
824 import "vmware-esx-soap-host"
827 "--select" = "storage"
828 "--subselect" = "adapter"
829 "--exclude" = "$vmware_exclude$"
830 "--include" = "$vmware_include$"
832 set_if = "$vmware_isregexp$"
835 set_if = "$vmware_multiline$"
840 object CheckCommand "vmware-esx-soap-host-storage-lun" {
841 import "vmware-esx-soap-host"
844 "--select" = "storage"
845 "--subselect" = "lun"
846 "--exclude" = "$vmware_exclude$"
847 "--include" = "$vmware_include$"
849 set_if = "$vmware_isregexp$"
852 set_if = "$vmware_alertonly$"
855 set_if = "$vmware_multiline$"
861 object CheckCommand "vmware-esx-soap-host-storage-path" {
862 import "vmware-esx-soap-host"
865 "--select" = "storage"
866 "--subselect" = "path"
867 "--exclude" = "$vmware_exclude$"
868 "--include" = "$vmware_include$"
870 set_if = "$vmware_isregexp$"
873 set_if = "$vmware_alertonly$"
876 set_if = "$vmware_multiline$"
879 set_if = "$vmware_standbyok$"
887 template CheckCommand "vmware-esx-soap-vm" {
888 import "vmware-esx-command"
892 value = "$vmware_datacenter$"
893 description = "Datacenter/Vcenter hostname."
896 value = "$vmware_host$"
897 description = "ESX or ESXi hostname."
900 value = "$vmware_vmname$"
902 description = "Virtual machine name."
905 value = "$vmware_sslport$"
906 description = "If a SSL port different from 443 is used."
910 vars.vmware_host = "$address$"
911 vars.vmware_sslport = "443"
914 object CheckCommand "vmware-esx-soap-vm-cpu" {
915 import "vmware-esx-soap-vm"
922 object CheckCommand "vmware-esx-soap-vm-cpu-ready" {
923 import "vmware-esx-soap-vm"
927 "--subselect" = "ready"
928 "--warning" = "$vmware_warn$"
929 "--critical" = "$vmware_crit$"
933 object CheckCommand "vmware-esx-soap-vm-cpu-wait" {
934 import "vmware-esx-soap-vm"
938 "--subselect" = "wait"
939 "--warning" = "$vmware_warn$"
940 "--critical" = "$vmware_crit$"
944 object CheckCommand "vmware-esx-soap-vm-cpu-usage" {
945 import "vmware-esx-soap-vm"
949 "--subselect" = "usage"
950 "--warning" = "$vmware_warn$"
951 "--critical" = "$vmware_crit$"
954 vars.vmware_warn = "80%"
955 vars.vmware_crit = "90%"
958 object CheckCommand "vmware-esx-soap-vm-mem" {
959 import "vmware-esx-soap-vm"
966 object CheckCommand "vmware-esx-soap-vm-mem-usage" {
967 import "vmware-esx-soap-vm"
971 "--subselect" = "usage"
972 "--warning" = "$vmware_warn$"
973 "--critical" = "$vmware_crit$"
976 vars.vmware_warn = "80%"
977 vars.vmware_crit = "90%"
980 object CheckCommand "vmware-esx-soap-vm-mem-consumed" {
981 import "vmware-esx-soap-vm"
985 "--subselect" = "consumed"
986 "--warning" = "$vmware_warn$"
987 "--critical" = "$vmware_crit$"
991 object CheckCommand "vmware-esx-soap-vm-mem-memctl" {
992 import "vmware-esx-soap-vm"
996 "--subselect" = "memctl"
997 "--warning" = "$vmware_warn$"
998 "--critical" = "$vmware_crit$"
1002 object CheckCommand "vmware-esx-soap-vm-net" {
1003 import "vmware-esx-soap-vm"
1010 object CheckCommand "vmware-esx-soap-vm-net-usage" {
1011 import "vmware-esx-soap-vm"
1015 "--subselect" = "usage"
1016 "--warning" = "$vmware_warn$"
1017 "--critical" = "$vmware_crit$"
1021 object CheckCommand "vmware-esx-soap-vm-net-receive" {
1022 import "vmware-esx-soap-vm"
1026 "--subselect" = "receive"
1027 "--warning" = "$vmware_warn$"
1028 "--critical" = "$vmware_crit$"
1032 object CheckCommand "vmware-esx-soap-vm-net-send" {
1033 import "vmware-esx-soap-vm"
1037 "--subselect" = "send"
1038 "--warning" = "$vmware_warn$"
1039 "--critical" = "$vmware_crit$"
1043 object CheckCommand "vmware-esx-soap-vm-io" {
1044 import "vmware-esx-soap-vm"
1051 object CheckCommand "vmware-esx-soap-vm-io-read" {
1052 import "vmware-esx-soap-vm"
1056 "--subselect" = "read"
1057 "--warning" = "$vmware_warn$"
1058 "--critical" = "$vmware_crit$"
1062 object CheckCommand "vmware-esx-soap-vm-io-write" {
1063 import "vmware-esx-soap-vm"
1067 "--subselect" = "write"
1068 "--warning" = "$vmware_warn$"
1069 "--critical" = "$vmware_crit$"
1073 object CheckCommand "vmware-esx-soap-vm-io-usage" {
1074 import "vmware-esx-soap-vm"
1078 "--subselect" = "usage"
1079 "--warning" = "$vmware_warn$"
1080 "--critical" = "$vmware_crit$"
1084 object CheckCommand "vmware-esx-soap-vm-runtime" {
1085 import "vmware-esx-soap-vm"
1088 "--select" = "runtime"
1092 object CheckCommand "vmware-esx-soap-vm-runtime-con" {
1093 import "vmware-esx-soap-vm"
1096 "--select" = "runtime"
1097 "--subselect" = "con"
1101 object CheckCommand "vmware-esx-soap-vm-runtime-powerstate" {
1102 import "vmware-esx-soap-vm"
1105 "--select" = "runtime"
1106 "--subselect" = "powerstate"
1110 object CheckCommand "vmware-esx-soap-vm-runtime-status" {
1111 import "vmware-esx-soap-vm"
1114 "--select" = "runtime"
1115 "--subselect" = "status"
1119 object CheckCommand "vmware-esx-soap-vm-runtime-consoleconnections" {
1120 import "vmware-esx-soap-vm"
1123 "--select" = "runtime"
1124 "--subselect" = "consoleconnections"
1125 "--warning" = "$vmware_warn$"
1126 "--critical" = "$vmware_crit$"
1130 object CheckCommand "vmware-esx-soap-vm-runtime-gueststate" {
1131 import "vmware-esx-soap-vm"
1134 "--select" = "runtime"
1135 "--subselect" = "gueststate"
1139 object CheckCommand "vmware-esx-soap-vm-runtime-tools" {
1140 import "vmware-esx-soap-vm"
1143 "--select" = "runtime"
1144 "--subselect" = "tools"
1145 "--open-vm-tools" = {
1146 set_if = "$vmware_openvmtools$"
1151 object CheckCommand "vmware-esx-soap-vm-runtime-issues" {
1152 import "vmware-esx-soap-vm"
1155 "--select" = "runtime"
1156 "--subselect" = "issues"
1158 set_if = "$vmware_multiline$"