/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ if (!globals.contains("NscpPath")) { globals.NscpPath = dirname(msi_get_component_path("{5C45463A-4AE9-4325-96DB-6E239C034F93}")) } object CheckCommand "nscp-local" { command = [ NscpPath + "\\nscp.exe", "client" ] arguments = { "--log" = { value = "$nscp_log_level$" description = "The log level to use" } "--load-all" = { set_if ="$nscp_load_all$" description = "Load all plugins (currently only used with generate)" } "--module" = { value = "$nscp_modules$" description = "Specify which NSClient++ modules are required. 'nscp client' just needs 'CheckSystem' by default." repeat_key = true } "-q" = { value = "$nscp_query$" description = "Run a query with a given name" required = true } "-b" = { set_if = "$nscp_boot$" description = "Boot the client before executing command (similar as running the command from test mode)" } "-a" = { value = "$nscp_arguments$" repeat_key = true description = "List of arguments (arguments gets -- prefixed automatically (--argument foo=bar is the same as setting '--foo bar')" } "--show-all" = { set_if = "$nscp_showall$" description = "" } } vars.nscp_log_level = "critical" vars.nscp_load_all = false vars.nscp_boot = true vars.nscp_showall = false vars.nscp_modules = [ "CheckSystem" ] } object CheckCommand "nscp-local-cpu" { import "nscp-local" arguments += { "--time" = { value = "$nscp_cpu_time$" repeat_key = true description = "The time to check" } "--warning" = { value = "load>$nscp_cpu_warning$" } "--critical" = { value = "load>$nscp_cpu_critical$" } "-a" = { value = "$nscp_cpu_arguments$" repeat_key = true } } vars.nscp_query = "check_cpu" vars.nscp_showall = "$nscp_cpu_showall$" vars.nscp_cpu_time = [ "1m", "5m", "15m" ] vars.nscp_cpu_showall = true vars.nscp_cpu_warning = 80 vars.nscp_cpu_critical = 90 } object CheckCommand "nscp-local-memory" { import "nscp-local" arguments += { "--type=committed" = { set_if = "$nscp_memory_committed$" description = "Total memory (RAM+PAGE)" } "--type=physical" = { set_if = "$nscp_memory_physical$" description = "Physical memory (RAM)" } "--warning" = { value = "$nscp_memory_op$ $nscp_memory_warning$" } "--critical" = { value = "$nscp_memory_op$ $nscp_memory_critical$" } "-a" = { value = "$nscp_memory_arguments$" repeat_key = true } } vars.nscp_query = "check_memory" vars.nscp_showall = "$nscp_memory_showall$" vars.nscp_memory_op = {{ if (!macro("$nscp_memory_free$")) { return "used >" } else { return "free <" } }} vars.nscp_memory_committed = false vars.nscp_memory_physical = true vars.nscp_memory_free = true vars.nscp_memory_warning = {{ if (!macro("$nscp_memory_free$")) { return 80 } else { return 20 } }} vars.nscp_memory_critical = {{ if (!macro("$nscp_memory_free$")) { return 90 } else { return 10 } }} vars.nscp_memory_showall = false } object CheckCommand "nscp-local-os-version" { import "nscp-local" vars.nscp_query = "check_os_version" } object CheckCommand "nscp-local-pagefile" { import "nscp-local" vars.nscp_query = "check_pagefile" } object CheckCommand "nscp-local-process" { import "nscp-local" vars.nscp_query = "check_process" } object CheckCommand "nscp-local-service" { import "nscp-local" arguments += { "--service" = { value = "$nscp_service_name$" repeat_key = true } "--ok" = { value = "$nscp_service_otype$='$nscp_service_ok$'" } "--warning" = { value = "$nscp_service_wtype$='$nscp_service_warning$'" } "--critical" = { value = "$nscp_service_ctype$='$nscp_service_critical$'" } "-a" = { value = "$nscp_service_arguments$" repeat_key = true } } vars.nscp_query = "check_service" vars.nscp_showall = "$nscp_service_showall$" vars.nscp_service_showall = true vars.nscp_service_type = "state" vars.nscp_service_otype = vars.nscp_service_type vars.nscp_service_wtype = vars.nscp_service_type vars.nscp_service_ctype = vars.nscp_service_type } object CheckCommand "nscp-local-uptime" { import "nscp-local" vars.nscp_query = "check_uptime" } object CheckCommand "nscp-local-version" { import "nscp-local" vars.nscp_query = "check_version" vars.nscp_modules = [ "CheckHelpers" ] } object CheckCommand "nscp-local-disk" { import "nscp-local" arguments += { "--drive" = { value = "$nscp_disk_drive$" repeat_key = true } "--exclude" = { value = "$nscp_disk_exclude$" repeat_key = true } "--warning" = { value = "$nscp_disk_op$ $nscp_disk_warning$" } "--critical" = { value = "$nscp_disk_op$ $nscp_disk_critical$" } "-a" = { value = "$nscp_disk_arguments$" repeat_key = true } } vars.nscp_query = "check_drivesize" vars.nscp_showall = "$nscp_disk_showall$" vars.nscp_disk_op = {{ if (!macro("$nscp_disk_free$")) { return "used >" } else { return "free <" } }} vars.nscp_disk_showall = true vars.nscp_disk_free = false vars.nscp_disk_warning = {{ if (!macro("$nscp_disk_free$")) { return 80 } else { return 20 } }} vars.nscp_disk_critical = {{ if (!macro("$nscp_disk_free$")) { return 90 } else { return 10 } }} vars.nscp_modules = [ "CheckDisk" ] } object CheckCommand "nscp-local-counter" { import "nscp-local" arguments += { "--counter" = { value = "$nscp_counter_name$" repeat_key = true } "--warning" = { value = "value $nscp_counter_op$ $nscp_counter_warning$" } "--critical" = { value = "value $nscp_counter_op$ $nscp_counter_critical$" } "--perf-syntax" = { value = "$nscp_counter_perfsyntax$" } "-a" = { value = "$nscp_counter_arguments$" repeat_key = true } } vars.nscp_counter_op = {{ if (!macro("$nscp_counter_less$")) { return ">" } else { return "<" } }} vars.nscp_query = "check_pdh" vars.nscp_showall = "$nscp_counter_showall$" 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" }