summaryrefslogtreecommitdiffstats
path: root/Monitoring/nagios/shinken/commands.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'Monitoring/nagios/shinken/commands.cfg')
-rw-r--r--Monitoring/nagios/shinken/commands.cfg285
1 files changed, 285 insertions, 0 deletions
diff --git a/Monitoring/nagios/shinken/commands.cfg b/Monitoring/nagios/shinken/commands.cfg
new file mode 100644
index 00000000..79a5e6e0
--- /dev/null
+++ b/Monitoring/nagios/shinken/commands.cfg
@@ -0,0 +1,285 @@
+# Here are some sample commands for checking classics things like
+# systems and websites
+
+# -----------------------------------------------------------------
+#
+# Localhost checks
+#
+# -----------------------------------------------------------------
+
+
+# Simple disk check for LOCALHOST ONLY!
+define command {
+ command_name check_local_disks
+ command_line $PLUGINSDIR$/check_disk -w 10% -c 5% -x /dev/shm -e -l
+}
+
+
+define command {
+ command_name check_local_load
+ command_line $PLUGINSDIR$/check_load -w 3,3,3 -c 5,5,5
+}
+
+define command {
+ command_name check_local_mem
+ command_line $PLUGINSDIR$/check_mem.pl -u -w 90 -c 95 -C
+}
+
+
+define command {
+ command_name check_local_swap
+ command_line $PLUGINSDIR$/check_swap -w 50% -c 25%
+}
+
+define command {
+ command_name check_local_cpu
+ command_line $PLUGINSDIR$/check_cpu -w 20 -c 10
+}
+
+
+
+
+# -----------------------------------------------------------------
+#
+# Classic network calls
+#
+# -----------------------------------------------------------------
+
+# Simple tcp check
+define command {
+ command_name check_tcp
+ command_line $PLUGINSDIR$/check_tcp -H $HOSTADDRESS$ -p $ARG1$
+}
+
+# Simple web check
+define command {
+ command_name check_http
+ command_line $PLUGINSDIR$/check_http -H $HOSTADDRESS$
+}
+
+# And with SSL
+define command {
+ command_name check_https
+ command_line $PLUGINSDIR$/check_http -H $HOSTADDRESS$ -S
+}
+
+
+# Check a DNS entry
+define command {
+ command_name check_dig
+ command_line $PLUGINSDIR$/check_dig -H $HOSTADDRESS$ -l $ARG1$
+}
+
+# Check a FTP service
+define command {
+ command_name check_ftp
+ command_line $PLUGINSDIR$/check_ftp -H $HOSTADDRESS$
+}
+
+
+# Ask a nrpe agent
+define command {
+ command_name check_nrpe
+ command_line $PLUGINSDIR$/check_nrpe -H $HOSTADDRESS$ -t 9 -u -c $ARG1$
+}
+
+# Same but with arguments
+define command {
+ command_name check_nrpe_args
+ command_line $PLUGINSDIR$/check_nrpe -H $HOSTADDRESS$ -t 9 -u -c $ARG1$ -a $ARG2$ $ARG3$ $ARG4$ $ARG5$
+}
+
+# Simple ping command
+define command {
+ command_name check_ping
+ command_line $PLUGINSDIR$/check_ping -H $HOSTADDRESS$ -w 3000,100% -c 5000,100% -p 1
+}
+
+# Look at good ssh launch
+define command {
+ command_name check_ssh
+ command_line $PLUGINSDIR$/check_ssh -H $HOSTADDRESS$
+}
+
+# Look for good smtp connection
+define command {
+ command_name check_smtp
+ command_line $PLUGINSDIR$/check_smtp -H $HOSTADDRESS$
+}
+
+# And SMTPS too
+define command {
+ command_name check_smtps
+ command_line $PLUGINSDIR$/check_smtp -H $HOSTADDRESS$ -S
+}
+
+# Look at a SSL certificate
+define command {
+ command_name check_https_certificate
+ command_line $PLUGINSDIR$/check_http -H $HOSTADDRESS$ -C 30
+}
+
+#Look at an HP printer state
+define command{
+ command_name check_hpjd
+ command_line $PLUGINSDIR$/check_hpjd -H $HOSTADDRESS$ -C $SNMPCOMMUNITYREAD$
+}
+
+
+# Look at Oracle connection
+define command {
+ command_name check_oracle_listener
+ command_line $PLUGINSDIR$/check_oracle --tns $HOSTADDRESS$
+}
+
+# Same but for MSSQL
+# Look at http://labs.consol.de/nagios/check_mssql_health/ to get it
+# Don't forget to change $MSSQLUSER$ and $MSSQLPASSWORD$ in resources.cfg before you use this ;)
+define command {
+ command_name check_mssql_connection
+ command_line $PLUGINSDIR$/check_mssql_health --hostname $HOSTADDRESS$ --username "$MSSQLUSER$" --password "$MSSQLPASSWORD$" --mode connection-time
+}
+
+
+# Ldap query
+# Don't forget to update the macros in the resources.cfg file
+define command {
+ command_name check_ldap
+ command_line $PLUGINSDIR$/check_ldap -H $HOSTADDRESS$ -b "$LDAPBASE$" -D $DOMAINUSER$ -P "$DOMAINPASSWORD$"
+}
+
+# Now the same, but in LDAPS
+# Don't forget to update the macros in the resources.cfg
+define command {
+ command_name check_ldaps
+ command_line $PLUGINSDIR$/check_ldaps -H $HOSTADDRESS$ -b "$LDAPBASE$" -D $DOMAINUSER$ -P "$DOMAINPASSWORD$"
+}
+
+# Distant mysql check
+define command {
+ command_name check_mysql_connection
+ command_line $PLUGINSDIR$/check_mysql -H $HOSTADDRESS$ -u $MYSQLUSER$ -p $MYSQLPASSWORD$
+}
+
+
+## Now ESX and VM checks
+##ARG1 and take cpu, io, net or mem
+define command{
+ command_name check_esx_host
+ command_line $PLUGINSDIR$/check_esx3.pl -D $VCENTER$ -H $HOSTADDRESS$ -u $VCENTERLOGIN$ -p $VCENTERPASSWORD$ l $ARG1$
+}
+
+define command{
+ command_name check_esx_vm
+ command_line $PLUGINSDIR$/check_esx3.pl -D $VCENTER$ -N $HOSTALIAS$ -u $VCENTERLOGIN$ -p $VCENTERPASSWORD$ -l $ARG1$
+}
+
+
+#### Then samples which are not really useful in the real world
+
+#Pollertag is a advanced features for mix architectures. Look at the doc for it.
+define command{
+ command_name check_linux_host_alive
+ command_line $USER1$/check_tcp -H $HOSTADDRESS$ -p 22 -t 3
+ #poller_tag DMZ
+ #module_type nrpe_poller
+}
+
+#Pollertag is a advanced features for mix architectures. Look at the doc for it.
+define command{
+ command_name check_host_alive
+ command_line $USER1$/check_ping -H $HOSTADDRESS$ -w 1,50% -c 2,70% -p 1
+ #poller_tag DMZ
+ #module_type nrpe_poller
+}
+
+
+define command{
+ command_name check_windows_host_alive
+ command_line $USER1$/check_tcp -H $HOSTADDRESS$ -p 139 -t 3
+ #poller_tag DMZ
+ #module_type nrpe_poller
+}
+
+
+define command{
+ command_name check_local_disk
+ command_line $USER1$/check.sh $HOSTADDRESS$ -c $ARG1$ SERVICE $USER1$
+ #poller_tag DMZ
+ #module_type nrpe_poller
+}
+
+
+# Dummy check port command
+define command{
+ command_name check_port
+ command_line /bin/ping localhost -c 1
+ #$USER1$/check.sh $HOSTADDRESS$ -c $ARG1$
+ #poller_tag DMZ
+ #module_type nrpe_poller
+}
+
+# Dummy check for mysql, always CRITICAL
+define command{
+ command_name check_mysql
+ command_line $USER1$/check_dummy.sh 2
+}
+
+
+define command{
+ command_name check_dummy
+ command_line $USER1$/check_dummy.sh $ARG1$
+ #poller_tag DMZ
+}
+
+
+define command{
+ command_name super_event_kill_everyone
+ command_line $USER1$/check.sh $HOSTADDRESS$ -c $ARG1$ SERVICE $_HOSTDELLSUCK$
+}
+
+
+# We say Http checks are always OK
+define command{
+ command_name check_http2
+ command_line $USER1$/check_dummy.sh 1
+ #module_type nrpe_poller
+}
+
+define command{
+ command_name check-host-alive
+ command_line $USER1$/check.sh $HOSTADDRESS$ -c $ARG1$ HOST $_HOSTDELLSUCK$ $SERVICEDESC:srv-1:Service-2$ $SERVICEDESC::Service-30$ $HOSTADDRESS:$ $HOSTGROUPALIAS:linux-servers$
+ #module_type dummy_poller
+}
+
+
+define command{
+ command_name check_vm_cpu
+ command_line $USER1$/check_esx3.pl -H lulu
+}
+
+
+#### Now notification commands
+define command{
+ command_name notify-host-by-email
+ command_line /usr/bin/printf "%b" "Shinken Notification\n\nType:$NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\nDate/Time: $DATE$" | /usr/bin/mail -s "Host $HOSTSTATE$ alert for $HOSTNAME$!" $CONTACTEMAIL$
+}
+
+
+define command{
+ command_name notify-service-by-email
+ command_line /usr/bin/printf "%b" "Shinken Notification\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $DATE$ Additional Info : $SERVICEOUTPUT$" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
+}
+
+
+#### And Discovery commands
+define command{
+ command_name nmap_discovery
+ command_line $USER1$/nmap_discovery_runner.py -t $NMAPTARGETS$
+}
+
+define command{
+ command_name vmware_esx_discovery
+ command_line $USER1$/vmware_discovery_runner.py -V $VCENTER$ -u $VCENTERLOGIN$ -p $VCENTERPASSWORD$ -r "lower|nofqdn"
+}
+