From e6883bba40f4214b78847bcd4101a3b8f2155e0e Mon Sep 17 00:00:00 2001 From: Jean-Louis Dupond Date: Tue, 4 Jul 2017 10:41:51 +0200 Subject: [PATCH] itl: add additional mssql_health arguments --- doc/10-icinga-template-library.md | 37 ++++++-- itl/plugins-contrib.d/databases.conf | 132 ++++++++++++++++++++------- 2 files changed, 127 insertions(+), 42 deletions(-) diff --git a/doc/10-icinga-template-library.md b/doc/10-icinga-template-library.md index 5722e1d9e..3e3853fe2 100644 --- a/doc/10-icinga-template-library.md +++ b/doc/10-icinga-template-library.md @@ -2088,25 +2088,42 @@ Custom attributes passed as [command parameters](3-monitoring-basics.md#command- Name | Description ---------------------------------|------------------------------------------------------------------------------------------------------------------------------ mssql_health_hostname | **Optional.** Specifies the database hostname or address. No default because you typically use "mssql_health_server". +mssql_health_username | **Optional.** The username for the database connection. +mssql_health_password | **Optional.** The password for the database connection. mssql_health_port | **Optional.** Specifies the database port. No default because you typically use "mssql_health_server". mssql_health_server | **Optional.** The name of a predefined connection (in freetds.conf). mssql_health_currentdb | **Optional.** The name of a database which is used as the current database for the connection. -mssql_health_username | **Optional.** The username for the database connection. -mssql_health_password | **Optional.** The password for the database connection. +mssql_health_offlineok | **Optional.** Set this to true if offline databases are perfectly ok for you. Defaults to false. +mssql_health_nooffline | **Optional.** Set this to true to ignore offline databases. Defaults to false. +mssql_health_dbthresholds | **Optional.** With this parameter thresholds are read from the database table check_mssql_health_thresholds. +mssql_health_notemp | **Optional.** Set this to true to ignore temporary databases/tablespaces. Defaults to false. +mssql_health_commit | **Optional.** Set this to true to turn on autocommit for the dbd::sybase module. Defaults to false. +mssql_health_method | **Optional.** How the plugin should connect to the database (dbi for the perl module `DBD::Sybase` (default) and `sqlrelay` for the SQLRelay proxy). +mssql_health_mode | **Required.** The mode uses predefined keywords for the different checks. For example "connection-time", "database-free" or "sql". +mssql_health_regexp | **Optional.** If set to true, "mssql_health_name" will be interpreted as a regular expression. Defaults to false. mssql_health_warning | **Optional.** The warning threshold depending on the mode. mssql_health_critical | **Optional.** The critical threshold depending on the mode. -mssql_health_mode | **Required.** The mode uses predefined keywords for the different checks. For example "connection-time", "database-free" or "sql". -mssql_health_method | **Optional.** How the plugin should connect to the database (dbi for the perl module `DBD::Sybase` (default) and `sqlrelay` for the SQLRelay proxy). +mssql_health_warningx | **Optional.** A possible override for the warning threshold. +mssql_health_criticalx | **Optional.** A possible override for the critical threshold. +mssql_health_units | **Optional.** This is used for a better output of mode=sql and for specifying thresholds for mode=tablespace-free. Possible values are "%", "KB", "MB" and "GB". mssql_health_name | **Optional.** Depending on the mode this could be the database name or a SQL statement. mssql_health_name2 | **Optional.** If "mssql_health_name" is a sql statement, "mssql_health_name2" can be used to appear in the output and the performance data. -mssql_health_regexp | **Optional.** If set to true, "mssql_health_name" will be interpreted as a regular expression. Defaults to false. -mssql_health_units | **Optional.** This is used for a better output of mode=sql and for specifying thresholds for mode=tablespace-free. Possible values are "%", "KB", "MB" and "GB". -mssql_health_offlineok | **Optional.** Set this to true if offline databases are perfectly ok for you. Defaults to false. -mssql_health_commit | **Optional.** Set this to true to turn on autocommit for the dbd::sybase module. Defaults to false. -mssql_health_notemp | **Optional.** Set this to true to ignore temporary databases/tablespaces. Defaults to false. -mssql_health_nooffline | **Optional.** Set this to true to ignore offline databases. Defaults to false. +mssql_health_name3 | **Optional.** Additional argument used for 'database-file-free' mode for example. +mssql_health_extraopts | **Optional.** Read command line arguments from an external file. +mssql_health_blacklist | **Optional.** Blacklist some (missing/failed) components" +mssql_health_mitigation | **Optional.** "The parameter allows you to change a critical error to a warning." mssql_health_lookback | **Optional.** The amount of time you want to look back when calculating average rates. +mssql_health_environment | **Optional.** Add a variable to the plugin's environment." +mssql_health_negate | **Optional.** Emulate the negate plugin. --negate warning=critical --negate unknown=critical." +mssql_health_morphmessage | **Optional.** Modify the final output message." +mssql_health_morphperfdata | **Optional.** The parameter allows you to change performance data labels." +mssql_health_selectedperfdata | **Optional.** The parameter allows you to limit the list of performance data." mssql_health_report | **Optional.** Report can be used to output only the bad news. Possible values are "short", "long", "html". Defaults to `short`. +mssql_health_multiline | **Optional.** Multiline output." +mssql_health_withmymodulesdyndir | **Optional.** Add-on modules for the my-modes will be searched in this directory." +mssql_health_statefilesdir | **Optional.** An alternate directory where the plugin can save files." +mssql_health_isvalidtime | **Optional.** Signals the plugin to return OK if now is not a valid check time." +mssql_health_timeout | **Optional.** Plugin timeout. Defaults to 15s. #### mysql_health diff --git a/itl/plugins-contrib.d/databases.conf b/itl/plugins-contrib.d/databases.conf index f12f0eba0..5b23b78b5 100644 --- a/itl/plugins-contrib.d/databases.conf +++ b/itl/plugins-contrib.d/databases.conf @@ -25,6 +25,14 @@ object CheckCommand "mssql_health" { value = "$mssql_health_hostname$" description = "the database server's hostname" } + "--username" = { + value = "$mssql_health_username$" + description = "the mssql db user" + } + "--password" = { + value = "$mssql_health_password$" + description = "the mssql db user's password" + } "--port" = { value = "$mssql_health_port$" description = "the database's port" @@ -37,13 +45,37 @@ object CheckCommand "mssql_health" { value = "$mssql_health_currentdb$" description = "the name of a database which is used as the current database for the connection" } - "--username" = { - value = "$mssql_health_username$" - description = "the mssql db user" + "--offlineok" = { + set_if = "$mssql_health_offlineok$" + description = "if offline databases are perfectly ok for you" } - "--password" = { - value = "$mssql_health_password$" - description = "the mssql db user's password" + "--nooffline" = { + set_if = "$mssql_health_nooffline$" + description = "Skip the offline databases" + } + "--dbthresholds" = { + value = "$mssql_health_dbthresholds$" + description = "Read thresholds from a database table" + } + "--notemp" = { + set_if = "$mssql_health_notemp$" + description = "Ignore temporary databases/tablespaces" + } + "--commit" = { + set_if = "$mssql_health_commit$" + description = "turns on autocommit for the dbd::sybase module" + } + "--method" = { + value = "$mssql_health_method$" + description = "how the plugin should connect to the database (dbi for using DBD::Sybase (default), sqlrelay for the SQLRelay proxy)" + } + "--mode" = { + value = "$mssql_health_mode$" + description = "the mode of the plugin" + } + "--regexp" = { + set_if = "$mssql_health_regexp$" + description = "name will be interpreted as a regular expression" } "--warning" = { value = "$mssql_health_warning$" @@ -53,13 +85,17 @@ object CheckCommand "mssql_health" { value = "$mssql_health_critical$" description = "the critical range" } - "--mode" = { - value = "$mssql_health_mode$" - description = "the mode of the plugin" + "--warningx" = { + value = "$mssql_health_warningx$" + description = "The extended warning thresholds" } - "--method" = { - value = "$mssql_health_method$" - description = "how the plugin should connect to the database (dbi for using DBD::Sybase (default), sqlrelay for the SQLRelay proxy)" + "--criticalx" = { + value = "$mssql_health_criticalx$" + description = "The extended critical thresholds" + } + "--units" = { + value = "$mssql_health_units$" + description = "This is used for a better output of mode=sql and for specifying thresholds for mode=tablespace-free" } "--name" = { value = "$mssql_health_name$" @@ -69,38 +105,70 @@ object CheckCommand "mssql_health" { value = "$mssql_health_name2$" description = "if name is a sql statement, name2 can be used to appear in the output and the performance data" } - "--regexp" = { - set_if = "$mssql_health_regexp$" - description = "name will be interpreted as a regular expression" - } - "--units" = { - value = "$mssql_health_units$" - description = "This is used for a better output of mode=sql and for specifying thresholds for mode=tablespace-free" - } - "--offlineok" = { - set_if = "$mssql_health_offlineok$" - description = "if offline databases are perfectly ok for you" + "--name3" = { + value = "$mssql_health_name3$" + description = "The tertiary name of a component" } - "--commit" = { - set_if = "$mssql_health_commit$" - description = "turns on autocommit for the dbd::sybase module" + "--extra-opts" = { + value = "$mssql_health_extraopts$" + description = "read command line arguments from an external file" } - "--notemp" = { - set_if = "$mssql_health_notemp$" - description = "Ignore temporary databases/tablespaces" + "--blacklist" = { + value = "$mssql_health_blacklist$" + description = "Blacklist some (missing/failed) components" } - "--nooffline" = { - set_if = "$mssql_health_nooffline$" - description = "Skip the offline databases" + "--mitigation" = { + value = "$mssql_health_mitigation$" + description = "The parameter allows you to change a critical error to a warning." } "--lookback" = { value = "$mssql_health_lookback$" description = "The amount of time you want to look back when calculating average rates" } + "--environment" = { + value = "$mssql_health_environment$" + description = "Add a variable to the plugin's environment." + } + "--negate" = { + value = "$mssql_health_negate$" + description = "Emulate the negate plugin. --negate warning=critical --negate unknown=critical." + } + "--morphmessage" = { + value = "$mssql_health_morphmessage$" + description = "Modify the final output message." + } + "--morphperfdata" = { + value = "$mssql_health_morphperfdata$" + description = "The parameter allows you to change performance data labels." + } + "--selectedperfdata" = { + value = "$mssql_health_selectedperfdata$" + description = "The parameter allows you to limit the list of performance data." + } "--report" = { value = "$mssql_health_report$" description = "Report can be used to output only the bad news (short,long,html)" } + "--multiline" = { + value = "$mssql_health_multiline$" + description = "Multiline output." + } + "--with-mymodules-dyn-dir" = { + value = "$mssql_health_withmymodulesdyndir$" + description = "Add-on modules for the my-modes will be searched in this directory." + } + "--statefilesdir" = { + value = "$mssql_health_statefilesdir$" + description = "An alternate directory where the plugin can save files." + } + "--isvalidtime" = { + value = "$mssql_health_isvalidtime$" + description = "Signals the plugin to return OK if now is not a valid check time." + } + "--timeout" = { + value = "$mssql_health_timeout$" + description = "Seconds before plugin times out (default: 15)" + } } vars.mssql_health_regexp = false -- 2.40.0