diff options
Diffstat (limited to '')
-rw-r--r-- | itl/plugins-contrib.d/network-components.conf | 1063 |
1 files changed, 1063 insertions, 0 deletions
diff --git a/itl/plugins-contrib.d/network-components.conf b/itl/plugins-contrib.d/network-components.conf new file mode 100644 index 0000000..333a82c --- /dev/null +++ b/itl/plugins-contrib.d/network-components.conf @@ -0,0 +1,1063 @@ +/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ + +object CheckCommand "interfacetable" { + command = [ PluginContribDir + "/check_interface_table_v3t" ] + + arguments = { + "-H" = { + value = "$interfacetable_hostquery$" + description = "Specifies the remote host to poll" + } + "-h" = { + value = "$interfacetable_hostdisplay$" + description = "Specifies the hostname to display in the HTML link" + } + "-r" = { + set_if = "$interfacetable_regex$" + description = "Interface names and property names for some other options will be interpreted as regular expressions" + } + "--outputshort" = { + set_if = "$interfacetable_outputshort$" + description = "Reduce the verbosity of the plugin output" + } + "-e" = { + value = "$interfacetable_exclude$" + description = "Comma separated list of interfaces globally excluded from the monitoring" + } + "-i" = { + value = "$interfacetable_include$" + description = "Comma separated list of interfaces globally included in the monitoring" + } + "--alias-matching" = { + set_if = "$interfacetable_aliasmatching$" + description = "Allow you to specify alias in addition to interface names" + } + "--et" = { + value = "$interfacetable_excludetraffic$" + description = "Comma separated list of interfaces excluded from traffic checks" + } + "--it" = { + value = "$interfacetable_includetraffic$" + description = "Comma separated list of interfaces included for traffic checks" + } + "--wt" = { + value = "$interfacetable_warningtraffic$" + description = "Interface traffic load percentage leading to a warning alert" + } + "--ct" = { + value = "$interfacetable_criticaltraffic$" + description = "Interface traffic load percentage leading to a critical alert" + } + "--pkt" = { + set_if = "$interfacetable_pkt$" + description = "Add unicast/non-unicast pkt stats for each interface" + } + "--trafficwithpkt" = { + set_if = "$interfacetable_trafficwithpkt$" + description = "Enable traffic calculation using pkt counters instead of octet counters. Useful when using 32-bit counters to track the load on > 1GbE interfaces." + } + "--tp" = { + value = "$interfacetable_trackproperty$" + description = "List of tracked properties" + } + "--ep" = { + value = "$interfacetable_excludeproperty$" + description = "Comma separated list of interfaces excluded from the property tracking" + } + "--ip" = { + value = "$interfacetable_includeproperty$" + description = "Comma separated list of interfaces included in the property tracking" + } + "--wp" = { + value = "$interfacetable_warningproperty$" + description = "Number of property changes before leading to a warning alert" + } + "--cp" = { + value = "$interfacetable_criticalproperty$" + description = "Number of property changes before leading to a critical alert" + } + "-C" = { + value = "$interfacetable_community$" + description = "Specifies the snmp v1/v2c community string" + } + "-2" = { + set_if = "$interfacetable_snmpv2$" + description = "Use snmp v2c" + } + "-l" = { + value = "$interfacetable_login$" + description = "Login for snmpv3 authentication" + } + "-x" = { + value = "$interfacetable_passwd$" + description = "Auth password for snmpv3 authentication" + } + "-X" = { + value = "$interfacetable_privpass$" + description = "Priv password for snmpv3" + } + "-L" = { + value = "$interfacetable_protocols$" + description = "Authentication protocol,Priv protocol" + } + "--domain" = { + value = "$interfacetable_domain$" + description = "SNMP transport domain" + } + "--contextname" = { + value = "$interfacetable_contextname$" + description = "Context name for the snmp requests" + } + "-P" = { + value = "$interfacetable_port$" + description = "SNMP port" + } + "--64bits" = { + set_if = "$interfacetable_64bits$" + description = "Use SNMP 64-bits counters" + } + "--max-repetitions" = { + value = "$interfacetable_maxrepetitions$" + description = "Increasing this value may enhance snmp query performances by gathering more results at one time" + } + "--snmp-timeout" = { + value = "$interfacetable_snmptimeout$" + description = "Define the Transport Layer timeout for the snmp queries" + } + "--snmp-retries" = { + value = "$interfacetable_snmpretries$" + description = "Define the number of times to retry sending a SNMP message" + } + "--snmp-maxmsgsize" = { + value = "$interfacetable_snmpmaxmsgsize$" + description = "Size of the SNMP message in octets, usefull in case of too long responses. Be carefull with network filters. Range 484 - 65535. Apply only to netsnmp perl bindings. The default is 1472 octets for UDP/IPv4, 1452 octets for UDP/IPv6, 1460 octets for TCP/IPv4, and 1440 octets for TCP/IPv6." + } + "--unixsnmp" = { + set_if = "$interfacetable_unixsnmp$" + description = "Use unix snmp utilities for snmp requests" + } + "-f" = { + set_if = "$interfacetable_enableperfdata$" + description = "Enable port performance data" + } + "--perfdataformat" = { + value = "$interfacetable_perfdataformat$" + description = "Define which performance data will be generated" + } + "--perfdatathreshold" = { + value = "$interfacetable_perfdatathreshold$" + description = "Define which thresholds are printed in the generated performance data" + } + "--perfdatadir" = { + value = "$interfacetable_perfdatadir$" + description = "When specified, the performance data are also written directly to a file, in the specified location" + } + "--perfdataservicedesc" = { + value = "$interfacetable_perfdataservicedesc$" + description = "Specify additional parameters for output performance data to PNP" + } + "-g" = { + value = "$interfacetable_grapher$" + description = "Specify the used graphing solution" + } + "--grapherurl" = { + value = "$interfacetable_grapherurl$" + description = "Graphing system url" + } + "--portperfunit" = { + value = "$interfacetable_portperfunit$" + description = "Traffic could be reported in bits (counters) or in bps (calculated value)" + } + "--nodetype" = { + value = "$interfacetable_nodetype$" + description = "Specify the node type, for specific information to be printed / specific oids to be used" + } + "--duplex" = { + set_if = "$interfacetable_duplex$" + description = "Add the duplex mode property for each interface in the interface table" + } + "--stp" = { + set_if = "$interfacetable_stp$" + description = "Add the stp state property for each interface in the interface table" + } + "--vlan" = { + set_if = "$interfacetable_vlan$" + description = "Add the vlan attribution property for each interface in the interface table" + } + "--noipinfo" = { + set_if = "$interfacetable_noipinfo$" + description = "Remove the ip information for each interface from the interface table" + } + "--alias" = { + set_if = "$interfacetable_alias$" + description = "Add the alias information for each interface in the interface table" + } + "--accessmethod" = { + value = "$interfacetable_accessmethod$" + description = "Access method for a shortcut to the host in the HTML page" + } + "--htmltablelinktarget" = { + value = "$interfacetable_htmltablelinktarget$" + description = "Specifies the windows or the frame where the [details] link will load the generated html page" + } + "--delta" = { + value = "$interfacetable_delta$" + description = "Set the delta used for interface throuput calculation" + } + "--ifs" = { + value = "$interfacetable_ifs$" + description = "Input field separator" + } + "--cache" = { + value = "$interfacetable_cache$" + description = "Define the retention time of the cached data" + } + "--noifloadgradient" = { + set_if = "$interfacetable_noifloadgradient$" + description = "Disable color gradient from green over yellow to red for the load percentage" + } + "--nohuman" = { + set_if = "$interfacetable_nohuman$" + description = "Do not translate bandwidth usage in human readable format" + } + "--snapshot" = { + set_if = "$interfacetable_snapshot$" + description = "Force the plugin to run like if it was the first launch" + } + "--timeout" = { + value = "$interfacetable_timeout$" + description = "Define the global timeout limit of the plugin" + } + "--css" = { + value = "$interfacetable_css$" + description = "Define the css stylesheet used by the generated html files" + } + "--config" = { + value = "$interfacetable_config$" + description = "Specify a config file to load" + } + "--noconfigtable" = { + set_if = "$interfacetable_noconfigtable$" + description = "Disable configuration table on the generated HTML page" + } + "--notips" = { + set_if = "$interfacetable_notips$" + description = "Disable the tips in the generated html tables" + } + "--default-table-sorting" = { + value = "$interfacetable_defaulttablesorting$" + description = "Default table sorting" + } + "--table-split" = { + set_if = "$interfacetable_tablesplit$" + description = "Generate multiple interface tables, one per interface type" + } + "--notype" = { + set_if = "$interfacetable_notype$" + description = "Remove the interface type for each interface" + } + } + + vars.interfacetable_hostquery = "$address$" + vars.interfacetable_hostdisplay = "$host.display_name$" + vars.interfacetable_perfdataservicedesc = "$service.name$" + vars.interfacetable_regex = false + vars.interfacetable_outputshort = false + vars.interfacetable_aliasmatching = false + vars.interfacetable_pkt = false + vars.interfacetable_trafficwithpkt = false + vars.interfacetable_snmpv2 = false + vars.interfacetable_64bits = false + vars.interfacetable_unixsnmp = false + vars.interfacetable_enableperfdata = false + vars.interfacetable_duplex = false + vars.interfacetable_stp = false + vars.interfacetable_vlan = false + vars.interfacetable_noipinfo = false + vars.interfacetable_noifloadgradient = false + vars.interfacetable_nohuman = false + vars.interfacetable_snapshot = false + vars.interfacetable_noconfigtable = false + vars.interfacetable_notips = false + vars.interfacetable_notype = false +} + +object CheckCommand "iftraffic" { + import "ipv4-or-ipv6" + + command = [ PluginContribDir + "/check_iftraffic.pl"] + + arguments = { + "-H" = { + value = "$iftraffic_address$" + description = "Check interface on the indicated host." + required = true + } + "-C" = { + value = "$iftraffic_community$" + description = "SNMP community. Defaults to 'public' if omitted." + } + "-V" = { + value = "$iftraffic_version$" + description = "SNMP version. Defaults to '1' if omitted." + } + "-i" = { + value = "$iftraffic_interface$" + description = "Interface name." + required = true + } + "-b" = { + value = "$iftraffic_bandwidth$" + description = "Interface maximum speed in kilo/mega/giga/bits per second." + required = true + } + "-u" = { + value = "$iftraffic_units$" + description = "g=gigabits/s,m=megabits/s,k=kilobits/s,b=bits/s." + } + "-w" = { + value = "$iftraffic_warn$" + description = "% of bandwidth usage necessary to result in warning status (default: 85)" + } + "-c" = { + value = "$iftraffic_crit$" + description = "% of bandwidth usage necessary to result in critical status (default: 98)" + } + "-M" = { + value = "$iftraffic_max_counter$" + description = "Max counter value of net devices in kilo/mega/giga/bytes." + } + } + + vars.iftraffic_address = "$check_address$" + vars.iftraffic_warn = "85" + vars.iftraffic_crit = "98" +} + +object CheckCommand "iftraffic64" { + import "ipv4-or-ipv6" + + command = [ PluginContribDir + "/check_iftraffic64.pl"] + + arguments = { + "-H" = { + value = "$iftraffic64_address$" + description = "Check interface on the indicated host." + required = true + } + "-C" = { + value = "$iftraffic64_community$" + description = "SNMP community. Defaults to 'public' if omitted." + } + "-i" = { + value = "$iftraffic64_interface$" + description = "Interface name." + required = true + } + "-b" = { + value = "$iftraffic64_bandwidth$" + description = "Interface maximum speed in kilo/mega/giga/bits per second." + required = true + } + "-u" = { + value = "$iftraffic64_units$" + description = "g=gigabits/s,m=megabits/s,k=kilobits/s,b=bits/s." + } + "-w" = { + value = "$iftraffic64_warn$" + description = "% of bandwidth usage necessary to result in warning status (default: 85)" + } + "-c" = { + value = "$iftraffic64_crit$" + description = "% of bandwidth usage necessary to result in critical status (default: 98)" + } + "-M" = { + value = "$iftraffic64_max_counter$" + description = "Max counter value of net devices in kilo/mega/giga/bytes." + } + } + + vars.iftraffic64_address = "$check_address$" + vars.iftraffic64_warn = "85" + vars.iftraffic64_crit = "98" +} + +object CheckCommand "interfaces" { + import "ipv4-or-ipv6" + + command = [ PluginContribDir + "/check_interfaces" ] + + arguments = { + "--hostname" = "$interfaces_address$" + "--community" = { + value = "$interfaces_community$" + description = "The community string (default public)." + } + "--regex" = { + value = "$interfaces_regex$" + description = "Interface list regexp." + } + "--exclude-regex" = { + value = "$interfaces_exclude_regex$" + description = "Interface list negative regexp." + } + "--errors" = { + value = "$interfaces_errors$" + description = "Number of in errors (CRC errors for cisco) to consider a warning (default 50)." + } + "--out-errors" = { + value = "$interface_out_errors$" + description = "Number of out errors (collisions for cisco) to consider a warning (default same as in errors)." + } + "--perfdata" = { + value = "$interfaces_perfdata$" + } + "--prefix" = { + value = "$interfaces_prefix$" + description = "Prefix interface names with this label." + } + "--lastcheck" = { + value = "$interfaces_lastcheck$" + description = "Last checktime (unixtime)." + } + "--bandwidth" = { + value = "$interfaces_bandwidth$" + description = "Bandwidth warn level in percent." + } + "--speed" = { + value = "$interfaces_speed$" + description = "Override speed detection with this value (bits per sec)." + } + "--trim" = { + value = "$interfaces_trim$" + description = "Cut this number of characters from the start of interface descriptions." + } + "--mode" = { + value = "$interfaces_mode$" + description = "Special operating mode (default,cisco,nonbulk,bintec)." + } + "--auth-proto" = { + value = "$interfaces_auth_proto$" + description = "SNMPv3 Auth Protocol (SHA|MD5)" + } + "--auth-phrase" = { + value = "$interfaces_auth_phrase$" + description = "SNMPv3 Auth Phrase" + } + "--priv-proto" = { + value = "$interfaces_priv_proto$" + description = "SNMPv3 Privacy Protocol (AES|DES)" + } + "--priv-phrase" = { + value = "$interfaces_priv_phrase$" + description = "SNMPv3 Privacy Phrase" + } + "--user" = { + value = "$interfaces_user$" + description = "SNMPv3 User" + } + "--down-is-ok" = { + set_if = "$interfaces_down_is_ok$" + description = "Disables critical alerts for down interfaces." + } + "--aliases" = { + set_if = "$interfaces_aliases$" + description = "Retrieves the interface description." + } + "--match-aliases" = { + set_if = "$interfaces_match_aliases$" + description = "Also match against aliases (Option --aliases automatically enabled)." + } + "--timeout" = { + value = "$interfaces_timeout$" + description = "Sets the SNMP timeout (in ms)." + } + "--sleep" = { + value = "$interfaces_sleep$" + description = "Sleep between every SNMP query (in ms)." + } + "--if-names" = { + set_if = "$interfaces_names$" + description = "Use ifName instead of ifDescr." + } + } + + vars.interfaces_address = "$check_address$" + vars.interfaces_down_is_ok = false + vars.interfaces_aliases = false + vars.interfaces_match_aliases = false +} + +object CheckCommand "nwc_health" { + import "ipv4-or-ipv6" + + command = [ PluginContribDir + "/check_nwc_health" ] + + arguments = { + "--timeout" = { + value = "$nwc_health_timeout$" + description = "Seconds before plugin times out (default: 15)" + } + "--blacklist" = { + value = "$nwc_health_blacklist$" + description = "Blacklist some (missing/failed) components" + } + "--hostname" = { + value = "$nwc_health_hostname$" + description = "Hostname or IP-address of the switch or router" + } + "--port" = { + value = "$nwc_health_port$" + description = "The SNMP port to use (default: 161)" + } + "--domain" = { + value = "$nwc_health_domain$" + description = "The transport domain to use (default: udp/ipv4, other possible values: udp6, udp/ipv6, tcp, tcp4, tcp/ipv4, tcp6, tcp/ipv6)" + } + "--protocol" = { + value = "$nwc_health_protocol$" + description = "The SNMP protocol to use (default: 2c, other possibilities: 1,3)" + } + "--community" = { + value = "$nwc_health_community$" + description = "SNMP community of the server (SNMP v1/2 only)" + } + "--username" = { + value = "$nwc_health_username$" + description = "The securityName for the USM security model (SNMPv3 only)" + } + "--authpassword" = { + value = "$nwc_health_authpassword$" + description = "The authentication password for SNMPv3" + } + "--authprotocol" = { + value = "$nwc_health_authprotocol$" + description = "The authentication protocol for SNMPv3 (md5|sha)" + } + "--privpassword" = { + value = "$nwc_health_privpassword$" + description = "The password for authPriv security level" + } + "--privprotocol" = { + value = "$nwc_health_privprotocol$" + description = "The private protocol for SNMPv3 (des|aes|aes128|3des|3desde)" + } + "--contextengineid" = { + value = "$nwc_health_contextengineid$" + description = "The context engine id for SNMPv3 (10 to 64 hex characters)" + } + "--contextname" = { + value = "$nwc_health_contextname$" + description = "The context name for SNMPv3 (empty represents the default context)" + } + "--community2" = { + value = "$nwc_health_community2$" + description = "SNMP community which can be used to switch the context during runtime" + } + "--mode" = { + value = "$nwc_health_mode$" + description = "Which mode should be executed. A list of all available modes can be found in the plugin documentation" + } + "--name" = { + value = "$nwc_health_name$" + description = "The name of an interface (ifDescr)" + } + "--drecksptkdb" = { + value = "$nwc_health_drecksptkdb$" + description = "This parameter must be used instead of --name, because Devel::ptkdb is stealing the latter from the command line" + } + "--alias" = { + value = "$nwc_health_alias$" + description = "The alias name of a 64bit-interface (ifAlias)" + } + "--regexp" = { + set_if = "$nwc_health_regexp$" + description = "A flag indicating that --name is a regular expression" + } + "--ifspeedin" = { + value = "$nwc_health_ifspeedin$" + description = "Override the ifspeed oid of an interface (only inbound)" + } + "--ifspeedout" = { + value = "$nwc_health_ifspeedout$" + description = "Override the ifspeed oid of an interface (only outbound)" + } + "--ifspeed" = { + value = "$nwc_health_ifspeed$" + description = "Override the ifspeed oid of an interface" + } + "--units" = { + value = "$nwc_health_units$" + description = "One of %, B, KB, MB, GB, Bit, KBi, MBi, GBi. (used for e.g. mode interface-usage)" + } + "--name2" = { + value = "$nwc_health_name2$" + description = "The secondary name of a component" + } + "--name3" = { + value = "$nwc_health_name3$" + description = "The tertiary name of a component" + } + "--role" = { + value = "$nwc_health_role$" + description = "The role of this device in a hsrp group (active/standby/listen)" + } + "--report" = { + value = "$nwc_health_report$" + description = "Can be used to shorten the output. Possible values are: 'long' (default), 'short' (to shorten if available), or 'html' (to produce some html outputs if available)" + } + "--lookback" = { + value = "$nwc_health_lookback$" + description = "The amount of time you want to look back when calculating average rates. Use it for mode interface-errors or interface-usage. Without --lookback the time between two runs of check_nwc_health is the base for calculations. If you want your checkresult to be based for example on the past hour, use --lookback 3600." + } + "--critical" = { + value = "$nwc_health_critical$" + description = "The critical threshold" + } + "--warning" = { + value = "$nwc_health_warning$" + description = "The warning threshold" + } + "--warningx" = { + value = "$nwc_health_warningx$" + repeat_key = true + description = "The extended warning thresholds" + } + "--criticalx" = { + value = "$nwc_health_criticalx$" + repeat_key = true + description = "The extended critical thresholds" + } + "--mitigation" = { + value = "$nwc_health_mitigation$" + description = "The parameter allows you to change a critical error to a warning." + } + "--selectedperfdata" = { + value = "$nwc_health_selectedperfdata$" + description = "The parameter allows you to limit the list of performance data. It's a perl regexp. Only matching perfdata show up in the output." + } + "--morphperfdata" = { + value = "$nwc_health_morphperfdata$" + description = "The parameter allows you to change performance data labels. It's a perl regexp and a substitution. --morphperfdata '(.*)ISATAP(.*)'='$1patasi$2'" + } + "--negate" = { + value = "$nwc_health_negate$" + description = "The parameter allows you to map exit levels, such as warning=critical" + } + "--with-mymodules-dyn-dir" = { + value = "$nwc_health_mymodules-dyn-dir$" + description = "A directory where own extensions can be found" + } + "--servertype" = { + value = "$nwc_health_servertype$" + description = "The type of the network device: cisco (default). Use it if auto-detection is not possible" + } + "--statefilesdir" = { + value = "$nwc_health_statefilesdir$" + description = "An alternate directory where the plugin can save files" + } + "--oids" = { + value = "$nwc_health_oids$" + description = "A list of oids which are downloaded and written to a cache file. Use it together with --mode oidcache" + } + "--offline" = { + value = "$nwc_health_offline$" + description = "The maximum number of seconds since the last update of cache file before it is considered too old" + } + "--multiline" = { + set_if = "$nwc_health_multiline$" + description = "Multiline output" + } + } + + vars.nwc_health_hostname = "$check_address$" + vars.nwc_health_mode = "hardware-health" +} + +object CheckCommand "printer_health" { + import "ipv4-or-ipv6" + + command = [ PluginContribDir + "/check_printer_health" ] + + arguments = { + "--timeout" = { + value = "$printer_health_timeout$" + description = "Seconds before plugin times out (default: 15)" + } + "--blacklist" = { + value = "$printer_health_blacklist$" + description = "Blacklist some (missing/failed) components" + } + "--hostname" = { + value = "$printer_health_hostname$" + description = "Hostname or IP-address of the switch or router" + } + "--port" = { + value = "$printer_health_port$" + description = "The SNMP port to use (default: 161)" + } + "--domain" = { + value = "$printer_health_domain$" + description = "The transport domain to use (default: udp/ipv4, other possible values: udp6, udp/ipv6, tcp, tcp4, tcp/ipv4, tcp6, tcp/ipv6)" + } + "--protocol" = { + value = "$printer_health_protocol$" + description = "The SNMP protocol to use (default: 2c, other possibilities: 1,3)" + } + "--community" = { + value = "$printer_health_community$" + description = "SNMP community of the server (SNMP v1/2 only)" + } + "--username" = { + value = "$printer_health_username$" + description = "The securityName for the USM security model (SNMPv3 only)" + } + "--authpassword" = { + value = "$printer_health_authpassword$" + description = "The authentication password for SNMPv3" + } + "--authprotocol" = { + value = "$printer_health_authprotocol$" + description = "The authentication protocol for SNMPv3 (md5|sha)" + } + "--privpassword" = { + value = "$printer_health_privpassword$" + description = "The password for authPriv security level" + } + "--privprotocol" = { + value = "$printer_health_privprotocol$" + description = "The private protocol for SNMPv3 (des|aes|aes128|3des|3desde)" + } + "--contextengineid" = { + value = "$printer_health_contextengineid$" + description = "The context engine id for SNMPv3 (10 to 64 hex characters)" + } + "--contextname" = { + value = "$printer_health_contextname$" + description = "The context name for SNMPv3 (empty represents the default context)" + } + "--community2" = { + value = "$printer_health_community2$" + description = "SNMP community which can be used to switch the context during runtime" + } + "--mode" = { + value = "$printer_health_mode$" + description = "Which mode should be executed. Available modes: hardware-health, supplies-status and uptime." + } + "--name" = { + value = "$printer_health_name$" + description = "The name of an interface (ifDescr)" + } + "--regexp" = { + set_if = "$printer_health_regexp$" + description = "A flag indicating that --name is a regular expression" + } + "--units" = { + value = "$printer_health_units$" + description = "One of %, B, KB, MB, GB, Bit, KBi, MBi, GBi. (used for e.g. mode interface-usage)" + } + "--name2" = { + value = "$printer_health_name2$" + description = "The secondary name of a component" + } + "--name3" = { + value = "$printer_health_name3$" + description = "The teritary name of a component" + } + "--report" = { + value = "$printer_health_report$" + description = "Can be used to shorten the output." + } + "--lookback" = { + value = "$printer_health_lookback$" + description = "The amount of time you want to look back when calculating average rates. Use it for mode interface-errors or interface-usage. Without --lookback the time between two runs of check_printer_health is the base for calculations. If you want your checkresult to be based for example on the past hour, use --lookback 3600." + } + "--critical" = { + value = "$printer_health_critical$" + description = "The critical threshold" + } + "--warning" = { + value = "$printer_health_warning$" + description = "The warning threshold" + } + "--warningx" = { + value = "$printer_health_warningx$" + description = "The extended warning thresholds" + } + "--criticalx" = { + value = "$printer_health_criticalx$" + description = "The extended critical thresholds" + } + "--mitigation" = { + value = "$printer_health_mitigation$" + description = "The parameter allows you to change a critical error to a warning." + } + "--selectedperfdata" = { + value = "$printer_health_selectedperfdata$" + description = "The parameter allows you to limit the list of performance data. It's a perl regexp. Only matching perfdata show up in the output." + } + "--morphperfdata" = { + value = "$printer_health_morphperfdata$" + description = "The parameter allows you to change performance data labels. It's a perl regexp and a substitution. --morphperfdata '(.*)ISATAP(.*)'='$1patasi$2'" + } + "--negate" = { + value = "$printer_health_negate$" + description = "The parameter allows you to map exit levels, such as warning=critical" + } + "--with-mymodules-dyn-dir" = { + value = "$printer_health_mymodules-dyn-dir$" + description = "A directory where own extensions can be found" + } + "--servertype" = { + value = "$printer_health_servertype$" + description = "The type of the network device: cisco (default). Use it if auto-detection is not possible" + } + "--statefilesdir" = { + value = "$printer_health_statefilesdir$" + description = "An alternate directory where the plugin can save files" + } + "--oids" = { + value = "$printer_health_oids$" + description = "A list of oids which are downloaded and written to a cache file. Use it together with --mode oidcache" + } + "--offline" = { + value = "$printer_health_offline$" + description = "The maximum number of seconds since the last update of cache file before it is considered too old" + } + "--multiline" = { + set_if = "$printer_health_multiline$" + description = "Multiline output" + } + } + + vars.printer_health_hostname = "$check_address$" + vars.printer_health_mode = "supplies-status" +} + +template CheckCommand "generic-thola-check-command" { + command = [ PluginContribDir + "/thola-client", "check" ] + + arguments = { + "--target-api" = { + required = true + value = "$thola_api_address$" + description = "Address of the thola API" + } + } +} + +template CheckCommand "generic-thola-device-check-command" { + import "generic-thola-check-command" + import "ipv4-or-ipv6" + + arguments += { + "thola_device_address" = { + order = 0 + required = true + skip_key = true + value = "$thola_device_address$" + description = "IP address of target device" + } + "--snmp-community" = { + value = "$thola_device_snmp_community$" + description = "SNMP Community of target device" + } + "--snmp-version" = { + value = "$thola_device_snmp_protocol$" + description = "SNMP Version of target device" + } + } + + vars.thola_device_address = "$check_address$" +} + +object CheckCommand "thola-cpu-load" { + import "generic-thola-device-check-command" + + command += [ "cpu-load" ] + + arguments += { + "--critical" = { + value = "$thola_cpu_load_critical$" + description = "Critical threshold for the CPU load in %" + } + "--warning" = { + value = "$thola_cpu_load_warning$" + description = "Warning threshold for the CPU load in %" + } + } +} + +object CheckCommand "thola-interface-metrics" { + import "generic-thola-device-check-command" + + command += [ "interface-metrics" ] +} + +object CheckCommand "thola-hardware-health" { + import "generic-thola-device-check-command" + + command += [ "hardware-health" ] +} + +object CheckCommand "thola-identify" { + import "generic-thola-device-check-command" + + command += [ "identify" ] + + arguments += { + "--model" = { + value = "$thola_identify_model$" + description = "Model that is compared to the actual model of the device" + } + "--os-version" = { + value = "$thola_identify_os_version$" + description = "OS-version that is compared to the actual OS-version of the device" + } + "--vendor" = { + value = "$thola_identify_vendor$" + description = "Vendor that is compared to the actual vendor of the device" + } + "--serial-number" = { + value = "$thola_identify_serial_number$" + description = "Serial number that is compared to the actual serial number of the device" + } + "--snmp-discover-retries" = { + value = "$thola_identify_discover_retries$" + description = "Number of discover retries" + } + "--snmp-discover-timeout" = { + value = "$thola_identify_discover_timeouts$" + description = "Number of discover timeouts" + } + } +} + +object CheckCommand "thola-memory-usage" { + import "generic-thola-device-check-command" + + command += [ "memory-usage" ] + + arguments += { + "--critical" = { + value = "$thola_memory_usage_critical$" + description = "Critical threshold for the memory usage in %" + } + "--warning" = { + value = "$thola_memory_usage_warning$" + description = "Warning threshold for the memory usage in %" + } + } +} + +object CheckCommand "thola-sbc" { + import "generic-thola-device-check-command" + + command += [ "sbc" ] + + arguments += { + "--system-health-score-critical" = { + value = "$thola_sbc_system_health_score_critical$" + description = "Critical threshold for the health score in %" + } + "--system-health-score-warning" = { + value = "$thola_sbc_system_health_score_warning$" + description = "Warning threshold for the health score in %" + } + } +} + +object CheckCommand "thola-thola-server" { + import "generic-thola-check-command" + + command += [ "thola-server" ] +} + +object CheckCommand "thola-ups" { + import "generic-thola-device-check-command" + + command += [ "ups" ] + + arguments += { + "--batt-current-critical-max" = { + value = "$thola_ups_batt_current_critical_max$" + description = "High critical threshold for the battery current in Volt" + } + "--batt-current-critical-min" = { + value = "$thola_ups_batt_current_critical_min$" + description = "Low critical threshold for the battery current in Volt" + } + "--batt-current-warning-max" = { + value = "$thola_ups_batt_current_warning_max$" + description = "High warning threshold for the battery current in Volt" + } + "--batt-current-warning-min" = { + value = "$thola_ups_batt_current_warning_min$" + description = "Low warning threshold for the battery current in Volt" + } + "--batt-temperature-critical-max" = { + value = "$thola_ups_batt_temperature_critical_max$" + description = "High critical threshold for the battery temperature in degree celsius" + } + "--batt-temperature-critical-min" = { + value = "$thola_ups_batt_temperature_critical_min$" + description = "Low critical threshold for the battery temperature in degree celsius" + } + "--batt-temperature-warning-max" = { + value = "$thola_ups_batt_temperature_warning_max$" + description = "High warning threshold for the battery temperature in degree celsius" + } + "--batt-temperature-warning-min" = { + value = "$thola_ups_batt_temperature_warning_min$" + description = "Low warning threshold for the battery temperature in degree celsius" + } + "--current-load-critical-max" = { + value = "$thola_ups_current_load_critical_max$" + description = "High critical threshold for the current load in %" + } + "--current-load-critical-min" = { + value = "$thola_ups_current_load_critical_min$" + description = "Low critical threshold for the current load in %" + } + "--current-load-warning-max" = { + value = "$thola_ups_current_load_warning_max$" + description = "High warning threshold for the current load in %" + } + "--current-load-warning-min" = { + value = "$thola_ups_current_load_warning_min$" + description = "Low warning threshold for the current load in %" + } + "--rectifier-current-critical-max" = { + value = "$thola_ups_rectifier_current_critical_max$" + description = "High critical threshold for the current rectifier in Volt" + } + "--rectifier-current-critical-min" = { + value = "$thola_ups_rectifier_current_critical_min$" + description = "Low critical threshold for the current rectifier in Volt" + } + "--rectifier-current-warning-max" = { + value = "$thola_ups_rectifier_current_warning_max$" + description = "High warning threshold for the current rectifier in Volt" + } + "--rectifier-current-warning-min" = { + value = "$thola_ups_rectifier_current_warning_min$" + description = "Low warning threshold for the current rectifier in Volt" + } + "--system-voltage-critical-max" = { + value = "$thola_ups_system_voltage_critical_max$" + description = "High critical threshold for the system voltage in Volt" + } + "--system-voltage-critical-min" = { + value = "$thola_ups_system_voltage_critical_min$" + description = "Low critical threshold for the system voltage in Volt" + } + "--system-voltage-warning-max" = { + value = "$thola_ups_system_voltage_warning_max$" + description = "High warning threshold for the system voltage in Volt" + } + "--system-voltage-warning-min" = { + value = "$thola_ups_system_voltage_warning_min$" + description = "Low warning threshold for the system voltage in Volt" + } + } +} |