NerveCenterTM: Integration with
Micromuse Netcool/OMNIbus
-
Contents - Netcool/OMNIbus Configuration Settings -
This section explains which Netcool/OMNIbus components are configured to integrate with NerveCenter and what should be configured for each component.
Netcool/OMNIbus configuration involves specifying the type of information you want processed when Netcool receives a NerveCenter inform. You can also specify how the Netcool/OMNIbus Object Server should classify and distribute alerts and any automated actions to be performed.
The $OMNIHOME directory mentioned in this section is the directory where Netcool/OMNIbus is installed. For example, the default $OMNIHOME directory for Solaris 2.x and HP-UX 10.x is /opt/Omnibus.
Complete procedures for entering these settings are included in the guides that are shipped with Netcool/OMNIbus. The Micromuse documentation also includes information about the rights and privileges required for access.
After installing Netcool/OMNIbus, you create an interfaces file that specifies the server name, host name, and port for the Object Server, the proxy server, the gateway if installed, and the process control. Without this file, neither the probe nor any other component can communicate with the Object Server.
Any changes to your configuration are made to this file using the Servers Editor (run $OMNIHOME/bin/nco_xigen).
The NerveCenter probe transfers data between the NerveCenter Universal Platform Adapter and the Netcool/OMNIbus Object Server. A probe has two associated files that determine the probe's behavior:
Both files are stored in the $OMNIHOME/probes/platform directory. As with the probe, both files are written in a Micromuse proprietary scripting language.
You can design *.props and *.rules files of your own and command the probe to use those files when you start the probe. Refer to the Netcool/OMNIbus Probe and Gateway Reference manual for more information about probes. After making changes to these files, you must stop and restart the probe before it can recognize the changes you made.
The properties file contains default settings for the NerveCenter probe. You can change the properties using the Properties Editor ($OMNIHOME/bin/nco_xprops). If preferred, you can run the Properties Editor when the Object Server is not running.
Say you wanted to raise the severity level of messages logged from the NerveCenter probe. Messages are logged based on the message and a logging level. There are five message levels:
To change the minimum severity level of messages that are logged, you could change the message level value from "Warn" to "Error".
The following illustration shows the nervecenter.props values in the Properties Editor.
If all the properties are not listed in the Properties Editor, you can open the nervecenter.props file directly using your text editor. In the text editor, you must uncomment a line before any changes you make to the line take effect.
You can set or override some probe property settings from the command line when you start the probe. This is described in the Netcool documentation.
The nervecenter.rules file defines the precise set of information relayed to the Object Server. You can modify the rules file to specify how the probe maps NerveCenter events to Netcool/OMNIbus alerts. Prior to reading the file, the probe maps the message's attributes to the fields of an event and creates a list of all attributes and values for insertion into the Object Server's status table. The rules allow you to supersede and change this preformed alert.
The rules file uses tokens to indicate variables, such as the node that caused the message to be sent. A token is identified by the $ symbol. The @ symbol identifies field values that are transferred to the alerts table in the Object Server database. You can define your own tokens and fields in the rules file.
The default rules file is divided into two main sections, each section is part of an if .. else statement. In the first section, the probe generates its own ProbeWatch events to monitor the status of the probe and display messages contingent with the particular case.
The following sample shows this section:
if( match( @Manager, "ProbeWatch" ) )
{
switch(@Summary)
{
case "Running ...":
@AlertGroup = "probestat"
@Type = 2
case "Going Down ...":
@AlertGroup = "probestat"
@Type = 1
default:
}
@AlertKey = @Agent
@Summary = @Agent + " probe on " + @Node + ": " + @Summary
}
The second section of the rules file manages the information transmitted when a connection is established or rejected, when the connection is terminated, and when an inform message is received from NerveCenter.
The following sample shows default statements that determine what appears in the Event List when NerveCenter sends an inform:
case "Inform Netcool":
@Identifier = $MessageType + $ServerID + $NodeName + $IPAddr + $OSN
+ $OSS + $DSN + $DSS + $TrapGN + $TrapSN + $TrapEID
@Node = $NodeName
@NodeAlias = $IPAddr
@Summary = "See details"
@Severity = 2
The Identifier field maps to the data sent by NerveCenter for each inform and uniquely identifies the inform event. The Identifier field also enables the elimination of duplicate alerts. If the Netcool Object Server receives two informs with the exact same identifier values, only the first inform is forwarded to the Event List. Netcool processes the duplicate inform but does not display it as a separate event instance.
You can customize the rules file supplied by Micromuse to optimize your own network management strategy. The Netcool/OMNIbus Probe and Gateway Reference manual describes a host of statements and functions that help you manage network data sent to the Object Server and relayed to the Event List. To modify inform data, you would first define any tokens and fields you need and then add the statements and functions to the code residing within the Inform Netcool case.
For example, you can filter unnecessary events using the Netcool Discard function. When used prudently, this function is an effective way to prevent an inform from being sent to the Object Server. Other functions enable you to recover discarded alarms, compare variables with strings, extract portions of strings or fields, perform mathematical operations, and insert information into an event using a table format consisting of keys and values.
You may want to make the following changes to the Inform Netcool section of the rules file:
This line of code passes to the Object Server a set of variables ($*) and their values for each inform. These variables are then displayed in the Alert Details portion of an alert in the Event List. While this information is useful for the development and debug of a rules file, the extra data can overload the Object Server once you start processing large numbers of events. (Commenting this line has no affect on the @ field values sent to the Object Server.)
or, to filter or group alerts by the specific inform number you provided when creating the inform action in NerveCenter, you could enter the following:
When changing the @Identifier field values, it's important to make sure the identifier is specific enough to filter unwanted duplicate alerts without overloading network traffic. For example, adding more variables to the identifier code above (see Message Code) would lessen the probability of exact duplicates, resulting in fewer deletions. This change, however, would also generate more messages managed by the Object Server. This may overload the Object Server with events relating to conditions that may in fact be redundant.
On the other hand, an identifier that doesn't contain enough fields might filter out important, non-duplicated events.
For example, say you were to change the identifier definition to the following:
@Identifier = $MessageType + $ServerID + $NodeName+ $IPAddr
The above code excludes the variables that identify origin or destination state for informs. As a result, the Object Server sends an alert to the Event List upon receipt of an alarm instance for a managed node . The Object Server does not, however, forward alerts for subsequent transitions of the same alarm instance to different destination states. The subsequent informs have data identical to the first instance and are therefore filtered out.
For a list and description of all the variables that are sent with NerveCenter informs, see Inform Messages. Sample Rules File contains a sample rules file you can use as a reference.
For other ways to configure the rules file, refer to the Netcool/OMNIbus Probe and Gateway Reference manual.
When you start the Netcool/OMNIbus desktop tools, the Conductor is the first window you see. From the Conductor, you can access tools that filter events, customize how the events are displayed in the Event List, associate informs with a particular class, automate commands and actions for informs, and generate service-level views for specified geographical regions.
From the Conductor, you can customize the Event List, create filters, configure classes, and automate actions for incoming NerveCenter alerts.
The following sections describe the different ways you may want to customize your desktop for NerveCenter events. Refer to the Netcool/OMNIbus Administration Guide for complete information about these and any other settings.
You may want to create a new event list or modify an existing list to display only informs received from NerveCenter. Creating or modifying a list involves creating a new filter that displays certain types of alerts -- in this case, informs sent from NerveCenter. Filters limit the information that you receive on your desktop.
The Filter Builder enables you to filter incoming alerts according to the values defined for your informs. Filter Buildershows the Filter Builder used to create filters.
By stringing together logical OR or AND conditions, you can generate filters based on different combinations of Event List fields.
Use the View Builder to customize the columns displayed in the Event List, change the column headers, and organize events by a defined sorting order.
To customize the fields, you choose from the available fields the ones you want displayed in the list. You can include fields, for example AlertKey, that you defined at the probe level in the nervecenter.rules file.
View Builder shows sample settings in the View Builder. The settings displayed here add the AlertKey field to the Event List and sort by this field, with a secondary sort on the node name.
The results of these view settings are shown in Configured and Sorted Event List in the Event List:
Configured and Sorted Event List
You can tag NerveCenter events with a class value, which is assigned in the nervecenter.rules file. Once you have associated NerveCenter alerts with a specific class, you can create and associate custom menus with the NerveCenter class of alerts. This allows you to automate actions or commands for these events. For menus associated with alerts, the menu options can include commands that reference fields in the alert.
For example, to define a class for NerveCenter events, you would first enter in the nervecenter.rules file the class value, such as $Class = number, where number is an arbitrary numerical value that you assign. For this example, we'll use the number 7500. Afterward, from the Configuration Manager, you define a conversion for the class and then define the class itself and link it with a menu.
Defining a Conversion and a Class shows the dialogs used to define a conversion and a class.
Defining a Conversion and a Class
After defining a class, you can create a menu specifically for that class. If there's a particular action, such as a ping that may need to be performed for NerveCenter alerts, you can define the action as a menu item.
Associating Menu Items with the Class shows the Menus dialog box used to define menu items for a class.
Associating Menu Items with the Class
When administrators receive NerveCenter informs tagged with the class you create, they can select the menu items defined for the class from the Tools menu of any window in which alerts are displayed.
The Automation Builder allows you to automate actions or commands for certain types of events. For example, you can notify an administrator of critical events after a specific period of time has elapsed. You do this by creating triggers to detect particular states, for example, an alert severity value of 4, and actions that define the responses to those states. The triggers and states are stored in the Object Server and are created using Object Server SQL.
Automation Builder shows the Automation Builder dialog box used to create and associate actions. You can customize the predefined actions listed in the box or create new actions.
NerveCenter also provides automated actions that can be performed when an alarm transitions. Besides the inform action described in this paper, NerveCenter has 21 other actions designed for notification, logging data, or correcting a condition.
With the Objective View Map Editor, you can map services and devices to geographical regions. This gives you a service-level view of managed objects.
The Objective View displays map books, each containing a number of map pages with graphical objects called symbols. Each page of a book might include symbols representing management sites for a different region of a country or sites in different countries. From these symbols, you can display the status of your services and devices for the region or country.
When creating map pages, layers make it easy to create background-layer images, second-layer annotations, and object-layer editable symbols that can be dynamically manipulated to show status and associations.
Map Page Symbol Associated with a Class and an Action shows a page containing a U.S. map in the background layer and a symbol in the object layer. This particular symbol was associated with the NerveCenter class in the Classes dialog box. Double-clicking the symbol displays a dialog in which you can edit the appearance of the symbol and define associations.
Map Page Symbol Associated with a Class and an Action
The action that you associate with a symbol determines what happens when you or someone else double-clicks the icon in the Objective View map. For example, if you select the Show List option, double-clicking the icon in the Objective View starts the Event List with the filter and view of the associated entity.
The class you associate with a symbol determines the appropriate Tools menu for the symbol when viewed in the Objective View.
NerveCenter Configuration Settings | Inform Messages |
29 July 2003 |