Add contributed command definitions

fixes #7209
fixes #7292
fixes #7294

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
This commit is contained in:
Dirk Goetz 2015-02-04 17:31:13 +01:00 committed by Gunnar Beutner
parent afb9bea74d
commit 7f368c0e18
9 changed files with 647 additions and 38 deletions

View File

@ -343,7 +343,7 @@ http_maxage | **Optional.** Warn if document is more than seconds o
http_contenttype | **Optional.** Specify Content-Type header when POSTing.
http_useragent | **Optional.** String to be sent in http header as User Agent.
http_header | **Optional.** Any other tags to be sent in http header.
http_extendedperfdata | **Optional.** Print additional perfdata. Defaults to "false".
http_extendedperfdata | **Optional.** Print additional perfdata. Defaults to false.
http_onredirect | **Optional.** How to handle redirect pages. Possible values: "ok" (default), "warning", "critical", "follow", "sticky" (like follow but stick to address), "stickyport" (like sticky but also to port)
http_pagesize | **Optional.** Minimum page size required:Maximum page size required.
http_timeout | **Optional.** Seconds before connection times out.
@ -533,7 +533,7 @@ procs_warning | **Optional.** The process count warning threshold. Defaul
procs_critical | **Optional.** The process count critical threshold. Defaults to 400.
procs_metric | **Optional.** Check thresholds against metric.
procs_timeout | **Optional.** Seconds before plugin times out.
procs_traditional | **Optional.** Filter own process the traditional way by PID instead of /proc/pid/exe. Defaults to "false".
procs_traditional | **Optional.** Filter own process the traditional way by PID instead of /proc/pid/exe. Defaults to false.
procs_state | **Optional.** Only scan for processes that have one or more of the status flags you specify.
procs_ppid | **Optional.** Only scan for children of the parent process ID indicated.
procs_vsz | **Optional.** Only scan for processes with VSZ higher than indicated.
@ -543,7 +543,7 @@ procs_user | **Optional.** Only scan for processes with user name or I
procs_argument | **Optional.** Only scan for processes with args that contain STRING.
procs_argument_regex | **Optional.** Only scan for processes with args that contain the regex STRING.
procs_command | **Optional.** Only scan for exact matches of COMMAND (without path).
procs_nokthreads | **Optional.** Only scan for non kernel threads. Defaults to "false".
procs_nokthreads | **Optional.** Only scan for non kernel threads. Defaults to false.
### <a id="plugin-check-command-running-kernel"></a> running_kernel
@ -795,20 +795,20 @@ Custom Attributes:
Name | Description
------------------------|--------------
snmp_address | **Optional.** The host's address. Defaults to "$address$" or "$address6$" if the `address` attribute is not set.
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to "false".
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to false.
snmp_community | **Optional.** The SNMP community. Defaults to "public".
snmp_port | **Optional.** The SNMP port connection.
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to "false".
snmp_v3 | **Optional.** SNMP version to 3. Defaults to "false".
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to false.
snmp_v3 | **Optional.** SNMP version to 3. Defaults to false.
snmp_login | **Optional.** SNMP version 3 username. Defaults to "snmpuser".
snmp_password | **Required.** SNMP version 3 password. No value defined as default.
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to "false".
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to false.
snmp_authprotocol | **Optional.** SNMP version 3 authentication protocol. Defaults to "md5,des".
snmp_privpass | **Required.** SNMP version 3 priv password. No value defined as default.
snmp_warn | **Optional.** The warning threshold. Change the `snmp_load_type` var to "netsl" for using 3 values.
snmp_crit | **Optional.** The critical threshold. Change the `snmp_load_type` var to "netsl" for using 3 values.
snmp_load_type | **Optional.** Load type. Defaults to "stand". Check all available types in the [snmp load](http://nagios.manubulon.com/snmp_load.html) documentation.
snmp_perf | **Optional.** Enable perfdata values. Defaults to "true".
snmp_perf | **Optional.** Enable perfdata values. Defaults to true.
snmp_timeout | **Optional.** The command timeout in seconds. Defaults to 5 seconds.
### <a id="plugin-check-command-snmp-memory"></a> snmp-memory
@ -820,19 +820,19 @@ Custom Attributes:
Name | Description
------------------------|--------------
snmp_address | **Optional.** The host's address. Defaults to "$address$" or "$address6$" if the `address` attribute is not set.
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to "false".
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to false.
snmp_community | **Optional.** The SNMP community. Defaults to "public".
snmp_port | **Optional.** The SNMP port connection.
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to "false".
snmp_v3 | **Optional.** SNMP version to 3. Defaults to "false".
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to false.
snmp_v3 | **Optional.** SNMP version to 3. Defaults to false.
snmp_login | **Optional.** SNMP version 3 username. Defaults to "snmpuser".
snmp_password | **Required.** SNMP version 3 password. No value defined as default.
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to "false".
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to false.
snmp_authprotocol | **Optional.** SNMP version 3 authentication protocol. Defaults to "md5,des".
snmp_privpass | **Required.** SNMP version 3 priv password. No value defined as default.
snmp_warn | **Optional.** The warning threshold.
snmp_crit | **Optional.** The critical threshold.
snmp_perf | **Optional.** Enable perfdata values. Defaults to "true".
snmp_perf | **Optional.** Enable perfdata values. Defaults to true.
snmp_timeout | **Optional.** The command timeout in seconds. Defaults to 5 seconds.
### <a id="plugin-check-command-snmp-storage"></a> snmp-storage
@ -844,20 +844,20 @@ Custom Attributes:
Name | Description
------------------------|--------------
snmp_address | **Optional.** The host's address. Defaults to "$address$" or "$address6$" if the `address` attribute is not set.
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to "false".
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to false.
snmp_community | **Optional.** The SNMP community. Defaults to "public".
snmp_port | **Optional.** The SNMP port connection.
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to "false".
snmp_v3 | **Optional.** SNMP version to 3. Defaults to "false".
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to false.
snmp_v3 | **Optional.** SNMP version to 3. Defaults to false.
snmp_login | **Optional.** SNMP version 3 username. Defaults to "snmpuser".
snmp_password | **Required.** SNMP version 3 password. No value defined as default.
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to "false".
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to false.
snmp_authprotocol | **Optional.** SNMP version 3 authentication protocol. Defaults to "md5,des".
snmp_privpass | **Required.** SNMP version 3 priv password. No value defined as default.
snmp_warn | **Optional.** The warning threshold.
snmp_crit | **Optional.** The critical threshold.
snmp_storage_name | **Optional.** Storage name. Default to regex "^/$$". More options available in the [snmp storage](http://nagios.manubulon.com/snmp_storage.html) documentation.
snmp_perf | **Optional.** Enable perfdata values. Defaults to "true".
snmp_perf | **Optional.** Enable perfdata values. Defaults to true.
snmp_timeout | **Optional.** The command timeout in seconds. Defaults to 5 seconds.
### <a id="plugin-check-command-snmp-interface"></a> snmp-interface
@ -869,31 +869,31 @@ Custom Attributes:
Name | Description
----------------------------|--------------
snmp_address | **Optional.** The host's address. Defaults to "$address$" or "$address6$" if the `address` attribute is not set.
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to "false".
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to false.
snmp_community | **Optional.** The SNMP community. Defaults to "public".
snmp_port | **Optional.** The SNMP port connection.
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to "false".
snmp_v3 | **Optional.** SNMP version to 3. Defaults to "false".
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to false.
snmp_v3 | **Optional.** SNMP version to 3. Defaults to false.
snmp_login | **Optional.** SNMP version 3 username. Defaults to "snmpuser".
snmp_password | **Required.** SNMP version 3 password. No value defined as default.
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to "false".
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to false.
snmp_authprotocol | **Optional.** SNMP version 3 authentication protocol. Defaults to "md5,des".
snmp_privpass | **Required.** SNMP version 3 priv password. No value defined as default.
snmp_warn | **Optional.** The warning threshold.
snmp_crit | **Optional.** The critical threshold.
snmp_interface | **Optional.** Network interface name. Default to regex "eth0".
snmp_interface_perf | **Optional.** Check the input/ouput bandwidth of the interface. Defaults to "true".
snmp_interface_perf | **Optional.** Check the input/ouput bandwidth of the interface. Defaults to true.
snmp_interface_label | **Optional.** Add label before speed in output: in=, out=, errors-out=, etc...
snmp_interface_bits_bytes | **Optional.** Output performance data in bits/s or Bytes/s. **Depends** on snmp_interface_kbits set to "true". Defaults to "true".
snmp_interface_percent | **Optional.** Output performance data in % of max speed. Defaults to "false".
snmp_interface_kbits | **Optional.** Make the warning and critical levels in KBits/s. Defaults to "true".
snmp_interface_megabytes | **Optional.** Make the warning and critical levels in Mbps or MBps. **Depends** on snmp_interface_kbits set to "true". Defaults to "true".
snmp_interface_64bit | **Optional.** Use 64 bits counters instead of the standard counters when checking bandwidth & performance data for interface >= 1Gbps. Defaults to "false".
snmp_interface_errors | **Optional.** Add error & discard to Perfparse output. Defaults to "true".
snmp_interface_noregexp | **Optional.** Do not use regexp to match interface name in description OID. Defaults to "false".
snmp_interface_bits_bytes | **Optional.** Output performance data in bits/s or Bytes/s. **Depends** on snmp_interface_kbits set to true. Defaults to true.
snmp_interface_percent | **Optional.** Output performance data in % of max speed. Defaults to false.
snmp_interface_kbits | **Optional.** Make the warning and critical levels in KBits/s. Defaults to true.
snmp_interface_megabytes | **Optional.** Make the warning and critical levels in Mbps or MBps. **Depends** on snmp_interface_kbits set to true. Defaults to true.
snmp_interface_64bit | **Optional.** Use 64 bits counters instead of the standard counters when checking bandwidth & performance data for interface >= 1Gbps. Defaults to false.
snmp_interface_errors | **Optional.** Add error & discard to Perfparse output. Defaults to true.
snmp_interface_noregexp | **Optional.** Do not use regexp to match interface name in description OID. Defaults to false.
snmp_interface_delta | **Optional.** Delta time of perfcheck. Defaults to "300" (5 min).
snmp_warncrit_percent | **Optional.** Make the warning and critical levels in % of reported interface speed. If set **snmp_interface_megabytes** needs to be set to "false". Defaults to "false".
snmp_perf | **Optional.** Enable perfdata values. Defaults to "true".
snmp_warncrit_percent | **Optional.** Make the warning and critical levels in % of reported interface speed. If set **snmp_interface_megabytes** needs to be set to false. Defaults to false.
snmp_perf | **Optional.** Enable perfdata values. Defaults to true.
snmp_timeout | **Optional.** The command timeout in seconds. Defaults to 5 seconds.
### <a id="plugin-check-command-snmp-process"></a> snmp-process
@ -905,18 +905,142 @@ Custom Attributes:
Name | Description
------------------------|--------------
snmp_address | **Optional.** The host's address. Defaults to "$address$" or "$address6$" if the `address` attribute is not set.
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to "false".
snmp_nocrypt | **Optional.** Define SNMP encryption. If set **snmp_v3** needs to be set. Defaults to false.
snmp_community | **Optional.** The SNMP community. Defaults to "public".
snmp_port | **Optional.** The SNMP port connection.
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to "false".
snmp_v3 | **Optional.** SNMP version to 3. Defaults to "false".
snmp_v2 | **Optional.** SNMP version to 2c. Defaults to false.
snmp_v3 | **Optional.** SNMP version to 3. Defaults to false.
snmp_login | **Optional.** SNMP version 3 username. Defaults to "snmpuser".
snmp_password | **Required.** SNMP version 3 password. No value defined as default.
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to "false".
snmp_v3_use_privpass | **Optional.** Define to use SNMP version 3 priv password. Defaults to false.
snmp_authprotocol | **Optional.** SNMP version 3 authentication protocol. Defaults to "md5,des".
snmp_privpass | **Required.** SNMP version 3 priv password. No value defined as default..
snmp_warn | **Optional.** The warning threshold.
snmp_crit | **Optional.** The critical threshold.
snmp_process_name | **Optional.** Name of the process (regexp). No trailing slash!. Defaults to ".*".
snmp_perf | **Optional.** Enable perfdata values. Defaults to "true".
snmp_perf | **Optional.** Enable perfdata values. Defaults to true.
snmp_timeout | **Optional.** The command timeout in seconds. Defaults to 5 seconds.
# <a id="plugins-contrib"></a> Plugins Contrib
The Plugins contrib collects various contributed command definitions.
These check commands assume that the global constant named `PluginsContribDir`
is set to the path where the user installs custom plugins and can be enabled by uncommenting the corresponding line in icinga2.conf.
## <a id="plugins-contrib-network-components"> Network Components
This category includes all plugins for various network components like routers, switches and firewalls.
### <a id="plugins-contrib-command-interfacetable"></a> interfacetable
The plugin `interfacetable` generates a html page containing information about the monitored node and all of its interfaces. The actively developed and maintained version is `interfacetable_v3t` provided by `Yannick Charton` on [http://www.tontonitch.com](http://www.tontonitch.com/tiki/tiki-index.php?page=Nagios+plugins+-+interfacetable_v3t) or [https://github.com](https://github.com/Tontonitch/interfacetable_v3t).
Custom Attributes:
Name | Description
------------------------------------|-----------------------------------------------------------------------------------------------------
interfacetable_hostquery | **Required.** Specifies the remote host to poll. Defaults to "$address$".
interfacetable_hostdisplay | **Optional.** Specifies the hostname to display in the HTML link. Defaults to "$host.display_name$".
interfacetable_regex | **Optional.** Interface names and property names for some other options will be interpreted as regular expressions. Defaults to false.
interfacetable_outputshort | **Optional.** Reduce the verbosity of the plugin output. Defaults to false.
interfacetable_exclude | **Optional.** Comma separated list of interfaces globally excluded from the monitoring.
interfacetable_include | **Optional.** Comma separated list of interfaces globally included in the monitoring.
interfacetable_aliasmatching | **Optional.** Allow you to specify alias in addition to interface names. Defaults to false.
interfacetable_excludetraffic | **Optional.** Comma separated list of interfaces excluded from traffic checks.
interfacetable_includetraffic | **Optional.** Comma separated list of interfaces included for traffic checks.
interfacetable_warningtraffic | **Optional.** Interface traffic load percentage leading to a warning alert.
interfacetable_criticaltraffic | **Optional.** Interface traffic load percentage leading to a critical alert.
interfacetable_pkt | **Optional.** Add unicast/non-unicast pkt stats for each interface.
interfacetable_trackproperty | **Optional.** List of tracked properties.
interfacetable_excludeproperty | **Optional.** Comma separated list of interfaces excluded from the property tracking.
interfacetable_includeproperty | **Optional.** Comma separated list of interfaces included in the property tracking.
interfacetable_community | **Optional.** Specifies the snmp v1/v2c community string. Defaults to "public" if using snmp v1/v2c, ignored using v3.
interfacetable_snmpv2 | **Optional.** Use snmp v2c. Defaults to false.
interfacetable_login | **Optional.** Login for snmpv3 authentication.
interfacetable_passwd | **Optional.** Auth password for snmpv3 authentication.
interfacetable_privpass | **Optional.** Priv password for snmpv3 authentication.
interfacetable_protocols | **Optional.** Authentication protocol,Priv protocol for snmpv3 authentication.
interfacetable_domain | **Optional.** SNMP transport domain.
interfacetable_contextname | **Optional.** Context name for the snmp requests.
interfacetable_port | **Optional.** SNMP port. Defaults to standard port.
interfacetable_64bits | **Optional.** Use SNMP 64-bits counters. Defaults to false.
interfacetable_maxrepetitions | **Optional.** Increasing this value may enhance snmp query performances by gathering more results at one time.
interfacetable_snmptimeout | **Optional.** Define the Transport Layer timeout for the snmp queries.
interfacetable_snmpretries | **Optional.** Define the number of times to retry sending a SNMP message.
interfacetable_unixsnmp | **Optional.** Use unix snmp utilities for snmp requests. Defaults to false, which means use the perl bindings.
interfacetable_enableperfdata | **Optional.** Enable port performance data. Defaults to false.
interfacetable_perfdataformat | **Optional.** Define which performance data will be generated. Possible values are "full" (default), "loadonly", "globalonly".
interfacetable_perfdatathreshold | **Optional.** Define which thresholds are printed in the generated performance data. Possible values are "full" (default), "loadonly", "globalonly".
interfacetable_perfdatadir | **Optional.** When specified, the performance data are also written directly to a file, in the specified location.
interfacetable_perfdataservicedesc | **Optional.** Specify additional parameters for output performance data to PNP. Defaults to "$service.name$", only affects **interfacetable_perfdatadir**.
interfacetable_grapher | **Optional.** Specify the used graphing solution. Possible values are "pnp4nagios" (default), "nagiosgrapher", "netwaysgrapherv2" and "ingraph".
interfacetable_grapherurl | **Optional.** Graphing system url. Default depends on **interfacetable_grapher**.
interfacetable_portperfunit | **Optional.** Traffic could be reported in bits (counters) or in bps (calculated value).
interfacetable_nodetype | **Optional.** Specify the node type, for specific information to be printed / specific oids to be used. Possible values: "standard" (default), "cisco", "hp", "netscreen", "netapp", "bigip", "bluecoat", "brocade", "brocade-nos", "nortel", "hpux".
interfacetable_duplex | **Optional.** Add the duplex mode property for each interface in the interface table. Defaults to false.
interfacetable_stp | **Optional.** Add the stp state property for each interface in the interface table. Defaults to false.
interfacetable_vlan | **Optional.** Add the vlan attribution property for each interface in the interface table. Defaults to false. This option is available only for the following nodetypes: "cisco", "hp", "nortel"
interfacetable_noipinfo | **Optional.** Remove the ip information for each interface from the interface table. Defaults to false.
interfacetable_alias | **Optional.** Add the alias information for each interface in the interface table. Defaults to false.
interfacetable_accessmethod | **Optional.** Access method for a shortcut to the host in the HTML page. Format is : <method>[:<target>] Where method can be: ssh, telnet, http or https.
interfacetable_htmltablelinktarget | **Optional.** Specifies the windows or the frame where the [details] link will load the generated html page. Possible values are: "_blank", "_self" (default), "_parent", "_top", or a frame name.
interfacetable_delta | **Optional.** Set the delta used for interface throuput calculation in seconds.
interfacetable_ifs | **Optional.** Input field separator. Defaults to ",".
interfacetable_cache | **Optional.** Define the retention time of the cached data in seconds.
interfacetable_noifloadgradient | **Optional.** Disable color gradient from green over yellow to red for the load percentage. Defaults to false.
interfacetable_nohuman | **Optional.** Do not translate bandwidth usage in human readable format. Defaults to false.
interfacetable_snapshot | **Optional.** Force the plugin to run like if it was the first launch. Defaults to false.
interfacetable_timeout | **Optional.** Define the global timeout limit of the plugin in seconds. Defaults to "15s".
interfacetable_css | **Optional.** Define the css stylesheet used by the generated html files. Possible values are "classic", "icinga", "icinga-alternate1" or "nagiosxi".
interfacetable_config | **Optional.** Specify a config file to load.
interfacetable_noconfigtable | **Optional.** Disable configuration table on the generated HTML page. Defaults to false.
interfacetable_notips | **Optional.** Disable the tips in the generated html tables. Defaults to false.
interfacetable_defaulttablesorting | **Optional.** Default table sorting can be "index" (default) or "name".
interfacetable_tablesplit | **Optional.** Generate multiple interface tables, one per interface type. Defaults to false.
interfacetable_notype | **Optional.** Remove the interface type for each interface. Defaults to false.
## <a id="plugins-contrib-operating-system"> Operating System
In this category you can find plugins for gathering information about your operating system or the system beneath like memory usage.
### <a id="plugins-contrib-command-mem"></a> mem
The plugin `mem` is used for gathering information about memory usage on linux and unix hosts. It is able to count cache memory as free when comparing it to the thresholds. It is provided by `Justin Ellison` on [https://github.com](https://github.com/justintime/nagios-plugins). For more details see the developers blog [http://sysadminsjourney.com](http://sysadminsjourney.com/content/2009/06/04/new-and-improved-checkmempl-nagios-plugin).
Custom Attributes:
Name | Description
-------------|-----------------------------------------------------------------------------------------------------------------------
mem_used | **Optional.** Tell the plugin to check for used memory in opposite of **mem_free**. Must specify one of these as true.
mem_free | **Optional.** Tell the plugin to check for free memory in opposite of **mem_used**. Must specify one of these as true.
mem_cache | **Optional.** If set to true plugin will count cache as free memory. Defaults to false.
mem_warning | **Required.** Specifiy the warning threshold as number interpreted as percent.
mem_critical | **Required.** Specifiy the critical threshold as number interpreted as percent.
## <a id="plugins-contrib-virtualization"> Virtualization
This category includes all plugins for various virtualization technologies.
### <a id="plugins-contrib-command-esxi-hardware"></a> esxi_hardware
The plugin `esxi_hardware` is a plugin to monitor hardware of ESXi servers through the vmware api and cim service. It is provided by `Claudio Kuenzler` on [http://www.claudiokuenzler.com](http://www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.php). For instruction on creating the required local user and workarounds for some hardware types have a look on his homepage.
Custom Attributes:
Name | Description
------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
esxi_hardware_host | **Required.** Specifies the host to monitor. Defaults to "$address$".
esxi_hardware_user | **Required.** Specifies the user for polling. Must be a local user of the root group on the system. Can also be provided as a file path file:/path/to/.passwdfile, then first string of file is used.
esxi_hardware_pass | **Required.** Password of the user. Can also be provided as a file path file:/path/to/.passwdfile, then second string of file is used.
esxi_hardware_vendor | **Optional.** Defines the vendor of the server: "auto", "dell", "hp", "ibm", "intel", "unknown" (default).
esxi_hardware_html | **Optional.** Add web-links to hardware manuals for Dell servers (use your country extension). Only useful with **esxi_hardware_vendor** = dell.
esxi_hardware_ignore | **Optional.** Comma separated list of elements to ignore.
esxi_hardware_perfdata | **Optional.** Add performcedata for graphers like PNP4Nagios to the output. Defaults to false.
esxi_hardware_nopower | **Optional.** Do not collect power performance data, when **esxi_hardware_perfdata** is set to true. Defaults to false.
esxi_hardware_novolts | **Optional.** Do not collect voltage performance data, when **esxi_hardware_perfdata** is set to true. Defaults to false.
esxi_hardware_nocurrent | **Optional.** Do not collect current performance data, when **esxi_hardware_perfdata** is set to true. Defaults to false.
esxi_hardware_notemp | **Optional.** Do not collect temperature performance data, when **esxi_hardware_perfdata** is set to true. Defaults to false.
esxi_hardware_nofan | **Optional.** Do not collect fan performance data, when **esxi_hardware_perfdata** is set to true. Defaults to false.

View File

@ -12,6 +12,11 @@ const PluginDir = "@ICINGA2_PLUGINDIR@"
*/
const ManubulonPluginDir = "@ICINGA2_PLUGINDIR@"
/* The directory which you use to store additional plugins which ITL provides user contributed command definitions for.
* Check the documentation, chapter "Plugins Contribution", for details.
*/
const PluginsContribDir = "@ICINGA2_PLUGINDIR@"
/* Our local instance name. By default this is the server's hostname as returned by `hostname --fqdn`.
* This should be the common name from the API certificate.
*/

View File

@ -25,6 +25,7 @@ include "zones.conf"
*/
include <itl>
include <plugins>
// include <plugins-contrib>
/**
* The features-available directory contains a number of configuration

View File

@ -15,7 +15,9 @@
# along with this program; if not, write to the Free Software Foundation
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
add_subdirectory(plugins-contrib.d)
install(
FILES itl command.conf command-icinga.conf timeperiod.conf plugins command-plugins.conf manubulon command-plugins-manubulon.conf
FILES itl command.conf command-icinga.conf timeperiod.conf plugins command-plugins.conf manubulon command-plugins-manubulon.conf plugins-contrib
DESTINATION ${CMAKE_INSTALL_DATADIR}/icinga2/include
)

26
itl/plugins-contrib Normal file
View File

@ -0,0 +1,26 @@
/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
/**
* This is a directory for various contributed command definitions.
* Plugins should be organized by a category, e.g. database plugins are in
* plugins-contrib.d/databases.conf
*/
include_recursive "plugins-contrib.d"

View File

@ -0,0 +1,21 @@
# Icinga 2
# Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
install(
FILES network-components.conf operating-system.conf virtualization.conf
DESTINATION ${CMAKE_INSTALL_DATADIR}/icinga2/include/plugins-contrib.d
)

View File

@ -0,0 +1,294 @@
/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
object CheckCommand "interfacetable" {
import "plugin-check-command"
command = [ PluginsContribDir + "/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"
}
"--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"
}
"--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_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
}

View File

@ -0,0 +1,52 @@
/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
object CheckCommand "mem" {
import "plugin-check-command"
command = [ PluginsContribDir + "/check_mem.pl" ]
arguments = {
"-u" = {
set_if = "$mem_used$"
description = "Check USED memory"
}
"-f" = {
set_if = "$mem_free$"
description = "Check FREE memory"
}
"-C" = {
set_if = "$mem_cache$"
description = "Count OS caches as FREE memory"
}
"-w" = {
value = "$mem_warning$"
description = "Percent free/used when to warn"
}
"-c" = {
value = "$mem_critical$"
description = "Percent free/used when critical"
}
}
vars.mem_used = false
vars.mem_free = false
vars.mem_cache = false
}

View File

@ -0,0 +1,84 @@
/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
object CheckCommand "esxi_hardware" {
import "plugin-check-command"
command = [ PluginsContribDir + "/check_esxi_hardware.py" ]
arguments = {
"-H" = {
value = "$esxi_hardware_host$"
description = "report on HOST"
}
"-U" = {
value = "$esxi_hardware_user$"
description = "user to connect as"
}
"-P" = {
value = "$esxi_hardware_pass$"
description = "password"
}
"-V" = {
value = "$esxi_hardware_vendor$"
description = "Vendor code: auto, dell, hp, ibm, intel, or unknown"
}
"-I" = {
value = "$esxi_hardware_html$"
description = "generate html links for country XX"
}
"-i" = {
value = "$esxi_hardware_ignore$"
description = "comma-separated list of elements to ignore"
}
"-p" = {
set_if = "$esxi_hardware_perfdata$"
description = "collect performance data for pnp4nagios"
}
"--no-power" = {
set_if = "$esxi_hardware_nopower$"
description = "don't collect power performance data"
}
"--no-volts" = {
set_if = "$esxi_hardware_novolts$"
description = "don't collect voltage performance data"
}
"--no-current" = {
set_if = "$esxi_hardware_nocurrent$"
description = "don't collect current performance data"
}
"--no-temp" = {
set_if = "$esxi_hardware_notemp$"
description = "don't collect temperature performance data"
}
"--no-fan" = {
set_if = "$esxi_hardware_nofan$"
description = "don't collect fan performance data"
}
}
vars.esxi_hardware_host = "$address$"
vars.esxi_hardware_perfdata = false
vars.esxi_hardware_nopower = false
vars.esxi_hardware_novolts = false
vars.esxi_hardware_nocurrent = false
vars.esxi_hardware_notemp = false
vars.esxi_hardware_nofan = false
}