Skip to main content

Raymii.org Logo (IEC resistor symbol)logo

Quis custodiet ipsos custodes?
Home | About | All pages | RSS Feed | Gopher

Nagios - Hide all hosts in hostgroup

Published: 30-07-2013 | Author: Remy van Elst | Text only version of this article


Table of Contents


This tutorial shows you how to hide all hosts from a hostgroup in Nagios,including the webinterface and email/sms notifications. It does however monitorsand checks all the hosts in the hostgroup, so when there are problems you canview the hosts in Nagios. This is usefull for example when you have a staging,preproduction and production environment monitored by the same Nagios host, orby a Nagios cluster, and want to hide all of staging, but do want to quicklyview the status when developers complain about a node.

If you like this article, consider sponsoring me by trying out a Digital OceanVPS. With this link you'll get $100 credit for 60 days). (referral link)

First you needble all notifications for the hostgroup of choice, in my case"staging". Navigate in the Web interface to the Hostgroup Overview, Click on thesecond hostgroup link (like: staging (staging) ) and then select "Disablenotifications for all services in this hostgroup". On the next page, select thecheckbox "Disable for hosts too" and click Commit. You could also go to thefollowing url, replacing the values for your environment: http(s)://<nagios-url.tld>/<cgi-folder>/cmd.cgi?cmd_type=64&hostgroup=<hostgroup-name>.

Now navigate to the following page, again replacing the values for yourenvironment: http(s)://<nagios-url.tld>/<cgi-folder>/status.cgi?host=all&type=detail&servicestatustypes=28&serviceprops=8202.This will open the view for the Service Status, with the properties Not InScheduled Downtime & Has Not Been Acknowledged & Notifications Enabled.There are all your notifications, but not from the "hidden" hostgroup.

You can also change the HTML files (index.html or side.html) to either changethe frame to go directly to this page, or add a link in the menu to this page.

URL Properties

You can fiddle with the Nagios URL properties, below are the values you can use,which you can also find in the Nagios Source Code, in include/cgiutils.h.

/****************** HOST AND SERVICE FILTER PROPERTIES  *******************/#define HOST_SCHEDULED_DOWNTIME         1#define HOST_NO_SCHEDULED_DOWNTIME      2#define HOST_STATE_ACKNOWLEDGED         4#define HOST_STATE_UNACKNOWLEDGED       8#define HOST_CHECKS_DISABLED            16#define HOST_CHECKS_ENABLED             32#define HOST_EVENT_HANDLER_DISABLED     64#define HOST_EVENT_HANDLER_ENABLED      128#define HOST_FLAP_DETECTION_DISABLED    256#define HOST_FLAP_DETECTION_ENABLED     512#define HOST_IS_FLAPPING                1024#define HOST_IS_NOT_FLAPPING            2048#define HOST_NOTIFICATIONS_DISABLED     4096#define HOST_NOTIFICATIONS_ENABLED      8192#define HOST_PASSIVE_CHECKS_DISABLED    16384#define HOST_PASSIVE_CHECKS_ENABLED     32768#define HOST_PASSIVE_CHECK              65536#define HOST_ACTIVE_CHECK               131072#define SERVICE_SCHEDULED_DOWNTIME      1#define SERVICE_NO_SCHEDULED_DOWNTIME   2#define SERVICE_STATE_ACKNOWLEDGED      4#define SERVICE_STATE_UNACKNOWLEDGED    8#define SERVICE_CHECKS_DISABLED         16#define SERVICE_CHECKS_ENABLED          32#define SERVICE_EVENT_HANDLER_DISABLED  64#define SERVICE_EVENT_HANDLER_ENABLED   128#define SERVICE_FLAP_DETECTION_ENABLED  256#define SERVICE_FLAP_DETECTION_DISABLED 512#define SERVICE_IS_FLAPPING             1024#define SERVICE_IS_NOT_FLAPPING         2048#define SERVICE_NOTIFICATIONS_DISABLED  4096#define SERVICE_NOTIFICATIONS_ENABLED   8192#define SERVICE_PASSIVE_CHECKS_DISABLED 16384#define SERVICE_PASSIVE_CHECKS_ENABLED  32768#define SERVICE_PASSIVE_CHECK           65536#define SERVICE_ACTIVE_CHECK            131072

In our example above we added the 8192 with 8 and 2 to get 8202, so we haveselected SERVICE_NOTIFICATIONS_ENABLED, SERVICE_STATE_UNACKNOWLEDGED andSERVICE_NO_SCHEDULED_DOWNTIME.

Tags: dtap, monitoring, nagios, staging, tutorials