# Surveillance View

When monitoring a large network that contains devices of different priorities, you may want to see how the whole system is working at a glance. Use the Surveillance View feature to do so. Using categories, you can define a matrix that lets you aggregate monitoring data.

Imagine that you have 10 servers with 10 internet connections, and 5 PCs with DSL lines. They may be categorized as follows:

Servers Internet Connections

Super important

1 of 10

0 of 10

Slightly important

0 of 10

0 of 10

Vanity

4 of 10

0 of 10

In this way, the surveillance view can provide a quick idea of where trouble might be occurring. The matrix display allows for a significantly higher aggregation of data than a simple list. The Surveillance View also shows nodes rather than services—​an important thing to keep in mind when you look at categories.

When monitoring your network, you want to know how many servers or services are experiencing issues.

Figure 1. Surveillance view displaying three categories

The following defines the visual status indicators:

• Green: No services down.

• Yellow: One service down.

• Red: More than one service down.

The surveillance view also serves as the foundation of the Horizon Dashboard.

Surveillance Views are defined in `${OPENNMS_HOME}/etc/surveillance-views.xml`.  You can use a text editor to modify `surveillance-views.xml`. Horizon re-evaluates the file every time the Surveillance View page is loaded. Changes to the file do not require you to restart Horizon. The default Surveillance View configuration is as follows: ``````<?xml version="1.0" encoding="UTF-8"?> <surveillance-view-configuration xmlns:this="http://www.opennms.org/xsd/config/surveillance-views" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opennms.org/xsd/config/surveillance-views http://www.opennms.org/xsd/config/surveillance-views.xsd" default-view="default" > <views > <view name="default" refresh-seconds="300" > <rows> <row-def label="Routers" > <category name="Routers"/> </row-def> <row-def label="Switches" > <category name="Switches" /> </row-def> <row-def label="Servers" > <category name="Servers" /> </row-def> </rows> <columns> <column-def label="PROD" > <category name="Production" /> </column-def> <column-def label="TEST" > <category name="Test" /> </column-def> <column-def label="DEV" > <category name="Development" /> </column-def> </columns> </view> </views> </surveillance-view-configuration>``````  The old `report-category` attribute is deprecated and is no longer supported. ## Custom configuration Use the Surveillance View Configurations editor to modify the Surveillance View: 1. Click the gear symbol at the top-right of the page. 2. Under Additional Tools, click Surveillance Views Configuration. The page displays an overview of configured Surveillance Views and lets you edit, remove, and preview them. You can also select a default Surveillance View by selecting the Default box beside its name. Figure 2. Surveillance view configuration page When you configure a surveillance view, you must define its title and the time (in seconds) between refreshes. You can also add and delete columns and rows, and reorder them as appropriate by clicking the Up Arrow and Down Arrow symbols. Figure 3. Surveillance view configuration page Editing row or column definitions requires you to choose a unique label and at least one Horizon category. When you are finished, click Save to persist the configuration settings. You can also click Cancel to close the dialog without saving. ## Categorizing nodes Follow the steps below to categorize a node in the Surveillance View: 1. Click Nodes in the top menu bar. 2. Click Edit beside the Surveillance Category Memberships section title. 3. Select the check box at the bottom of the screen to enable category membership controls.  Any changes made to a node that was provisioned through a requisition will be rolled back the next time the node is synchronized or manually rescanned. 4. Edit the category memberships: • Select categories from the Available Categories list and click Add >> to add them to the node. • Select categories from the Categories on Node list and click Remove << to remove them from the node. Your changes are automatically saved. ## Creating views for users and groups You can create Surveillance Views for only specific users, or only users in specific groups. For example, to create a view that only the user `drv4doe` can access, edit `${OPENNMS_HOME}/etc/surveillance-view.xml` and add a definition for the user:

``````<view name="drv4doe" refresh-seconds="300" >
<rows>
<row-def label="Servers" >
<category name="Servers"/>
</row-def>
</rows>
<columns>
<column-def label="PROD" >
<category name="Production" />
</column-def>
<column-def label="TEST" >
<category name="Test" />
</column-def>
</columns>
</view>``````

You can do the same for group names.

 You should add the definition within the `` tag, above the default view.

When the Surveillance View page loads, the first of the following criteria to be fulfilled determines the view it displays:

1. The Surveillance View name is equal to the username.

2. The Surveillance View name is equal to the user’s assigned group name.

3. The Surveillance View name is equal to the `default-view` attribute as defined in `surveillance-views.xml`.