diff --git a/doc/10-icinga-template-library.md b/doc/10-icinga-template-library.md index 8edc150b0..6850c503c 100644 --- a/doc/10-icinga-template-library.md +++ b/doc/10-icinga-template-library.md @@ -1893,6 +1893,25 @@ nscp_counter_arguments | **Optional.** Additional arguments. nscp_counter_showall | **Optional.** Shows more details in plugin output, default to false. nscp_counter_perfsyntax | **Optional.** Apply performance data label, e.g. `Total Processor Time` to avoid special character problems. Defaults to `nscp_counter_name`. +### nscp-local-tasksched + +Check Command object for the `check_tasksched` NSClient++ plugin. +You can check for a single task or for a complete folder (and sub folders) of tasks. + +Name | Description +-----------------------|------------------ +nscp_tasksched_name | **Optional.** Name of the task to check. +nscp_tasksched_folder | **Optional.** The folder in which the tasks to check reside. +nscp_tasksched_recursive | **Optional.** Recurse sub folder, defaults to true. +nscp_tasksched_hidden | **Optional.** Look for hidden tasks, defaults to false. +nscp_tasksched_warning | **Optional.** Filter which marks items which generates a warning state, defaults to `exit_code != 0`. +nscp_tasksched_critical | **Optional.** Filter which marks items which generates a critical state, defaults to `exit_code < 0`. +nscp_tasksched_emptystate | **Optional.** Return status to use when nothing matched filter, defaults to warning. +nscp_tasksched_perfsyntax | **Optional.** Performance alias syntax., defaults to `%(title)` +nscp_tasksched_detailsyntax | **Optional.** Detail level syntax, defaults to `%(folder)/%(title): %(exit_code) != 0` +nscp_tasksched_arguments | **Optional.** Additional arguments. +nscp_tasksched_showall | **Optional.** Shows more details in plugin output, default to false. +nscp_modules | **Optional.** An array of NSClient++ modules to load. Defaults to `[ "CheckTaskSched" ]`. ## Plugin Check Commands for Manubulon SNMP diff --git a/itl/command-nscp-local.conf b/itl/command-nscp-local.conf index 33677fccd..ca69ea2f2 100644 --- a/itl/command-nscp-local.conf +++ b/itl/command-nscp-local.conf @@ -293,3 +293,68 @@ object CheckCommand "nscp-local-counter" { vars.nscp_counter_less = false vars.nscp_counter_perfsyntax = "$nscp_counter_name$" } + +object CheckCommand "nscp-local-tasksched" { + import "nscp-local" + + arguments += { + "--filter" = { + set_if = {{ + var scheduler_name = macro("$nscp_tasksched_name$") + if (len(scheduler_name) > 0 ) { + return true + } else { + return false + } + }} + value = "title='$nscp_tasksched_name$'" + description = "Name of the task to check." + } + "--folder" = { + value = "$nscp_tasksched_folder$" + description = "The folder in which the tasks to check reside." + } + "--hidden" = { + set_if = "$nscp_tasksched_hidden$" + description = "Look for hidden tasks." + } + "--recursive" = { + value = "$nscp_tasksched_recursive$" + description = "Recurse sub folder (defaults to true)." + } + "--warning" = { + value = "$nscp_tasksched_warning$" + description = "Filter which marks items which generates a warning state." + } + "--critical" = { + value = "$nscp_tasksched_critical$" + description = "Filter which marks items which generates a critical state." + } + "--empty-state" = { + value = "$nscp_tasksched_emptystate$" + description = "Return status to use when nothing matched filter." + } + "--perf-syntax" = { + value = "$nscp_tasksched_perfsyntax$" + description = "Performance alias syntax." + } + "--detail-syntax" = { + value = "$nscp_tasksched_detailsyntax$" + description = "Detail level syntax." + } + "-a" = { + value = "$nscp_tasksched_arguments$" + repeat_key = true + } + } + + vars.nscp_modules = "CheckTaskSched" + vars.nscp_query = "check_tasksched" + vars.nscp_showall = "$nscp_tasksched_showall$" + vars.nscp_tasksched_recursive = true + vars.nscp_tasksched_perfsyntax = "%(title)" + vars.nscp_tasksched_detailsyntax = "%(folder)/%(title): %(exit_code) != 0" + vars.nscp_tasksched_warning = "exit_code != 0" + vars.nscp_tasksched_critical = "exit_code < 0" + +}