/****************************************************************************** * Icinga 2 * * Copyright (C) 2012-2014 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. * ******************************************************************************/ template CheckCommand "ping-common" { import "plugin-check-command", command = [ PluginDir + "/check_ping" ] arguments = { "-H" = "$ping_address$" "-w" = "$ping_wrta$,$ping_wpl$%" "-c" = "$ping_crta$,$ping_cpl$%" "-p" = { value = "$ping_packets$" optional = true } "-t" = { value = "$ping_timeout$" optional = true } } vars.ping_wrta = 100 vars.ping_wpl = 5 vars.ping_crta = 200 vars.ping_cpl = 15 } object CheckCommand "ping4" { import "ping-common", command += [ "-4" ] vars.ping_address = "$address$" } object CheckCommand "ping6" { import "ping-common", command += [ "-6" ] vars.ping_address = "$address6$" } object CheckCommand "hostalive" { import "ping4" vars.ping_wrta = 3000.0, vars.ping_wpl = 80, vars.ping_crta = 5000.0, vars.ping_cpl = 100 } object CheckCommand "dummy" { import "plugin-check-command", command = [ PluginDir + "/check_dummy", "$dummy_state$", "$dummy_text$" ], vars.dummy_state = 0, vars.dummy_text = "Check was successful." } object CheckCommand "passive" { import "dummy", vars.dummy_state = 3, vars.dummy_text = "No Passive Check Result Received." } object CheckCommand "tcp" { import "plugin-check-command", command = [ PluginDir + "/check_tcp", "-H", "$tcp_address$", "-p", "$tcp_port$" ] vars.tcp_address = "$address$" } object CheckCommand "udp" { import "plugin-check-command", command = [ PluginDir + "/check_udp", "-H", "$udp_address$", "-p", "$udp_port$" ] vars.udp_address = "$address$" } object CheckCommand "http" { import "plugin-check-command", command = PluginDir + "/check_http" arguments = { "-H" = { value = "$http_vhost$" optional = true } "-I" = "$http_address$" "-u" = { value = "$http_uri$" optional = true } "-p" = { value = "$http_port$" optional = true } "-S" = { set_if = "$http_ssl$" } "-w" = { value = "$http_warn_time$" optional = true } "-c" = { value = "$http_critical_time$" optional = true } } vars.http_address = "$address$" vars.http_ssl = false } object CheckCommand "smtp" { import "plugin-check-command" command = PluginDir + "/check_smtp" arguments = { "-H" = "$smtp_address$" } vars.smtp_address = "$address$" } object CheckCommand "ssmtp" { import "plugin-check-command" command = PluginDir + "/check_ssmtp" arguments = { "-H" = "$ssmtp_address$" "-p" = { value = "$ssmtp_port$" optional = true } } vars.ssmtp_address = "$address$" } object CheckCommand "ntp_time" { import "plugin-check-command" command = PluginDir + "/check_ntp_time" arguments = { "-H" = "$ntp_address$" } vars.ntp_address = "$address$" } object CheckCommand "ssh" { import "plugin-check-command" command = PluginDir + "/check_ssh" arguments = { "-p" = { value = "$ssh_port$" optional = true } "host" = { value = "$ssh_address$" skip_key = true } } vars.ssh_address = "$address$" } object CheckCommand "disk" { import "plugin-check-command", command = PluginDir + "/check_disk" arguments = { "-w" = "$disk_wfree$%" "-c" = "$disk_cfree$%" } vars.disk_wfree = 20 vars.disk_cfree = 10 } object CheckCommand "users" { import "plugin-check-command", command = PluginDir + "/check_users" arguments = { "-w" = "$users_wgreater$" "-c" = "$users_cgreater$" } vars.users_wgreater = 20 vars.users_cgreater = 50 } object CheckCommand "procs" { import "plugin-check-command", command = PluginDir + "/check_procs" arguments = { "-w" = "$procs_wgreater$" "-c" = "$procs_cgreater$" } vars.procs_wgreater = 250 vars.procs_cgreater = 400, } object CheckCommand "swap" { import "plugin-check-command", command = PluginDir + "/check_swap" arguments = { "-w" = "$swap_wfree$%", "-c" = "$swap_cfree$%" } vars.swap_wfree = 50 vars.swap_cfree = 25 } object CheckCommand "load" { import "plugin-check-command", command = PluginDir + "/check_load" arguments = { "-w" = "$load_wload1$,$load_wload5$,$load_wload15$" "-c" = "$load_cload1$,$load_cload5$,$load_cload15$" } vars.load_wload1 = 5.0 vars.load_wload5 = 4.0 vars.load_wload15 = 3.0 vars.load_cload1 = 10.0 vars.load_cload5 = 6.0 vars.load_cload15 = 4.0 } object CheckCommand "snmp" { import "plugin-check-command", command = PluginDir + "/check_snmp" arguments = { "-H" = "$snmp_address$", "-o" = "$snmp_oid$", "-C" = "$snmp_community$" } vars.snmp_address = "$address$" vars.snmp_community = "public" } object CheckCommand "snmp-uptime" { import "snmp", vars.snmp_oid = "1.3.6.1.2.1.1.3.0" } object CheckCommand "apt" { import "plugin-check-command" command = [ PluginDir + "/check_apt" ] } object CheckCommand "icinga" { import "icinga-check-command", } object CheckCommand "cluster" { import "cluster-check-command", } object CheckCommand "agent" { import "agent-check-command" }