Keywords: Supervision, Icinga, Nagios, Linux

Icinga Classic UI: Information On The CGIs
Prev | Chapter 6. User Interfaces | Next

## Icinga Classic UI: Information On The CGIs

Introduction of the Icinga Classic UI

The various CGIs distributed with Icinga core are described here, along with the authorization requirements for accessing and using each CGI. By default the CGIs require that you have authenticated to the web server and are authorized to view any information you are requesting. More information on configuring authorization can be found here.

The CGIs may be controlled using several parameters. More information can be found here.

Index

Status CGI

Status map CGI

WAP interface CGI

Tactical overview CGI

Network outages CGI

Configuration CGI

Command CGI

Extended information CGI

Event log CGI

Alert history CGI

Notifications CGI

Trends CGI

Availability reporting CGI

Alert histogram CGI

Alert summary CGI

Changes in the Classic UI

Status CGI

File Name: | status.cgi

Description:

This is the most important CGI included with Icinga. It allows you to view the current status of all hosts and services that are being monitored. The status CGI can produce two main types of output - a status overview of all host groups (or a particular host group) and a detailed view of all services (or those associated with a particular host).

Authorization Requirements:

- If you are authorized for all hosts you can view all hosts and all services.

- If you are authorized for all services you can view all services.

- If you are an authenticated contact you can view all hosts and services for which you are a contact.

Status Map CGI

File Name: | statusmap.cgi

Description:

This CGI creates a map of all hosts that you have defined on your network. The CGI uses Thomas Boutell's gd library (version 1.6.3 or higher) to create a PNG image of your network layout. The coordinates used when drawing each host (along with the optional pretty icons) are taken from host definitions. If you'd prefer to let the CGI automatically generate drawing coordinates for you, use the default_statusmap_layout directive to specify a layout algorithm that should be used.

Authorization Requirements:

- If you are authorized for all hosts you can view all hosts.

- If you are an authenticated contact you can view hosts for which you are a contact.

| Note
Users who are not authorized to view specific hosts will see unknown nodes in those positions. I realize that they really shouldn't see anything there, but it doesn't make sense to even generate the map if you can't see all the host dependencies...

WAP Interface CGI

File Name: | statuswml.cgi

Description:

This CGI serves as a WAP interface to network status information. If you have a WAP-enabled device (i.e. an Internet-ready cellphone), you can view status information while you're on the go. Different status views include hostgroup summary, hostgroup overview, host detail, service detail, all problems, and unhandled problems. In addition to viewing status information, you can also disable notifications and checks and acknowledge problems from your cellphone. Pretty cool, huh?

Authorization Requirements:

- If you are authorized for system information you can view Icinga process information.

- If you are authorized for all hosts you can view status data for all hosts and services.

- If you are authorized for all services you can view status data for all services.

- If you are an authenticated contact you can view status data for all hosts and services for which you are a contact.

Tactical Overview CGI

File Name: | tac.cgi

Description:

This CGI is designed to server as a "birds-eye view" of all network monitoring activity. It allows you to quickly see network outages, host status, and service status. It distinguishes between problems that have been "handled" in some way (i.e. been acknowledged, had notifications disabled, etc.) and those which have not been handled, and thus need attention. Very useful if you've got a lot of hosts/services you're monitoring and you need to keep a single screen up to alert you of problems.

Authorization Requirements:

- If you are authorized for all hosts you can view all hosts and all services.

- If you are authorized for all services you can view all services.

- If you are an authenticated contact you can view all hosts and services for which you are a contact.

Network Outages CGI

File Name: | outages.cgi

Description:

This CGI will produce a listing of "problem" hosts on your network that are causing network outages. This can be particularly useful if you have a large network and want to quickly identify the source of the problem. Hosts are sorted based on the severity of the outage they are causing.

Authorization Requirements:

- If you are authorized for all hosts you can view all hosts.

- If you are an authenticated contact you can view hosts for which you are a contact.

Configuration CGI

File Name: | config.cgi

Description:

This CGI allows you to view objects (i.e. hosts, host groups, contacts, contact groups, time periods, services, etc.) that you have defined in your object configuration file(s).

Authorization Requirements:

- You must be authorized for configuration information in order to any kind of configuration information.

Command CGI

File Name: | cmd.cgi

Description:

This CGI allows you to send commands to the Icinga process. Although this CGI has several arguments, you would be better to leave them alone. Most will change between different revisions of Icinga. Use the extended information CGI as a starting point for issuing commands.

Authorization Requirements:

- You must be authorized for system commands in order to issue commands that affect the Icinga process (restarts, shutdowns, mode changes, etc.).

- If you are authorized for all host commands you can issue commands for all hosts and services.

- If you are authorized for all service commands you can issue commands for all services.

- If you are an authenticated contact you can issue commands for all hosts and services for which you are a contact.

| Note
If you have chosen not to use authentication with the CGIs, this CGI will not allow anyone to issue commands to Icinga. This is done for your own protection. We would suggest removing this CGI altogether if you decide not to use authentication with the CGIs.

Extended Information CGI

File Name: | extinfo.cgi

Description:

This CGI allows you to view Icinga process information, host and service state statistics, host and service comments, and more. It also serves as a launching point for sending commands to Icinga via the command CGI. Although this CGI has several arguments, you would be better to leave them alone - they are likely to change between different releases of Icinga. You can access this CGI by clicking on the 'Network Health' and 'Process Information' links on the side navigation bar, or by clicking on a host or service link in the output of the status CGI.

Authorization Requirements:

- You must be authorized for system information in order to view Icinga process information.

- If you are authorized for all hosts you can view extended information for all hosts and services.

- If you are authorized for all services you can view extended information for all services.

- If you are an authenticated contact you can view extended information for all hosts and services for which you are a contact.

Event Log CGI

File Name: | showlog.cgi

Description:

This CGI will display the log file. If you have log rotation enabled, you can browse notifications present in archived log files by using the navigational links near the top of the page.

Authorization Requirements:

- You must be authorized for system information in order to view the log file.

Alert History CGI

File Name: | history.cgi

Description:

This CGI is used to display the history of problems with either a particular host or all hosts. The output is basically a subset of the information that is displayed by the log file CGI. You have the ability to filter the output to display only the specific types of problems you wish to see (i.e. hard and/or soft alerts, various types of service and host alerts, all types of alerts, etc.). If you have log rotation enabled, you can browse history information present in archived log files by using the navigational links near the top of the page.

Authorization Requirements:

- If you are authorized for all hosts you can view history information for all hosts and all services.

- If you are authorized for all services you can view history information for all services.

- If you are an authenticated contact you can view history information for all services and hosts for which you are a contact.

Notifications CGI

File Name: | notifications.cgi

Description:

This CGI is used to display host and service notifications that have been sent to various contacts. The output is basically a subset of the information that is displayed by the log file CGI. You have the ability to filter the output to display only the specific types of notifications you wish to see (i.e. service notifications, host notifications, notifications sent to specific contacts, etc). If you have log rotation enabled, you can browse notifications present in archived log files by using the navigational links near the top of the page.

Authorization Requirements:

- If you are authorized for all hosts you can view notifications for all hosts and all services.

- If you are authorized for all services you can view notifications for all services.

- If you are an authenticated contact you can view notifications for all services and hosts for which you are a contact.

Trends CGI

File Name: | trends.cgi

Description:

This CGI is used to create a graph of host or service states over an arbitrary period of time. In order for this CGI to be of much use, you should enable log rotation and keep archived logs in the path specified by the log_archive_path directive. The CGI uses Thomas Boutell's gd library (version 1.6.3 or higher) to create the trends image.

Authorization Requirements:

- If you are authorized for all hosts you can view trends for all hosts and all services.

- If you are authorized for all services you can view trends for all services.

- If you are an authenticated contact you can view trends for all services and hosts for which you are a contact.

Availability Reporting CGI

File Name: | avail.cgi

Description:

This CGI is used to report on the availability of hosts and services over a user-specified period of time. In order for this CGI to be of much use, you should enable log rotation and keep archived logs in the path specified by the log_archive_path directive.

Authorization Requirements:

- If you are authorized for all hosts you can view availability data for all hosts and all services.

- If you are authorized for all services you can view availability data for all services.

- If you are an authenticated contact you can view availability data for all services and hosts for which you are a contact.

Alert Histogram CGI

File Name: | histogram.cgi

Description:

This CGI is used to report on the availability of hosts and services over a user-specified period of time. In order for this CGI to be of much use, you should enable log rotation and keep archived logs in the path specified by the log_archive_path directive. The CGI uses Thomas Boutell's gd library (version 1.6.3 or higher) to create the histogram image.

Authorization Requirements:

- If you are authorized for all hosts you can view histograms for all hosts and all services.

- If you are authorized for all services you can view histograms for all services.

- If you are an authenticated contact you can view histograms for all services and hosts for which you are a contact.

Alert Summary CGI

File Name: | summary.cgi

Description:

This CGI provides some generic reports about host and service alert data, including alert totals, top alert producers, etc.

Authorization Requirements:

- If you are authorized for all hosts you can view summary information for all hosts and all services.

- If you are authorized for all services you can view summary information for all services.

- If you are an authenticated contact you can view summary information for all services and hosts for which you are a contact.

Changes in the Classic UI

These changes appeared over time so they might not be available in your version of Icinga.

- The appearance of the "General" section on the left side of the screen has changed once more

  General CGI

  File Name: | general.cgi

  Clicking on the appropriate flag you are still able to access the documentation in the specified language.

  | Note
  There is no option to change the language of the CGIs. This requires changes in the source code.

  Now you can search again for hosts without clicking on several items.

- The classical interface refreshes in regular intervals. Sometimes this might be undesirable, i.e. when you are looking at a specific object. In this case you can turn of the automatic refresh clicking on [pause] next to "Updated every 90 seconds" in the upper left of the status frame. Clicking on [continue] restarts the refresh.

  Pause CGI

  File Name: | pause.cgi

  Continue CGI

  File Name: | continue.cgi

- The "Host Detail" and "Service Detail" pages were enhanced to submit commands for more than one object (starting with Icinga 1.2). Now you can select one or more objects using the check boxes next to the objects. Activating the check box next to "Status information" selects all services for that host.

  Statusinfo CGI

  File Name: | statusinfo.cgi

  Commands CGI

  File Name: | commands.cgi

  Clicking on "Select command" shows a drop down list of available commands. After selecting an action you can press "Submit" to submit the command for the selected objects.

- "Export to CSV" has been added to several pages (starting with Icinga 1.2).

- The cells of the extinfo.cgi table have been given names. Using SSI fragments you can include JavaScript code to access the data of these cells (starting with Icinga 1.2.1).

  Example code has been provided to use data from the cell "comment_data" to create a link (Thanks to Oliver Graf).

  common-header.ssi:

      <script type='text/javascript'>
      function urlify() {
          var comments=document.getElementsByName('comment_data');
          var neu="";
          for (i=0; i<=comments.length; i++) {
              comments[i].innerHTML = comments[i].innerHTML.replace(/\bRT#(\d+)\b/g,"<a href='https://YOUR-SERVER/Ticket/Display.html?id=$1'>RT#$1</a>");
          }
      }
      window.onload=urlify;
      </script>

Prev | Up | Next
Chapter 6. User Interfaces | Home | Information On CGI parameters

© 2009-2011 Icinga Development Team, http://www.icinga.org