Itnm Admin Guide
Itnm Admin Guide
4.2
Administration Guide
IBM
2021-4213-01
Note
Before using this information and the product it supports, read the information in “Notices” on page
649.
This edition applies to version 4.2 of IBM Tivoli Network Manager IP Edition (product number 5724-S45) and to all
subsequent releases and modifications until otherwise indicated in new editions.
© Copyright International Business Machines Corporation 2006, 2021.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with
IBM Corp.
Contents
Part 1. Administering.............................................................................................1
iii
Chapter 4. Administering ports................................................................................................................. 39
About inter-process communication................................................................................................... 39
About Really Small Message Broker...............................................................................................39
About multicast...............................................................................................................................40
Changing host and port settings for Really Small Message Broker.................................................... 40
Updating the Really Small Message Broker configuration file.......................................................40
Stopping Really Small Message Broker..........................................................................................41
Running a separate message broker for each domain........................................................................ 41
Checking port usage.............................................................................................................................41
Defining a fixed TCP port......................................................................................................................42
Defining a fixed multicast address.......................................................................................................42
List of ports used by the product......................................................................................................... 43
ServiceData configuration file.............................................................................................................. 44
iv
Chapter 9. Administering reports.............................................................................................................. 75
Creating and editing reports................................................................................................................ 75
Creating a URL to run reports...............................................................................................................75
Changing the data source isolation level............................................................................................. 76
v
Using the GUI................................................................................................................................182
Using the command-line interface...............................................................................................205
Configuring backups of the ncp_store cache.................................................................................... 244
Configuring specialized discoveries...................................................................................................244
Configuring a context-sensitive discovery................................................................................... 245
Configuring EMS discoveries........................................................................................................ 245
Configuring MPLS discoveries...................................................................................................... 325
Configuring NAT discoveries.........................................................................................................336
Configuring cross-domain discoveries.........................................................................................348
Configuring geographical discoveries.......................................................................................... 357
Configuring IP SLA discoveries.................................................................................................... 365
vi
Developing agents or collectors to retrieve custom data............................................................420
Using custom tag tables............................................................................................................... 420
Storing custom data as name-value pairs......................................................................................... 426
Importing name-value pairs into the DNCIM discovery database..............................................427
Preserving custom name-value pairs between discoveries........................................................428
Storing custom data in new database tables.................................................................................... 428
Creating new NCIM database tables............................................................................................429
Updating dNCIM to store custom data........................................................................................ 430
Mapping retrieved data to DNCIM custom data tables............................................................... 431
Using custom data to enrich events.................................................................................................. 433
Visualizing custom data in the Structure Browser...........................................................................434
Using custom data in polling..............................................................................................................435
Visualizing custom data in the topology views..................................................................................435
vii
Example generic threshold expression........................................................................................492
viii
Disco plug-in................................................................................................................................. 594
Failover plug-in............................................................................................................................. 596
PostNCIMProcessing plug-in........................................................................................................597
SAE Aggregated Link plug-in........................................................................................................ 598
SAE IP Path plug-in...................................................................................................................... 598
SAE ITNM Service plug-in............................................................................................................ 599
SAE MPLS VPN plug-in................................................................................................................. 599
zNetView plug-in...........................................................................................................................600
Chapter 31. Using the OQL service provider to log into the Event Gateway databases ....................... 609
Querying the ObjectServer.................................................................................................................609
Querying the NCIM database.............................................................................................................609
Notices..............................................................................................................649
Trademarks.............................................................................................................................................. 650
ix
x
About this publication
The IBM Tivoli Network Manager IP Edition Administration Guide describes administration tasks such as
how to start and stop the product, discover the network, poll the network, manage events, administer
processes, and query databases. This publication is for administrators who are responsible for the
maintenance and availability of Network Manager.
Publications
This section lists publications in the Network Manager library and related documents. The section also
describes how to access IBM publications online and how to order publications.
Prerequisite publications
To use the information in this publication effectively, you must have some prerequisite knowledge, which
you can obtain from the following publications:
• IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide
Includes installation and upgrade procedures and describes how to configure security and component
communications. The publication also includes examples of Tivoli Netcool/OMNIbus architectures and
describes how to implement them.
• IBM Tivoli Netcool/OMNIbus User's Guide
Provides an overview of the desktop tools and describes the operator tasks related to event
management using these tools.
• IBM Tivoli Netcool/OMNIbus Administration Guide
Describes how to perform administrative tasks using the Tivoli Netcool/OMNIbus Administrator GUI,
command-line tools, and process control. The publication also contains descriptions and examples of
ObjectServer SQL syntax and automations.
• IBM Tivoli Netcool/OMNIbus Probe and Gateway Guide
Contains introductory and reference information about probes and gateways, including probe rules file
syntax and gateway commands.
• IBM Tivoli Netcool/OMNIbus Web GUI Administration and User's Guide
Describes how to perform administrative and event visualization tasks using the Tivoli Netcool/
OMNIbus Web GUI.
Ordering publications
You can order many IBM publications online at the following Web site:
http://www.ibm.com/e-business/linkweb/publications/servlet/pbi.wss
You can also order by telephone by calling one of these numbers:
• In the United States: 800-879-2755
• In Canada: 800-426-4968
In other countries, contact your software account representative to order IBM publications. To locate the
telephone number of your local representative, perform the following steps:
1. Go to the following Web site:
http://www.ibm.com/e-business/linkweb/publications/servlet/pbi.wss
2. Select your country from the list and click Go. The Welcome to the IBM Publications Center page is
displayed for your country.
3. On the left side of the page, click About this site to see an information page that includes the
telephone number of your local representative.
Accessibility
Accessibility features help users with a physical disability, such as restricted mobility or limited vision, to
use software products successfully.
Accessibility features
Network Manager includes the following major accessibility features:
• Operations that use a screen reader.
Network Manager uses IBM Installation Manager to install the product. You can read about the
accessibility features for IBM Installation Manager at https://www.ibm.com/support/knowledgecenter/
SSDV2W/im_family_welcome.html.
Network Manager uses the latest W3C Standard, http://www.w3.org/TR/wai-aria/, to ensure compliance
to http://www.access-board.gov/guidelines-and-standards/communications-and-it/about-the-
section-508-standards/section-508-standards), and http://www.w3.org/TR/WCAG20/. To take advantage
of accessibility features, use the latest release of your screen reader in combination with the latest web
browser that is supported by this product.
Keyboard navigation
This product uses standard navigation keys.
Interface information
Network Manager provides the following features suitable for low vision users:
• All non-text content used in the GUI has associated alternative text.
• Low-vision users can adjust the system display settings, including high contrast mode, and can control
the font sizes using the browser settings.
• Color is not used as the only visual means of conveying information, indicating an action, prompting a
response, or distinguishing a visual element.
Network Manager provides the following features suitable for photosensitive epileptic users:
• The Network Manager user interfaces do not have content that flashes more than two times in any one
second period.
The Network Manager web user interface includes WAI-ARIA navigational landmarks that you can use to
quickly navigate to functional areas in the application.
TTY service
800-IBM-3383 (800-426-3383)
(within North America)
IBM Support
If you have a problem with your IBM software, you want to resolve it quickly. IBM provides the following
ways for you to obtain the support you need:
Online
Go to the IBM Software Support site at https://www.ibm.com/support/home/ and follow the
instructions.
IBM Support Assistant
The IBM Support Assistant (ISA) is a free local software serviceability workbench that helps you
resolve questions and problems with IBM software products. The ISA provides quick access to
support-related information and serviceability tools for problem determination. To install the ISA
software, go to https://www.ibm.com/support/knowledgecenter/SSLLVC/welcome/isa_welcome.html
Procedure
• Run the appropriate environment script:
On the server where the Network Manager core components are installed, the environment script is
installation_directory/netcool/core/env.sh.
For example, on Bash, Bourne, and Korn shells, source the env.sh script using a command similar to
the following:
. /opt/IBM/netcool/core/env.sh
. /opt/IBM/netcool/nmgui_profile.sh
What to do next
After you have set the environment variables, start Network Manager and make sure it is running
correctly.
Related tasks
Starting Network Manager
You can start Network Manager using the methods outlined here. From Network Manager V4.2 and above,
you must start Tivoli Netcool/OMNIbus separately, using the Tivoli Netcool/OMNIbus commands.
Procedure
1. If you have not set up the UNIX environment, change to the $NCHOME/precision/bin directory.
2. Type the following command: itnm_start -domain NCOMS.
This command starts all of the Network Manager components that are installed on the server in the
example domain NCOMS.
Related tasks
Setting environment variables
Procedure
Type the following command:
where DOMAIN is the domain in which you want to start the core components.
Procedure
1. Change to the $NCHOME/precision/bin directory.
2. Type the following command: itnm_stop -domain NCOMS
This command stops all of the Network Manager components that are installed on the server in the
example domain NCOMS.
Procedure
1. Select the console window where the ncp_ctrl process is running.
2. Press Ctrl+C.
Results
The ncp_ctrl process stops, and also stops all its managed processes.
Procedure
1. On the relevant Dashboard Application Services Hub, open a command window.
2. Change to the $JazzSM_HOME/profile/bin directory.
3. Stop the server by using the following command:
stopServer.sh server1
Note: You are prompted to supply the user name and password of the administrative user.
4. Wait a moment for the server to completely shut down and, confirm that all Java™ processes stopped
running.
The following messages confirm that the server is shut down:
ncp_brokerd Really Small Message Broker Message broker daemon that launches the Really
daemon Small Message Broker. Communication between
Network Manager core components is managed by
Really Small Message Broker. ncp_brokerd starts
automatically when any Network Manager process
starts.
ncp_class Active Object Class manager, Dynamic library management system responsible
CLASS for managing the Active Object Classes (AOCs). It
is the only component that has direct contact with
the AOC definitions, and it distributes these
definitions to any component that needs them.
You can edit AOCs using a text editor. Restart the
ncp_class process after changing AOC files. After
ncp_class is restarted and running, restart the
ncp_model process.
Note: Ensure that you make a backup of any
original AOCs before you edit them. If you
overwrite the original copy, the backup copy can be
restored.
ncp_config Network Manager GUI Configuration file server that provides a means for
configuration file server, Network Manager GUIs to read from and write to
CONFIG schema files.
ncp_ctrl Master process controller, Master process controller that launches all the
CTRL Network Manager processes in the appropriate
order, in line with configured process
dependencies. You can also use the ncp_ctrl
process to start individual Network Manager
processes.
ncp_mib MIB update administration Use the MIB update administration utility to
utility update your MIB data for use within the SNMP MIB
Browser.
ncp_model Topology manager Stores the topology data following a discovery and
sends the topology data to the topology database
(NCIM), where it can be queried using SQL. The
topology visualization GUIs retrieve topology data
from NCIM to display to network operators.
nco_p_ncpmonitor Probe for Tivoli Netcool/ Enables events generated by the Network Manager
OMNIbus polling to be sent to the Tivoli Netcool/OMNIbus
ObjectServer. The nco_p_ncpmonitor process
converts these events into ObjectServer format.
ncp_trapmux SNMP trap multiplexer In most networks, traps arrive on a single default
port. The SNMP trap multiplexer resolves this
problem by listening to a single port and
forwarding all the traps it receives to a set of host/
socket pairs.
Procedure
1. Change to the $NCHOME/precision/bin directory.
2. Type the following command: itnm_status
This command displays the status of all of the Network Manager components that are installed on the
server.
Related tasks
Setting environment variables
Before starting any components or working with any configuration files, set the appropriate environment
variables by running the environment scripts.
Procedure
1. Add an Event Viewer widget to a dashboard.
2. Apply a filter to the Event Viewer so that only events with an Alert Group of ITNM Status are
displayed.
Procedure
1. Log in to the Ctrl service using either the OQL Service Provider or the Management Database Access
page:
• Start the OQL Service Provider by typing a command similar to the following:
where NCOMS is the domain name. If authentication has been configured for the OQL Service
Provider, enter your username and password.
• Log in to the Management Database Access page and select the Ctrl service.
2. Issue the following command:
Note:
It can take a few minutes for some processes to fully start up after ncp_ctrl has started them. While a
process is starting up, it is not returned by this query.
Example
The following example output shows that 12 processes were started by the ncp_ctrl process and are
currently running:
...........
{
binaryName='ncp_store';
domainName='SCO099';
processId=12129;
serviceName='ncp_store';
}
{
binaryName='ncp_class';
domainName='SCO099';
processId=12130;
serviceName='ncp_class';
}
{
binaryName='ncp_model';
domainName='SCO099';
processId=12384;
serviceName='ncp_model';
}
{
Procedure
1. Log in to the Ctrl service using either the OQL Service Provider or the Management Database Access
page:
• Start the OQL Service Provider by typing a command similar to the following:
where NCOMS and admin are your domain name and username.
Example
The following example output shows processes configured to be started by the ncp_ctrl process:
{
serviceName='ncp_disco';
binaryName='ncp_disco';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin';
domainName='NCOMS';
argList=['-domain','$PRECISION_DOMAIN','-discoOnStartup',
'0','-latency','100000','-debug','0','-messagelevel',
'warn'];
dependsOn=['ncp_d_helpserv','ncp_model'];
retryCount=5;
serviceId=4;
traceLevel=0;
logLevel='warn';
serviceKey='ncp_disco_NCOMS';
serviceState=4;
interval=10;
processId=2622;
}
.....
.....
{
serviceName='ncp_model';
binaryName='ncp_model';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin';
domainName='NCOMS';
argList=['-domain','$PRECISION_DOMAIN','-latency','100000',
'-debug','0','-messagelevel','warn'];
dependsOn=['ncp_config','ncp_store','ncp_class'];
retryCount=5;
serviceId=3;
traceLevel=0;
logLevel='warn';
serviceKey='ncp_model_NCOMS';
serviceState=4;
interval=10;
processId=2542;
}
Procedure
1. Log in to the Ctrl service using either the OQL Service Provider or the OQL Workbench:
• Start the OQL Service Provider by typing a command similar to the following:
b) Issue the following command to list all only dependent unmanaged processes:
Example
The following example output shows unmanaged processes have been started by the ncp_ctrl process:
{
serviceName='ncp_df_ping';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
dependency=19803;
argList=['-domain','LNX39024','-server','ncp_disco.2622'];
binaryName='ncp_df_ping';
serviceId=14;
logLevel='warn';
traceLevel=0;
domainName='NCOMS';
processId=19869;
}
{
serviceName='ncp_df_collector';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
dependency=19803;
argList=['-domain','COLT45','-server','ncp_disco.19803'];
binaryName='ncp_df_collector';
serviceId=13;
logLevel='warn';
traceLevel=0;
domainName='NCOMS';
processId=19870;
}
{
serviceName='ncp_df_file';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
dependency=19803;
argList=['-domain','COLT45','-server','ncp_disco.19803'];
binaryName='ncp_df_file';
serviceId=14;
logLevel='warn';
traceLevel=0;
domainName='NCOMS';
processId=19871;
}
{
serviceName='ncp_agent';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
dependency=19803;
argList=['-domain','COLT45','-agent','Details','-server',
'ncp_disco.19803','-threads','100','-messagelevel','warn'];
endSignal=2;
binaryName='ncp_agent';
serviceId=17;
logLevel='warn';
traceLevel=0;
domainName='NCOMS';
processId=28352;
}{
serviceName='ncp_dh_snmp';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
dependency=19646;
argList=['-domain','LNX39024'];
binaryName='ncp_dh_snmp';
serviceId=19;
logLevel='warn';
traceLevel=0;
domainName='NCOMS';
processId=28460;
Procedure
1. Log into the process control databases.
2. Issue the following command:
3. The following example output shows that ncp_class and ncp_store have no dependencies, and
that ncp_model is dependent on ncp_class and ncp_store:
.....
{
serviceName='ncp_class';
dependsOn=[];
}
{
serviceName='ncp_store';
dependsOn=[];
}
.....
.....
{
serviceName='ncp_model';
dependsOn=['ncp_class', 'ncp_store'];
}
( 4record(s) : Transaction complete )
Procedure
1. Log into the process control databases.
2. Issue the following command:
Where PROCESS is the name of the process for which you want to query the dependencies; for
example, ncp_disco.
Example
The following example output shows that ncp_model is dependent on ncp_class and ncp_store:
{
serviceName='ncp_model';
dependsOn=['ncp_class', 'ncp_store'];
}
( 1record(s) : Transaction complete )
Procedure
1. Back up and edit he CtrlServices.DOMAIN.cfg configuration file for your domain, where DOMAIN
is the name of your domain.
2. Locate the entry for the process whose dependencies you want to configure by looking for the
following line in the file:
serviceName='process_name';
dependsOn=['process_name', 'process_name2'];
Process Dependencies
ncp_class No dependency
ncp_config No dependency
ncp_ctrl No dependency
ncp_d_helpserv No dependency
ncp_store No dependency
ncp_webtool No dependency
Procedure
1. Back up your $NCHOME/etc/precision/CtrlServices.cfg file.
2. Save a copy of the CtrlServices.cfg file with your domain name included in the filename, for
example, CtrlServices.NCOMS.cfg.
3. Edit the CtrlServices.MASTER.cfg file. For example, if you want to discover your network and
visualize the topology only, you must delete or comment out the entries for ncp_g_event,
ncp_poller, and ncp_virtualdomain processes from the CtrlServices.NCOMS.cfg file.
4. Make any changes to the command line parameters that you want to use to start the processes.
5. Start the ncp_ctrl process in the domain NCOMS.
Results
The ncp_ctrl process now starts the limited set of processes in the domain NCOMS in the order you
specified.
Procedure
1. Ensure that the ncp_ctrl process is running.
2. Log into the process control databases.
3. Issue a command similar to the following:
Results
The above insert starts a script called user_script, located in the $NCHOME/precision/scripts
directory.
Procedure
1. Ensure that the ncp_ctrl process is running.
2. Log into the process control databases.
3. Issue a command similar to the following:
Note: Stopping the ncp_disco process in this way does not stop the discovery immediately if it is busy.
Stopping the ncp_disco process forcibly can corrupt the discovery.
Procedure
1. Install Network Manager on both servers.
2. Configure Really Small Message Broker to allow communication between the master server and slave
server.
3. On the master server, configure the CtrlServices.DOMAIN.cfg file.
a) Back up and edit the CtrlServices.DOMAIN.cfg file.
b) For each process that you want to run on the remote server, set the hostName parameter to the
host name of the remote server. Make sure the host name is the name as defined on the remote
server.
The following example configures the ncp_store process to run on the remote server called
example.com in domain TARA.
4. On the remote server, ensure that the CtrlServices.DOMAIN.cfg file is empty of content. Then,
start the ncp_ctrl process on the remote server in slave mode.
The following example starts the ncp_ctrl process in slave mode in the TARA domain .
5. Start the ncp_ctrl process on the local server in master mode using the normal command line
options. The following example starts the ncp_ctrl process in master mode domain TARA.
Results
The processes that you configured to be run on the slave server are started, and controlled by the
ncp_ctrl process on the master server. The ncp_ctrl process on the master server also starts and
controls any processes that it is configured to manage on the master server.
For example:
[2010-09-02T04:50:57]:INFO:HNMOB0001I:[Deferrable Alarm : 0]:Initialising
Discovery GUI Server
Date and time
The date and time is in ISO 8601 format.
Severity
The following severity levels are available:
• CONFIG:
Logs all events up to and including configuration changes.
• INFO:
Logs only system state changes. This is the default setting.
• WARNING:
Logs recoverable system errors.
• SEVERE:
Logs unrecoverable system errors.
Thread ID
The thread ID indicates the task associated with the function the message originates from.
Message
The log message itself that provides a description of the event being logged.
<date> <component_id>\n
<severity>: <message>
Trace logs do not provide standardized message format as they are for more enhanced troubleshooting
purposes. The severity levels available for trace messages are as follows:
• FINE:
Minimum level of tracing. The majority of stack traces appear at this level already and are written to the
trace file. The trace file also includes all log messages.
• FINER:
Medium level of tracing that provides more detailed debug messages.
• FINEST:
Maximum level of tracing that produces very detailed technical information.
Related tasks
Changing the logging level for GUIs
You can set the level of detail log files contain for GUI components as whole, or specify logging levels on a
more granular basis for specific GUI application segments.
Procedure
1. Go to $NMGUI_HOME/profile/logs/tnm/.
2. Locate the log and trace files that correspond to the GUI component you want to check the log
messages for and open the file.
Note: Once the log file reaches the specified maximum size limit, it is renamed and a new file is
created. The first log file is named ncp_component_name.0.log, and the most recent log messages
are always in this file. Previous log files are saved with the number increased (for example
ncp_nmdb.1.log, ncp_nmdb.2.log, and so on).
Procedure
1. Go to $NMGUI_HOME/profile/etc/tnm/.
2. Open the .properties file of the GUI component you want to set the logging level for:
INFO Logs only system state changes. This is the default setting.
FINE Minimum level of tracing. The majority of stack traces appear at this level already and
are written to the trace file. The trace file also includes all log messages.
Note: When setting the logging level to FINE, FINER, FINEST, or ALL, both log files and
trace files will contain information, and the trace files will include all messages from the
log files in addition to the more technical details of operation. If any other logging level is
set, the trace files remain empty.
FINER Medium level of tracing that provides more detailed debug messages.
FINEST Maximum level of tracing that produces very detailed technical information.
ALL Enables logging and tracing on all levels for the application.
structurebrowser.log.filename=ncp_structureview.%g.log
structurebrowser.log.level=INFO
structurebrowser.log.maxsize=10
structurebrowser.log.count=1
structurebrowser.trace.filename=ncp_structureview.%g.trace
structurebrowser.trace.maxsize=10
structurebrowser.trace.count=1
The settings here show the default INFO setting for the log files. This means log files are populated with
information about system state changes, and trace files remain empty.
To change the logging level to have all log messages and enable trace messages, change INFO to at least
FINE (or FINER, or FINEST, depending on the level of detail you require in the trace files). This will mean
both log files and trace files will contain information. The following example reflects this change:
structurebrowser.log.filename=ncp_structureview.%g.log
structurebrowser.log.level=FINE
structurebrowser.log.maxsize=10
structurebrowser.log.count=1
structurebrowser.trace.filename=ncp_structureview.%g.trace
structurebrowser.trace.maxsize=10
structurebrowser.trace.count=1
Procedure
1. In the navigation pane, click Settings > Websphere Administrative Console.
2. Click Launch WebSphere administrative console to start the WebSphere® Application Server console.
3. In the administrative console, click Troubleshooting > Logs and Trace.
4. In the list, click the name of the server Network Manager is running on.
5. Click Change Log Detail Levels and then the Runtime tab.
6. Locate the specific application segment name by scrolling down the list and expanding any item as
necessary.
7. Click the segment name and select the required logging level from the drop-down menu. Logging and
trace level options are the same as for the GUI components.
Note: By default, whatever is set in the GUI component .properties file is the default log and trace
level for all relevant segments of that GUI component.
8. View the corresponding GUI component log file to check the messages logged for the segment. For
example view the ncp_disco.0.log or ncp_disco.0.trace files for discovery GUI segments.
Related tasks
Locating GUI log files
Procedure
1. Go to $NMGUI_HOME/profile/etc/tnm/ and open the .properties file of the GUI component
you want to set the log size for.
2. In the properties file, perform the following steps:
a) Locate the component_name.log.maxsize line and set the maximum size a log file can reach in
MB. For example, nmdb.log.maxsize=20 means the maximum allowed size of the Management
Database log file is 20 MB. The default setting is 10 MB.
b) Locate the component_name.log.count line and set the maximum number of files to be stored.
For example, nmdb.log.count=2 means the 2 latest log files will be kept apart from the one
being written to at the moment. The default setting is 1, meaning the current and 1 previous file are
saved only.
Note: Once the log file reaches the specified maximum size limit, it is renamed and a new file is
created. The first log file is named ncp_component_name.0.log, and the most recent log
messages are always in this file. Previous log files are saved with the number increased (for
example ncp_nmdb.1.log, ncp_nmdb.2.log, and so on).
3. Perform the same steps for the trace files by locating and editing the
component_name.trace.maxsize and component_name.trace.count lines.
4. Save the .properties file.
Procedure
1. Navigate to the default location for process log and trace files, $NCHOME/log/precision.
2. Locate the log and trace files that correspond to the process name.
For example, an instance of the ncp_disco process running on the NCOMS domain generates the
following files:
ncp_disco.DOMAIN.log
ncp_disco.DOMAIN.trace
3. For log files for processes other than those that begin with ncp_, for example, for databases or third-
party components, check the $NCHOME/PD/core/component_name directories.
Procedure
1. Navigate to the CtrlServices.cfg file. The file is located in the following directory:
NCHOME/etc/precision/CtrlServices.domain_name.cfg
The domain_name is the name of the domain for which the logging level is to be changed.
2. From the CtrlServices.cfg file, change the argument specified in the file to –debug for trace or –
messagelevel for logging.
Procedure
1. Find the Process ID (PID) of the process you are investigating:
a) On Unix and Linux® operating systems, enter ps -ef | grep ncp at the command line.
2. To increase the debug level by one level:
a) On Unix and Linux operating systems, enter kill -USR2 PID at the command line.
Avoiding process errors with large trace or log files by using log file rotation
If trace or log files become too large, processes might quit unexpectedly. If too many files are created,
you might run out of disk space. Configure the number and size of trace and log files by configuring log file
rotation.
You can control the size of log and trace files using one of the following criteria:
• Maximum size
Note: Do not set a maximum size of less than 1000000 (1MB). Setting a maximum size of less than
1000000 (1MB) can cause the ncp_g_event and nco_p_monitor processes to fail.
You must restart Network Manager processes after you change the log file rotation environment variables
so that the processes use the updated variables.
Important: On UNIX systems, make sure that you set the logging environment variables in the
appropriate shell profile files for the account that Network Manager is running. Do not set them in the
NCHOME/env.sh file because this file is not used when Network Manager starts.
The following example shows how to rotate the log files at midnight each day, and append the old log file
name with the literal character string "old"
About multicast
Processes that use direct TCP communication first use multicast to locate each other, then set up TCP
sockets.
Changing host and port settings for Really Small Message Broker
You can change the host and port settings for Really Small Message Broker by modifying the Really Small
Message Broker configuration file and then stopping the broker.
Procedure
1. Ensure that all ncp processes have been stopped.
2. Delete the following file:
$NCHOME/etc/precision/broker_1883.cfg
$NCHOME/etc/precision/Precision.broker.cfg
broker session =
{
'service' = '1883',
'network' = '127.0.0.1'
};
Note: The broker session settings use the IP address of the loopback interface. This ensures that
you can only access the broker from the local server. If you want to allow external connections then
you must bind to the IP address of the server. Note that allowing external connections to the broker
might constitute a security risk.
5. Change the value of 'service' to the port you want to use. Ensure that it does not conflict with any
other ports on your system.
6. Change the value of 'network' to the address of the current server.
7. Save and close the file.
$NCHOME/precision/scripts/perl/scripts/stop_broker.pl
Any currently running Network Manager core processes such as the Discovery engine, ncp_disco will
restart Really Small Message Broker automatically. The new instance of Really Small Message Broker will
pick up the configuration changes.
Procedure
1. Ensure that all ncp processes have been stopped.
2. Create a domain specific Precision.broker.cfg configuration file.
Do this by copying the following file: $NCHOME/etc/precision/Precision.broker.cfg to a
domain-specific copy: $NCHOME/etc/precision/Precision.broker.DOMAIN_NAME.cfg
Where DOMAIN_NAME is the name of one of your domains.
3. Locate the following section in the file:
broker session =
{
'service' = '1883',
'network' = '127.0.0.1'
};
4. Change the value of 'service' to the port you want to use. Ensure that it does not conflict with any
other ports on your system.
5. Save and close the file.
6. Repeat steps “2” on page 41 to “5” on page 41 to create a separate message broker for each of your
domains.
7. Restart all ncp processes.
netstat -a
Procedure
1. On the first server, start the process.
2. Make a backup copy of the ServiceData.cfg file.
3. Edit the ServiceData.cfg file and copy the line relevant to the process for which you want to define
a port.
The existing line might resemble the following example:
SERVICE: Helper DOMAIN: DEMO ADDRESS: 192.168.31.8 PORT: 51153
SERVERNAME: britanicus DYNAMIC: YES
In this example, DYNAMIC: YES shows that the port for the Helper Server has been assigned
dynamically.
4. Change the PORT setting to the required value.
5. Change the string DYNAMIC:YES to DYNAMIC:NO. This forces the process to use the same address
and port next time it starts.
6. Save the ServiceData.cfg file.
7. On the second server, make a backup copy of the ServiceData.cfg file.
8. Copy the relevant line from the ServiceData.cfg file on the first server to the ServiceData.cfg
file on the second server.
9. Save the ServiceData.cfg file.
Procedure
1. Back up and edit the ServiceData.cfg file.
162 UDP Default trap port. Used by the Trap polling agent. If more than one
application/process needs access to this port, ncp_trapmux, the SNMP trap
multiplexer, can be used to forward traps. The SNMP trap multiplexer, the
Trap discovery agent, and the Trap polling agent can all be configured to use
a different port.
1883 Message Default port used by Really Small Message Broker for inter-process
Queuing communication.
Telemetry
Transport
(MQTT)
4100 TCP/IP Default ObjectServer port. This must be entered at install time. Defined in
interfaces.Arch on the ObjectServer workstation. This port is used by
the ncp_g_event process to communicate with the ObjectServer.
7968 TCP/IP Default port for access to the Network Manager server from Dashboard
Application Services Hub. This is used by the Discovery Configuration GUI
and it is defined in the ServiceData.cfg configuration file. If you want to
change this port, edit the ServiceData.cfg configuration file and restart
the ncp_model process and the ncp_config process using CTRL.
16310 HTTP Default port for the Dashboard Application Services Hub. The Dashboard
Application Services Hub allocates the next thirteen ports up from the port
specified for the Dashboard Application Services Hub during the installation
for its own use. By default, this port redirects to 16316.
16311 HTTPS Default secure port for the Dashboard Application Services Hub.
--
-- Server data file - contains info on servers and the general multicast
-- address to use.
--
SERVICE: MulticastService DOMAIN: ANY_PRECISION_DOMAIN ADDRESS: 225.13.13.13
PORT: 33000
Default users
Several users are supplied with Network Manager.
ncp_gis Not assigned to a group by default. User can open geographical views.
ncp_gis_admin Not assigned to a group by default. User can edit portlet layout
preferences in geographical views.
Procedure
1. Stop Network Manager.
2. Encrypt or decrypt the required password from the command line using the ncp_crypt utility in the
ITNMHOME/bin directory.
Example
To encrypt the password, type the following command.
To decrypt a password you use the same utility that is used to encrypt the password, but with an
additional command line argument.
Related tasks
Starting and stopping Network Manager
Procedure
1. Shut down all Network Manager processes.
You can use the itnm_stop command.
2. If you have changed the length of the encryption key, edit the $NCHOME/etc/precision/
ConfigSchema.cfg file and change the value that is inserted into
config.settings.m_KeyLength to the length of the new key in bits. Permitted values are 128, 192
and 256.
3. Use the nco_keygen utility to generate a new encryption key. Ensure that you specify the output file
as $NCHOME/etc/security/keys/conf.key.
4. Restart all Network Manager processes.
You can use the itnm_start command.
5. Using the new encryption key, reencrypt all the passwords currently used in configuration files using
the ncp_crypt utility by typing the following command.
Procedure
1. Edit the ncp_config configuration file, ConfigSchema.cfg.
2. Configure the following insert to the config.settings table:
The above insert specifies no encryption (m_EncryptPasswords = 0), and to use the default
encryption key
NCIM Database Password for command-line Provides access to the NCIM The
access to topology database topology database. $NCHOME/etc/
precision/
DbLogins.
DOMAIN.cfg and
$NCHOME/etc/
precision/
MibDbLogin.cf
g configuration
files.
NCIM Database Access settings used by You need the NCIM topology Database Access
Network Manager Web database password in order to Configuration GUI
applications use GUIs that query the NCIM
database.
Tivoli Netcool/ ObjectServer secure The Event Gateway needs this Configuration file
OMNIbus password password in order to access insert
ObjectServer the ObjectServer for event
enrichment activities.
Procedure
Click the Administration icon and select Network > Management Database Access.
Procedure
1. Click the Administration icon and select Network > Management Database Access.
2. Specify a value for the following fields.
Domain
Select the domain in which to issue the OQL query.
Service
Select the service that you want to query.
3. To issue a single-line query, type the query in the Query field and click Go .
4. To issue a multiple-line query:
c) Click Go .
Tip: To skip clicking Go, append ;go to multiple-line queries.
Results
Procedure
1. Click the Administration icon and select Network > Management Database Access.
2. Specify a value for the following fields.
Domain
Select the domain in which to issue the OQL query.
Service
Select the service that you want to query.
3. Click Advanced OQL Query . In the OQL Command field, type the following query:
show databases;
Sample output
The following example output shows the databases of the ncp_model service:
Listing the tables of a database using the Management Database Access page
To display a list of the tables of a database, use the show tables from command.
Procedure
1. Click the Administration icon and select Network > Management Database Access.
2. Specify a value for the following fields.
Domain
Select the domain in which to issue the OQL query.
Service
Select the service that you want to query.
3. Click Advanced OQL Query . In the OQL Command field, type the following query:
Procedure
1. Click the Administration icon and select Network > Management Database Access.
2. Specify a value for the following fields.
Domain
Select the domain in which to issue the OQL query.
Service
Select the service that you want to query.
3. Click Advanced OQL Query . In the OQL Command field, type the following query:
show table
database_name.table_name;
database_name is the name of the database, and table_name is the name of the required table.
In this command:
• DOMAIN_NAME is name of the domain to query.
• SERVICE_NAME is the name of the Network Manager process to query.
Listing the databases and tables of the current service using the OQL Service
Provider
You can explore the databases of a service, the tables of those databases, and the columns of those
tables.
Procedure
1. Start the OQL Service Provider.
2. Type the following query:
show databases;
go
Sample output
The following example output shows the databases of the ncp_model service:
{
databases = [ 'master', 'translations' ]
}
Related tasks
Starting the OQL Service Provider
Start the OQL Service Provider in order to log into the databases of a given Network Manager process.
Procedure
1. Start the OQL Service Provider.
2. Type the following query:
Sample output
The following example output shows the tables of the master database:
{
tables = [ 'entityByName', 'entityByNeighbor', 'containers' ]
}
Related tasks
Starting the OQL Service Provider
Start the OQL Service Provider in order to log into the databases of a given Network Manager process.
Listing the columns of a database table using the OQL Service Provider
You can list the columns of a database table using the show table command.
Procedure
1. Start the OQL Service Provider.
2. Type the following query:
show table
database_name.table_name;
go
database_name is the name of the database, and table_name is the name of the required table.
Related tasks
Starting the OQL Service Provider
Start the OQL Service Provider in order to log into the databases of a given Network Manager process.
The above example performs a single query on the disco.status database table and disconnects from
the OQL Service Provider. In order to perform this query, the ncp_disco process would have to be
running in the NCOMS domain, and the specified user name and password combination would have to be
valid.
Any acceptable OQL query can be specified with the -query option. The query must be terminated with a
semi-colon but not the go keyword.
quit
Sample
This sample shows how to use the hist command:
history
Sample
This sample shows how to use the ! command:
history
!2
This executes the second command in the history list and produces the following output:
{
serviceName='ncp_dh_dns';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=23;
processId=10734;
}
{
serviceName='ncp_dh_snmp';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=24;
Sample
This sample shows how to use the tabon command:
tabon
select * from services.unManaged where serviceName like 'dh';
go
+---------------+-----------------------------------------+--------------------
| serviceName | servicePath | argList
+---------------+-----------------------------------------+--------------------
| ncp_dh_dns | $PRECISION_HOME/platform/$PLATFORM/bin/ | ['-domain','NCOMS']
| ncp_dh_snmp | $PRECISION_HOME/platform/$PLATFORM/bin/ | ['-domain','NCOMS']
| ncp_dh_arp | $PRECISION_HOME/platform/$PLATFORM/bin/ | ['-domain','NCOMS']
| ncp_dh_telnet | $PRECISION_HOME/platform/$PLATFORM/bin/ | ['-domain','NCOMS']
| ncp_dh_ping | $PRECISION_HOME/platform/$PLATFORM/bin/ | ['-domain','NCOMS']
+---------------+-----------------------------------------+--------------------
----+-----------+-----------+
| serviceId | processId |
----+-----------+-----------+
| 23 | 10734 |
| 24 | 10750 |
| 25 | 10872 |
| 52 | 11424 |
| 67 | 13399 |
----+-----------+-----------+
Sample
This sample shows how to use the tabon command:
taboff
select * from services.unManaged where serviceName like 'dh';
go
{
serviceName='ncp_dh_dns';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=23;
processId=10734;
}
{
serviceName='ncp_dh_snmp';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=24;
processId=10750;
}
{
serviceName='ncp_dh_arp';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=25;
processId=10872;
}
{
serviceName='ncp_dh_telnet';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=52;
processId=11424;
}
{
serviceName='ncp_dh_ping';
servicePath='$PRECISION_HOME/platform/$PLATFORM/bin/';
argList=['-domain','NCOMS'];
serviceId=67;
processId=13399;
}
( 5 record(s) : Transaction complete )
Procedure
Change the host name, port, password, or database name in the database.
To change the host name, port, password, or database name, refer to the configuration documentation for
your version of the appropriate topology database:
• For information on installing and configuring Oracle, refer to the Oracle documentation at http://
docs.oracle.com/en/database/.
• For information on installing and configuring Db2, refer to the Db2 documentation at http://
www.ibm.com/support/knowledgecenter/SSEPGG/welcome
• For information about changing the password, refer to “Updating NCIM access settings for the Web
applications” on page 65.
What to do next
After you change the access details in the database, update the settings in the Network Manager
components that connect to the NCIM database.
Related tasks
Database access troubleshooting script
In the event of problems with access to the topology database, historical polling database, or polling
database, run the ncp_db_access.pl script. This script checks database setup and determines whether
access to the databases is being prevented by firewalls.
Procedure
1. Change the password used by Cognos Analytics by configuring the data source properties for reports
and for all data sources. See the Cognos Analytics Knowledge Center at https://www.ibm.com/
support/knowledgecenter/SSEP7J.
2. For each data source, use the Cognos® GUI to change the username or password.
a) Click the Reporting icon and select Cognos Reporting. Within the widget select Manage >
Administration Console.
b) Click the Configuration tab.
c) Click NCIM and then click NCIM again.
The breadcrumb trail at the top of the GUI reads Directory > Cognos > NCIM > NCIM.
d) Select the check box next to ncim and click More > Set Properties.
e) On the Signon tab, click Edit the Signon and type the database user name and the new password.
Results
After changing the password, you can use the NCHOME/precision/scripts/perl/scripts/
ncp_db_access.pl script to verify access. For more information on the ncp_db_access.pl script, see
the IBM Tivoli Network Manager IP Edition Administration Guide.
Procedure
1. Go to $NMGUI_HOME/profile/etc/tnm/autoprovision/.
2. Rename the files called filename.xml.processed to filename.xml.
3. Save and close the files.
Procedure
1. Make sure that you followed the prerequisites for installing Db2, and install and configure the Db2
database.
2. Ensure the database creation scripts are available on the database server.
• If the Db2 database is on the same server as Network Manager, and the Network Manager has
already been installed, the database creation scripts are available in $ITNMHOME/scripts/sql.
• If the Db2 database is on a different server, either copy the contents of $ITNMHOME/scripts/sql
to the Db2 server, or locate the db2_creation_scripts.tar.gz file at the top level which is
available from IBM Installation Manager as a separate package.
3. As the administrative user, for example the db2inst1 user, run the create_db2_database.sh
script as the Db2 administrative user by typing the following command on the Db2 server:
./create_db2_database.sh database_name user_name -force
Where:
database_name
Is the name of the database.
user_name
Is the Db2 user to use to connect to the database.
Important: This user must not be the administrative user. This user must be an existing operating
system and Db2 user.
-force
Is an argument that forces any Db2 users off the instance before the database is created.
For example, to create a Db2 database that is called ITNM for the Db2 user ncim, type:
./create_db2_database.sh ITNM ncim
After you run create_db2_database.sh, restart the database as the Db2 administrative user as
follows: run db2stop and then run db2start.
4. Create the database schema. To create the database schema, use one of the following approaches,
you cannot use both approaches.
a) To create the database schema from the Network Manager server, run the $ITNMHOME/
scripts/sql/create_all_schemas.sh command on the Network Manager server as the
administrative user as follows:
./create_all_schemas.sh database_type database_name host user_name
password port
Where:
database_type
Identifies the type of database to create. In this case, it is db2.
database_name
Specifies the name of the database.
host
Specifies the server host name or IP address where the database is installed.
b) Optionally, to create the database schema on the database server, go to the location on the
database server where you uncompressed the db2_creation_scripts.tar.gz file. As the
administrative user, run the following script to populate the databases:
Procedure
1. Make sure that you followed the prerequisites for installing Oracle, and install and configure the Oracle
database.
For information on installing and configuring Oracle, refer to the Oracle documentation at http://
docs.oracle.com/en/database/.
2. Ensure the database creation scripts are available on the database server.
• If the Oracle database is on the same server as Network Manager, and the Network Manager has
already been installed, the database creation scripts are available in $ITNMHOME/scripts/sql.
$NCHOME/precision/scripts/sql/oracle/create_oracle_ncadmin_user.sh
sys
password [-pdb pluggable_database_name]
Procedure
1. Stop the domain by running the itnm_stop command.
For example, to remove the domain OLDDOMAIN:
To verify that the processes for the domain were stopped, run the itnm_status command.
2. In $NCHOME/precision/scripts/perl/scripts, run the domain_drop.pl script.
For example, to remove the domain that was stopped in the previous step:
Procedure
To remove all entities from a domain, use a DELETE statement as shown in the following example.
Results
The entities are removed from the domain. Because the mapping between the entityName and entityID
persists, if entities that have same name are rediscovered, they are assigned the same entityId as before
deletion.
Procedure
1. Change to the scripts directory using the following command:
cd $NCHOME/precision/scripts/sql/db2
Results
If you use the optional force option, the script forces any existing Db2 users off the instance before
attempting to drop the database.
cd $NCHOME/precision/scripts/sql/oracle
Procedure
1. Ensure that you are logged in as the system user.
2. Change to the scripts directory using the following command:
cd %NCHOME%\precision\scripts\sql\oracle
Results
If you use the optional force option, the script forces any existing Oracle users off the instance before
attempting to drop the database.
Procedure
1. Locate the report that you want to use and note which parameters are required.
2. Construct a URL similar to the following:
https://hostname:port/tarf/servlet/dispatch?
b_action=cognosViewer&ui.action=run&ui.object=/content/package[@name=
'Network Manager']/folder[@name='report_group_name']
/report[@name='report_name']&ui.name=report_name
&run.outputFormat=HTML&domainName=AUTO&report_parameter=
"value"
Where
• hostname is the name of the server where the Dashboard Application Services Hub is installed.
• port is the port number for the Dashboard Application Services Hub.
• report_group_name is the name of the group to which the report belongs.
https://10.10.10.108:16311/tarf/servlet/dispatch?b_action=cognosViewer
&ui.action=run&ui.object=/content/package[@name='Network Manager']
/folder[@name='Path Views Reports']/report[@name='IP Routing Info']&ui.name
=IP Routing Info&run.outputFormat=HTML&domainName
=AUTO&pathEntityId=3323&entityId=13
Procedure
1. Click the Reporting icon and select Cognos Reporting. Within the widget select Manage >
Administration Console.
2. Click the Configuration tab.
3. Click NCPOLLDATA.
4. Click the Set properties icon and then select the Connection tab.
5. Select Read uncommitted from the Specify a value drop down menu.
Note: Some database vendors use different names for the isolation levels. See the Cognos Analytics
help and search for "isolation levels" for information on the levels available and their corresponding
names on different database types.
6. Click OK.
Procedure
1. Review the installation history. In IBM Installation Manager click File > Installation History.
a) In IBM Installation Manager click File > Installation History.
b) Review the status of the installed packages.
The Package Group Name column lists the installed packages, and the Status column lists the
results of the installation of that package.
c) Click View Log to view the log file for any selected package.
2. You can also filter the various log files by event type. To do this, in IBM Installation Manager click File >
View Log.
You can filter information in the log files by the following event types:
URL format
Check that your URL format entered is as follows (shows default ports):
• https://localhost:16311/ibm/console (secure access).
• http://localhost:16310/ibm/console (nonsecure access).
Where localhost is the fully-qualified host name or IP address of the
Dashboard Application Services Hub server.
Default ports
16310 is the default nonsecure port number and 16311 is the default secure port number. If your
environment was configured during installation with a port number other than the default, enter that
number instead.
Cause
Device was discovered correctly and is mapped to an AOC file. One way to check this is to make sure that
in the Network Views, the device can be located in one of the Device Class network views.
Example
An example is the Extreme.aoc and ExtremeSummit.aoc file. The super_class for Extreme.aoc is
Device.aoc file, which uses the 'Device' icon. If you would like any device instantiated as an Extreme.aoc
to be seen in Network Hop View or in the Network Views as a switch or router, edit the AOC file and use
the statement visual_icon = 'Switch';; or visual_icon = 'Router; in place of visual_icon
= ' ';.
https://hostname:port/ibm/console
Where:
• hostname is the name of the WebSphere Application Server.
• port is the port number associated with the WebSphere Application Server. By default this is the port
number of the Dashboard Application Services Hub server + 5, which is 16316.
2. In the navigation tree on the left-hand side, click Security > Global Security.
3. In the Global Security page, click Web and SIP Security, and then click Single Sign-On (SSO).
4. In the LTPA V2 cookie name field, type the desired SSO cookie name; for example, ITNMLtpaToken.
By default this field is blank, and if left blank the cookie name value defaults to LtpaToken2. Hence it
is important to change the cookie name to anything other than LtpaToken2.
5. Click OK.
6. Click Save directly to the master configuration.
7. Restart the Dashboard Application Services Hub server.
Troubleshooting reporting
If you have problems with Cognos Analytics, check the troubleshooting information.
Procedure
1. Run the following queries to determine whether your database contains null values:
Where domain is the domain for which you want to delete polled data.
Procedure
1. Change to the $NCHOME/precision/scripts/perl/scripts directory and locate the
ncp_db_access.pl program.
2. Issue the following command.
perl ncp_db_access.pl -domain domain_name
Where:
• domain_name is the name of the required domain.
For each database the script indicates whether connection is in order or if there are access problems.
Related tasks
Changing the NCIM access details
For information about working with IBM Software Support, see https://www.ibm.com/support/home/
(https://www.ibm.com/support/servicerequest/Home.action).
Using logging
Logging is the primary troubleshooting feature in the monitoring agent. Logging refers to the text
messages and trace data that is generated by the agent. Messages and trace data are sent to a file.
Trace data captures transient information about the current operating environment when a component or
application fails to operate as designed. IBM Software Support personnel use the captured trace
information to determine the source of an error or unexpected condition.
Trace logging
Trace logs are used to capture information about the operating environment when component software
fails to operate as designed.
The principal log type is the RAS (Reliability, Availability, and Serviceability) trace log. These logs are in the
English language only. The RAS trace log mechanism is available for all components of IBM Tivoli
Monitoring. Most logs are in a logs subdirectory on the host computer.
Note: The documentation refers to the RAS facility in IBM Tivoli Monitoring as "RAS1."
IBM Software Support personnel use the information captured by trace logging to trace a problem to its
source or to determine why an error occurred. All components in the IBM Tivoli Monitoring environment
have a default tracing level. The tracing level can be changed on a per-component level to adjust the type
of trace information collected, the degree of trace detail, the number of trace logs to be kept, and the
amount of disk space used for tracing.
• Windows: The IBM Tivoli Monitoring Provides details about products that are installed.
timestamp.log file in the install_dir Note: Trace logging is enabled by default. A
\InstallITM path configuration step is not required to enable this
• UNIX: The candle_installation.log file in the tracing.
install_dir/logs path
• Linux: The candle_installation.log file in the
install_dir/logs path
The name of the RAS log file is as follows: Traces activity on the monitoring server.
• Windows: install_dir\logs
\hostname_ms_timestamp-nn.log
• UNIX: install_dir/logs/
hostname_ms_timestamp-nn.log
• Linux: install_dir/logs/
hostname_ms_timestamp-nn.log
Note: File names for RAS1 logs include a hexadecimal
time stamp.
Also on UNIX systems, a log with a decimal time
stamp is provided: hostname_np_timestamp.log
and hostname_np_timestamp.pidnnnnn in the
install_dir/logs path, where nnnnn is the
process ID number.
The name of the RAS log file is as follows: Traces activity on the portal server.
• Windows: install_dir\logs\
hostname_cq_HEXtimestamp-nn.log
• UNIX: install_dir/logs/
hostname_cq_HEXtimestamp-nn.log
• Linux: install_dir /logs/
hostname_cq_HEXtimestamp-nn.log
Note: File names for RAS1 logs include a hexadecimal
time stamp.
Also on UNIX systems, a log with a decimal time
stamp is provided: hostname_np_timestamp.log
and hostname_np_timestamp.pidnnnnn in the
install_dir/logs path, where nnnnn is the
process ID number.
The following table lists trace log files that are located on the Tivoli Enterprise Portal server.
Table 12. Trace log files located on the Network Manager server
File name and path Description
The RAS1 log files are as follows: Traces activity of the monitoring agent.
• UNIX: hostname_np_instance_name_
knpagent_
HEXtimestamp-nn.log in the install_dir/
logs directory
• Linux: hostname_np_instance_name_
knpagent_
HEXtimestamp-nn.log in the install_dir/
logs directory
These logs are in the following directories:
• UNIX: install_dir/logs
• Linux: install_dir/logs
On Linux systems, the following additional logs are
provided:
– hostname_np_timestamp.log
– hostname_np_timestamp.
pidnnnnn in the install_dir/logs path,
where nnnnn is the process ID number
The Take Action command log files are as follows: Traces activity each time a Take Action command runs.
For example, when a hypothetical start_command
• host_np_instance_
Take Action command runs, a start_command.log
takeactioncommand.log
file is generated.
The logs are in the following directories:
• UNIX: install_dir/logs
• Linux: install_dir/logs
The Take Action command log files are as follows: Traces activity each time a Take Action command runs.
All predefined Take Action commands are logged into
• knp_data_provider_actions_
this file.
instance_n.log
The logs are in the following directories:
• UNIX: install_dir/logs
• Linux: install_dir/logs
The Take Action log files are as follows: Traces activity each time a Take Action command runs.
For example, when a stop_scheduler Take Action
• knp_instance_takeactioncommand
command runs, the following log messages are
.log
generated:
• knp_instance_control_domainscheduler.lo
g • kp9_instance_stop_log
This log contains some basic information about how
the Take Action command subsequently invoked a
process called Control Scheduler.
• kp9_instance_control
_scheduler.log
This log contains the log output of all of the
PeopleSoft psadmin CLI output collected when
executing specific Take Actions commands.
Definitions of variables:
• timestamp is a time stamp with a format that includes year (y), month (m), day (d), hour (h), and minute
(m), as follows: yyyymmdd hhmm
• HEXtimestamp is a hexadecimal representation of the time at which the process was started.
• install_dir represents the directory path where you installed the relevant component. install_dir can
represent a path on the computer that hosts the monitoring system, the monitoring agent, or the portal.
• instance refers to the name of the database instance that you are monitoring.
• instance_name refers to the name of the agent instance.
• hostname refers to the name of the computer on which the relevant component runs.
• nn represents the circular sequence in which logs are rotated. This value includes a range from 1 - 5, by
default. The first is always retained because it includes configuration parameters.
For more information about the complete set of trace logs that are maintained on the monitoring server,
see the IBM Tivoli Monitoring Installation and Setup Guide.
Example two
The following excerpts from the trace log for the monitoring server show the status of an agent,
identified here as "Remote node." The name of the computer where the agent is running is
SERVER5B:
(42C039F9.0000-6A4:kpxreqhb.cpp,649,"HeartbeatInserter")
Remote node SERVER5B:NP is ON-LINE.
. . .
(42C3079B.0000-6A4:kpxreqhb.cpp,644,"HeartbeatInserter")
Remote node SERVER5B:NP is OFF-LINE.
Procedure
1. Open the Manage Tivoli Enterprise Monitoring Services window.
2. Select Advanced > Edit Trace Parms. The Tivoli Enterprise Monitoring Server Trace Parameters
window is displayed.
3. Select a new trace setting in the pull-down menu in the Enter RAS1 Filters field or type a valid string.
• General error tracing. KBB_RAS1=ERROR
• Intensive error tracing. KBB_RAS1=ERROR (UNIT:knp ALL)
• Maximum error tracing. KBB_RAS1=ERROR (UNIT:knp ALL) (UNIT:kra ALL)
Note: As this example shows, you can set multiple RAS tracing options in a single statement.
4. Modify the value for Maximum Log Size Per File (MB) to change the log file size (changes LIMIT value).
5. Modify the value for Maximum Number of Log Files Per Session to change the number of log files per
startup of a program (changes COUNT value).
6. Modify the value for Maximum Number of Log Files Total to change the number of log files for all
startups of a program (changes MAXFILES value).
7. Optional: Click Y (Yes) in the KDC_DEBUG Setting menu to log information that can help you diagnose
communications and connectivity problems between the monitoring agent and the monitoring server.
The KDC_DEBUG setting and the Maximum error tracing setting can generate a large amount of
trace logging. Use these settings only temporarily, while you are troubleshooting problems. Otherwise,
the logs can occupy excessive amounts of hard disk space.
8. Click OK. You see a message reporting a restart of the monitoring agent so that your changes take
effect.
Procedure
1. Open the trace options file:
install_dir /config/np.config
2. Edit the line that begins with KBB_RAS1= to set trace logging preferences. For example, if you want
detailed trace logging, set the Maximum Tracing option: KBB_RAS1=ERROR (UNIT:knp ALL)
(UNIT:kra ALL)
3. Edit the line that begins with KBB_RAS1_LOG= to manage the generation of log files:
• MAXFILES: The total number of files that are to be kept for all startups of a specific program. When
this value is exceeded, the oldest log files are discarded. The default value is 9.
• LIMIT: The maximum size, in megabytes (MB) of a RAS1 log file. The default value is 5.
• IBM Software Support might guide you to modify the following parameters:
– COUNT: The number of log files to keep in the rolling cycle of one program startup. The default is 3.
– PRESERVE: The number of files that are not to be reused in the rolling cycle of one program
startup. The default value is 1.
Note: The KBB_RAS1_LOG parameter also provides for the specification of the log file directory, log
file name, and the inventory control file directory and name. Do not modify these values or log
information can be lost.
4. Restart the monitoring agent so that your changes take effect.
What to do next
Monitor the size of the logs directory. Default behavior can generate a total of 45 - 60 MB for each agent
that is running on a computer. For example, each database instance that you monitor can generate 45 -
60 MB of log data.
Regularly prune log files other than the RAS1 log files in the logs directory. Unlike the RAS1 log files that
are pruned automatically, other log types can grow indefinitely, for example, the logs that include a
process ID number (PID).
Use collector trace logs as an additional source of troubleshooting information.
Note: The KDC_DEBUG setting and the Maximum error tracing setting can generate a large amount of
trace logging. Use these settings only temporarily while you are troubleshooting problems. Otherwise, the
logs can occupy excessive amounts of hard disk space.
After the remote removal from the Tivoli Enterprise Bring up the configure list to remove the instance
Portal of a running instance, the instance name is name from the Start list.
still listed in the Start List.
Troubleshooting workspaces
Problems can occur with general workspaces and agent-specific workspaces.
The following table contains problems and solutions related to workspaces.
The name of the attribute does not display in a bar When a chart or graph view that includes the
chart or graph view. attribute is scaled to a small size, a blank space is
displayed instead of a truncated name. To see the
name of the attribute, expand the view of the chart
until sufficient space is available to display all
characters of the attribute name.
At the end of each view, you see the following Ensure that you configure all groups that supply
Historical workspace KFWITM220E error: data to the view. In the Historical Configuration
Request failed during execution. view, ensure that data collection is started for all
groups that supply data to the view.
When you use a long process name in the situation, Truncation of process or service names for
the process name is truncated. situations in the Availability table in the portal
display is the expected behavior. The maximum
name length is 100 bytes.
Regular (non-historical) monitoring data fails to be Check the formation of the queries you use to
displayed. gather data. For example, look for invalid SQL
statements.
Troubleshooting situations
Problems can occur with situations and situation configuration.
The following table contains problems and solutions for situations.
You want to change the appearance of situations 1. Right-click an item in the navigation tree.
when they are displayed in the navigation tree.
2. Click Situations in the menu. The Situation
Editor window is displayed.
3. Select the situation that you want to modify.
4. Use the State menu to set the status and
appearance of the Situation when it triggers.
Note: The State setting is not related to severity
settings in the IBM Tivoli Enterprise Console.
When a situation is triggered in the Event Log A timeout occurs on the cache of events for the NT
attribute group, it remains in the Situation Event Event Log group. Increase the cache time of Event
Console as long as the event ID entry is present in Log collection to meet your requirements by adding
the Event Log workspace. When this event ID entry the following variable and timeout value to the
is removed from the Event Log workspace on the KpcENV file for the agent (where pc is the two-
Tivoli Enterprise Portal, the situation is also cleared letter product code):
even if the actual problem that caused the event is CDP_NT_EVENT_LOG_CACHE_TIMEOUT=3600
not resolved, and the event ID entry is also present
This variable determines how long events from the
in the Windows Event Viewer.
NT Event Log are kept.
The situation for a specific agent is not visible in Open the Situation Editor. Access the All managed
the Tivoli Enterprise Portal. servers view. If the situation is not displayed,
confirm that the monitoring server has been
seeded for the agent.
The monitoring interval is too long. Access the Situation Editor view for the situation
that you want to modify. Check the Sampling
interval area in the Formula tab. Adjust the time
interval as required.
The situation is not displayed. Click the Action tab and check whether the
situation has an automated corrective action. This
action can occur directly or through a policy. The
situation might be resolving so quickly that you do
not see the event or the update in the graphical
user interface.
An Alert event did not occur even though the Check the logs, reports, and workspaces.
predicate was correctly specified.
A situation fires on an unexpected managed object. Confirm that you distributed and started the
situation on the correct managed system.
The product did not distribute the situation to a Click the Distribution tab and check the
managed system. distribution settings for the situation.
Situation events are not displayed in the Events Associate the situation with a Navigator item.
Console view of the workspace.
Note: The situation does not need to be displayed
in the workspace. It is sufficient that the situation
is associated with any Navigator item.
Workspaces reference
A workspace is the working area of the Tivoli Enterprise Portal application window. The Navigator contains
a list of the workspaces provided by the agent.
About workspaces
Use the Navigator to select the workspace you want to see. As part of the application window, the status
bar shows the Tivoli Enterprise Portal Server name and port number to which the displayed information
applies and the ID of the current user.
When you select an item in the Navigator, a default workspace is displayed. When you right-click a
navigator item, a menu that includes a Workspace item is displayed. The Workspace item contains a list of
workspaces for that navigator item. Each workspace has at least one view. Some views have links to other
workspaces. You can also use the Workspace Gallery tool as described in the Tivoli Enterprise Portal
User's Guide to open workspaces.
The workspaces in the Navigator are displayed in a Physical view that shows your enterprise as a physical
mapping or a dynamically populated logical view that is agent-specific. You can also create a Logical view.
The Physical view is the default view.
Predefined workspaces
The IBM Tivoli Monitoring for IBM Tivoli Network Manager IP Edition agent provides predefined
workspaces, which are organized by navigator item.
Agent-level navigator items
• IBM Tivoli Monitoring for Tivoli Network Manager navigator item
– IBM Tivoli Monitoring for Tivoli Network Manager workspace
• Availability navigator item
– Availability workspace.
• Discovery navigator item
– Discovery workspace.
• Network navigator item
– Network workspace.
Workspace descriptions
Each workspace description provides information about the workspace such as the purpose and a list of
views in the workspace.
Workspaces are listed under navigator items.
Attributes reference
Attributes are the application properties that are being measured and reported by the agent.
About attributes
Attributes are organized into attribute groups. Attributes in an attribute group relate to a single object
such as an application, or to a single kind of data such as status information.
Attributes in a group can be used in queries, query-based views, situations, policy workflows, take action
definitions, and launch application definitions. Chart or table views and situations are two examples of
how attributes in a group can be used:
• Chart or table views
Attributes are displayed in chart and table views. The chart and table views use queries to specify which
attribute values to request from a monitoring agent. You use the Properties editor to apply filters and set
styles to define the content and appearance of a view based on an existing query.
• Situations
You use attributes to create situations that monitor the state of your operating system, database, or
application. A situation describes a condition you want to test. When you start a situation, the values
you assign to the situation attributes are compared with the values collected by the agent and registers
Description
Displays the total number of agent connections.
Type
Integer (32-bit gauge)
Agent Name attribute This attribute is a key attribute.
Description
Displays the agent name configured in the system.
Type
String
Agent Status attribute
Description
Displays the status of the agents used by discovery.
Type
Integer with enumerated values. The following values are defined: Inactive state (0), Yet to be
started (1), Being started (2), Receiving and sending data (3), Active but finished processing
(4), Was active but has died (5). Any value that does not have a definition here is displayed in
the User Interface
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
The descriptive name of a part of the application.
Description
The program name and any arguments specified on the command line when the process was
started. For Service or Functionality test, this attribute has the value N/A.
Type
String with enumerated values. The following values are defined: N/A (N/A). Any value that
does not have a definition here is displayed in the User Interface
Full Name attribute
Description
The full name of the process that includes the path.
Type
string with enumerated values. The following values are defined: N/A (N/A). Any value that
does not have a definition here is displayed in the User Interface
Functionality Test Message attribute
Description
The text message that corresponds to the Functionality Test Status. This attribute is only valid
for functionality tests.
Type
String with enumerated values. The following values are defined: N/A (N/A). Any value that
does not have a definition here is displayed in the User Interface
Functionality Test Status attribute
Description
The return code of the functionality test. When the monitored application is running correctly,
'SUCCESS' is displayed. 'NOT_RUNNING' is displayed when it is not running correctly. 'N/A' is
displayed when the row does not represent a functionality test.
Type
Integer with enumerated values. The following values are defined: SUCCESS (0), N/A (1),
GENERAL ERROR (2), WARNING (3), NOT RUNNING (4), DEPENDENT NOT RUNNING (5),
ALREADY RUNNING (6), PREREQ NOT RUNNING (7), TIMED OUT (8), DOESNT EXIST (9),
UNKNOWN (10), DEPENDENT STILL RUNNING (11), INSUFFICIENT USER AUTHORITY (12).
Any value that does not have a definition here is displayed in the User Interface
Name attribute
Description
The name of the process, service, or functionality test. This name matches the executable
name of the process, the service short name or the name of the process used to test the
application.
Type
String with enumerated values. The following values are defined: N/A (N/A). Any value that
does not have a definition here is displayed in the User Interface
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
Description
The rate of page faults for the process measured in faults per second. This attribute contains
only valid data for processes.
Type
Integer (32-bit gauge)
Percent Privileged Time attribute
Description
The percentage of the available CPU time being used by this process for privileged operation.
Type
Integer (32-bit gauge)
Percent Processor Time attribute
Description
The percentage of the elapsed time that this process used the processor to execute
instructions.
Type
Integer (32-bit gauge)
Percent User Mode Time attribute
Description
The percentage of the available CPU time being used by this process for user mode operation.
Type
Integer (32-bit gauge)
PID attribute
Description
The process ID associated with the process. This attribute contains only valid data for
processes.
Type
Integer (32-bit gauge)
Status attribute
Description
The status of the application component.
• For processes 'UP', 'DOWN', 'WARNING', or 'PROCESS_DATA_NOT_AVAILABLE':
'PROCESS_DATA_NOT_AVAILABLE' is displayed for a process when the matching process is
running but the resource use information cannot be collected for that process.
• For services 'UP', 'DOWN', or 'UNKNOWN': 'UNKNOWN' is displayed when the service is not
installed.
• For functionality tests: 'PASSED' or 'FAILED' is displayed.
Type
Integer with enumerated values. The following values are defined: DOWN (0), UP (1),
WARNING (2), UNKNOWN (3), PASSED (4), FAILED (5), PROCESS DATA NOT AVAILABLE (6).
Any value that does not have a definition here is displayed in the User Interface
Description
The number of threads currently allocated by this process. This attribute contains only valid
data for processes.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Type attribute
Description
The type of the application component. Components are processes, services, or functionality
tests.
Type
Integer with enumerated values. The following values are defined: PROCESS (0), SERVICE (1),
FUNCTIONALITY TEST (2). Any value that does not have a definition here is displayed in the
User Interface
Virtual Size attribute
Description
The virtual size (in MB) of the process.
Type
Integer (32-bit gauge)
Working Set Size attribute
Description
The working set size of the process in MB. This attribute contains only valid data for processes.
Type
Integer (32-bit gauge)
Description
The blackout state
Type
Integer with enumerated values. The following values are defined: False (0), True (1). Any
value that does not have a definition here is displayed in the User Interface
Cycle Count attribute
Description
The discovery mode
Type
Integer with enumerated values. The following values are defined: Full (0), Partial (1). Any
value that does not have a definition here is displayed in the User Interface
Discovery Phase attribute
Description
The discovery phase
Type
Integer with enumerated values. The following values are defined: Phase 0 (Not Running) (0),
Phase 1 (1), Phase 2 (2), Phase 3 (3), Phase 4 (4). Any value that does not have a definition
here is displayed in the User Interface
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Processing Needed attribute
Description
The discovery processing needed
Type
Integer with enumerated values. The following values are defined: No (0), Yes (1). Any value
that does not have a definition here is displayed in the User Interface
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
Displays the total number of addresses being polled.
Type
Integer (32-bit gauge)
Description
Displays the total number of entities being monitored
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Pollicy Name attribute
Description
Displays the policy name that is polling the devices.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
Displays the total number of devices without SNMP access.
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
SNMP Access attribute
Description
Displays the total number of devices with SNMP access.
Type
Integer (32-bit gauge)
Description
The local time at the agent when the data was collected.
Type
String
Description
Displays the total number of entities defined in the model database.
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
Displays the total number of Interfaces Down
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
Displays the total number of Interfaces Up
Type
Integer (32-bit gauge)
Description
Displays the discovery completion memory.
Type
Integer (32-bit gauge)
Completion time attribute
Description
Displays the discovery completion time.
Type
String
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Phase one memory attribute
Description
Displays the phase one memory usage.
Type
Integer (32-bit gauge)
Phase one start attribute
Description
Displays the phase one start time.
Type
String
Phase three memory attribute
Description
Displays the phase three start time.
Type
String
Phase two memory attribute
Description
Displays the phase two memory usage.
Type
Integer (32-bit gauge)
Phase two start attribute
Description
Displays the phase two start time.
Type
String
Processing start time attribute
Description
Displays the data processing start time.
Type
String
Starting memory attribute
Description
Displays the discovery starting memory size.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Total discovery time attribute
Description
Displays the total time spent by discovery.
Type
String
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Total attribute
Description
Displays the total number of MIB objects retrieved per second
Type
Integer (32-bit gauge)
Description
Displays the total number of Cards.
Type
Integer (32-bit gauge)
Chassis attribute
Description
Displays the total number of chassis.
Type
Integer (32-bit gauge)
Interfaces attribute
Description
Displays the total number of interfaces.
Type
Integer (32-bit gauge)
Logical Interface attribute
Description
Displays the total number of Modules.
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
PSU attribute
Description
Displays the total number of PSU.
Type
Integer (32-bit gauge)
Subnet attribute
Description
Displays the total number of Subnets.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Unknown attribute
Description
Displays the total number of Unknown.
Type
Integer (32-bit gauge)
VLAN Objects attribute
Description
Displays the total number of VLAN objects.
Type
Integer (32-bit gauge)
Description
Displays the total number of devices.
Type
Integer (32-bit gauge)
Interfaces attribute
Description
Displays the total number of interfaces.
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Routers attribute
Description
Displays the total number of routers.
Type
Integer (32-bit gauge)
Switches attribute
Description
Displays the total number of switches.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
Displays the total number of packets, per second, processed by the poller.
Type
Integer (32-bit gauge)
Sent attribute
Description
Displays the total number of packets, per second, sent by the poller.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
The average duration of all data collections of this group in seconds.
Type
Real number (32-bit counter) with two decimal places of precision with enumerated values.
The following values are defined: NO DATA (-100). Any value that does not have a definition
here is displayed in the User Interface
Cache Hit Percent attribute
Description
The percentage of external data requests for this group that were satisfied from the cache.
Type
Real number (32-bit counter) with two decimal places of precision
Cache Hits attribute
Description
The number of times an external data request for this group was not available in the cache.
Type
Integer (32-bit counter)
Error Code attribute
Description
The error code associated with the query.
Type
Integer with enumerated values. The following values are defined: NO ERROR (0), GENERAL
ERROR (1), OBJECT NOT FOUND (2), COUNTER NOT FOUND (3), NAMESPACE ERROR (4),
OBJECT CURRENTLY UNAVAILABLE (5), COM LIBRARY INIT FAILURE (6), SECURITY INIT
FAILURE (7), PROXY SECURITY FAILURE (9), NO INSTANCES RETURNED (10), ASSOCIATOR
QUERY FAILED (11), REFERENCE QUERY FAILED (12), NO RESPONSE RECEIVED (13),
CANNOT FIND JOINED QUERY (14), CANNOT FIND JOIN ATTRIBUTE IN QUERY 1 RESULTS
(15), CANNOT FIND JOIN ATTRIBUTE IN QUERY 2 RESULTS (16), QUERY 1 NOT A SINGLETON
(17), QUERY 2 NOT A SINGLETON (18), NO INSTANCES RETURNED IN QUERY 1 (19), NO
INSTANCES RETURNED IN QUERY 2 (20), CANNOT FIND ROLLUP QUERY (21), CANNOT FIND
ROLLUP ATTRIBUTE (22), FILE OFFLINE (23), NO HOSTNAME (24), MISSING LIBRARY (25),
ATTRIBUTE COUNT MISMATCH (26), ATTRIBUTE NAME MISMATCH (27), COMMON DATA
PROVIDER NOT STARTED (28), CALLBACK REGISTRATION ERROR (29), MDL LOAD ERROR
(30), AUTHENTICATION FAILED (31), CANNOT RESOLVE HOST NAME (32), SUBNODE
UNAVAILABLE (33), SUBNODE NOT FOUND IN CONFIG (34), ATTRIBUTE ERROR (35),
CLASSPATH ERROR (36), CONNECTION FAILURE (37), FILTER SYNTAX ERROR (38), FILE
NAME MISSING (39), SQL QUERY ERROR (40), SQL FILTER QUERY ERROR (41), SQL DB
QUERY ERROR (42), SQL DB FILTER QUERY ERROR (43), PORT OPEN FAILED (44), ACCESS
DENIED (45), TIMEOUT (46), NOT IMPLEMENTED (47), REQUESTED A BAD VALUE (48),
RESPONSE TOO BIG (49), GENERAL RESPONSE ERROR (50), SCRIPT NONZERO RETURN (51),
SCRIPT NOT FOUND (52), SCRIPT LAUNCH ERROR (53), CONF FILE DOES NOT EXIST (54),
CONF FILE ACCESS DENIED (55), INVALID CONF FILE (56), EIF INITIALIZATION FAILED (57),
CANNOT OPEN FORMAT FILE (58), FORMAT FILE SYNTAX ERROR (59), REMOTE HOST
UNAVAILABLE (60), EVENT LOG DOES NOT EXIST (61), PING FILE DOES NOT EXIST (62), NO
PING DEVICE FILES (63), PING DEVICE LIST FILE MISSING (64), SNMP MISSING PASSWORD
(65), DISABLED (66), URLS FILE NOT FOUND (67), XML PARSE ERROR (68), NOT INITIALIZED
(69), ICMP SOCKETS FAILED (70), DUPLICATE CONF FILE (71). Any value that does not have a
definition here is displayed in the User Interface
Intervals Skipped attribute
Description
The number of times a background data collection for this group was skipped because the
previous collection was still running when the next one was due to start.
Type
Integer (32-bit counter)
Last Collection Duration attribute
Description
The duration of the most recently completed data collection of this group in seconds.
Description
The most recent time a data collection of this group finished.
Type
Timestamp with enumerated values. The following values are defined: NOT COLLECTED
(0691231190000000), NOT COLLECTED (0000000000000001). Any value that does not have
a definition here is displayed in the User Interface
Last Collection Start attribute
Description
The most recent time a data collection of this group started.
Type
Timestamp with enumerated values. The following values are defined: NOT COLLECTED
(0691231190000000), NOT COLLECTED (0000000000000001). Any value that does not have
a definition here is displayed in the User Interface
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Number of Collections attribute
Description
The number of data collections for this group since the agent started.
Type
Integer (32-bit counter)
Object Name attribute
Description
The name of the performance object.
Type
String
Object Status attribute
Description
The status of the performance object.
Type
Integer with enumerated values. The following values are defined: ACTIVE (0), INACTIVE (1).
Any value that does not have a definition here is displayed in the User Interface
Object Type attribute
Description
The type of the performance object.
Type
Description
The name of the attribute group.
Type
String
Refresh Interval attribute
Description
The interval at which this group is refreshed in seconds.
Type
Integer (32-bit counter)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Total attribute
Description
Displays the total number of threads available for use.
Type
Integer (32-bit gauge)
Description
Displays the total number of SNMP Errors per second.
Type
Integer (32-bit gauge)
Node attribute This attribute is a key attribute.
Description
The managed system name of the agent.
Type
String
Timeouts attribute
Description
Displays the total number of SNMP timeouts per second.
Type
Integer (32-bit gauge)
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Description
The managed system name of the agent.
Type
String
Timestamp attribute
Description
The local time at the agent when the data was collected.
Type
String
Total attribute
Situations reference
A situation is a logical expression involving one or more system conditions. Situations are used to monitor
the condition of systems in your network. You can manage situations from the Tivoli Enterprise Portal by
using the Situation Editor or from the command-line interface using the tacmd commands for situations.
You can manage private situations in the private configuration XML file.
About situations
The monitoring agents that you use to monitor your system environment include a set of predefined
situations that you can use as-is. You can also create new situations to meet your requirements.
Predefined situations contain attributes that check for system conditions common to many enterprises.
Using predefined situations can improve the speed with which you can begin using the IBM Tivoli
Monitoring for IBM Tivoli Network Manager IP Edition. You can change the conditions or values being
monitored by a predefined situation to the conditions or values best suited to your enterprise.
You can display predefined situations and create your own situations using the Situation editor. The
Situation editor initially lists the situations associated with the navigator item that you selected. When you
click a situation name or create a situation, a panel opens with the following tabs:
Formula
Formula describing the condition being tested.
Distribution
List of managed systems (operating systems, subsystems, or applications) to which the situation can
be distributed. All the managed systems are assigned by default.
Expert advice
Comments and instructions to be read in the event workspace.
Action
Command to be sent to the system.
EIF
Customize forwarding of the event to an Event Integration Facility receiver. (Available when the Tivoli
Enterprise Monitoring Server is configured to forward events.)
Until
Options to close the event after a period of time, or when another situation becomes true.
Predefined situations
The monitoring agent contains predefined situations, which are organized by Navigator item.
Agent level Navigator items
• IBM Tivoli Monitoring for Tivoli Network Manager
– Not applicable
• Availability
– Not applicable
– KNP_NCPMONITOR_Process_Down
Situation descriptions
Each situation description provides information about the situation that you can use to monitor the
condition of systems in your network.
The situation descriptions provide the following information:
Description
Information about the conditions that the situation tests.
Formula
Syntax that contains one or more logical expressions that describe the conditions for the situation to
monitor.
Distribution
Whether the situation is automatically distributed to instances of the agent or is available for manual
distribution.
Run at startup
Whether the situation starts monitoring when the agent starts.
Sampling interval
Number of seconds that elapse between one sample of data that the monitoring agent collects for the
server and the next sample.
Situation persistence
Whether the conditions specified in the situation evaluate to "true" for the defined number of
occurrences in a row before the situation is raised. The default of one means that no persistence-
checking takes place.
Severity
Severity of the predefined events: Warning, Informational, or Critical.
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'nco_p_ncpmonitor' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_NCP_CONFIG_Process_Down situation
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_config' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_d_helpserv' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_NCP_G_EVENT_Process_Down situation
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_g_event' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_NCP_MODEL_Process_Down situation
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_model' ) )
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_poller' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_NCP_STORE_Process_Down situation
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_store' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_virtualdomain' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_NCP_WEBTOOL_Process_Down situation
Description
The Network Manager process is not running.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ DOWN ) *AND ( *VALUE
KNP_AVAILABILITY.Application_Component *EQ 'ncp_webtool' ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_Process_CPU_Critical situation
Description
A running Network Manager process has high CPU usage.
Description
CPU usage of the ITNM process is high.
The situation is evaluated for each distinct value of the COMPONENT attribute.
Formula
*IF ( ( *VALUE KNP_AVAILABILITY.Status *EQ UP ) *AND ( *VALUE
KNP_AVAILABILITY.Percent_Processor_Time *LT 80 ) *AND ( *VALUE
KNP_AVAILABILITY.Percent_Processor_Time *GE 20 ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Warning
Clearing conditions
The situation clears when the condition becomes false.
Description
The monitor poller is close to reach the polling capacity.
The situation is evaluated for each distinct value of the TOTAL attribute.
Description
The monitor is near polling capacity.
The situation is evaluated for each distinct value of the TOTAL attribute.
Formula
*IF *VALUE KNP_POLLING_CAPACITY.Total *GE 50
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Warning
Clearing conditions
The situation clears when the condition becomes false.
KNP_Work_Item_Queue_Warning situation
Description
The number of work items in the poller queue is high.
The situation is evaluated for each distinct value of the TOTAL attribute.
Formula
*IF *VALUE KNP_WORK_ITEM_QUEUE.Total *GT 0
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
5 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Description
The total number of entities in the MODEL database is critical.
The situation is evaluated for each distinct value of the ENTITIES attribute.
Formula
*IF ( ( *VALUE KNP_ENTITIES_ON_MODEL_DB.Entities *GE 225000 ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
15 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Critical
Clearing conditions
The situation clears when the condition becomes false.
KNP_Total_Entities_Warning situation
Description
The total number of entities in the MODEL database is high.
The situation is evaluated for each distinct value of the ENTITIES attribute.
Formula
*IF ( ( *VALUE KNP_ENTITIES_ON_MODEL_DB.Entities *GE 200000 ) *AND
( *VALUE KNP_ENTITIES_ON_MODEL_DB.Entities *LE 225000 ) )
Distribution
This situation is automatically distributed to instances of this agent.
Run at startup
Yes
Sampling interval
15 minutes
Situation persistence
The number of times the conditions of the situation must occur for the situation to be true is 1.
Error conditions
Warning
Clearing conditions
The situation clears when the condition becomes false.
Policies reference
Policies are used as an advanced automation technique for implementing more complex workflow
strategies than you can create through simple automation. The IBM Tivoli Monitoring for IBM Tivoli
Network Manager IP Edition agent does not provide predefined policies, but you can create policies for
any agent.
A policy is a set of automated system processes that can take actions, schedule work for users, or
automate manual tasks. You use the Workflow Editor to design policies. You control the order in which the
policy executes a series of automated steps, which are also called activities. Policies are connected to
create a workflow. After an activity is completed, the Tivoli Enterprise Portal receives return-code
feedback, and advanced automation logic responds with subsequent activities prescribed by the
feedback.
For more information about working with policies, see "Automation with policies" in the Tivoli Enterprise
Portal User's Guide.
For information about using the Workflow Editor, see the IBM Tivoli Monitoring Administrator's Guide or
the Tivoli Enterprise Portal online help.
Example commands
The following command reports the status of all components:
itnm_status
itnm_status ncp
Example commands
The following command starts all components in the domain specified during installation:
itnm_start
Example commands
The following command stops only the Network Manager components in the domain specified during
installation:
itnm_stop ncp
Procedure
1. On the relevant Dashboard Application Services Hub, open a command window.
2. Change to the $JazzSM_HOME/profile/bin directory.
3. Stop the server by using the following command:
stopServer.sh server1
Note: You are prompted to supply the user name and password of the administrative user.
4. Wait a moment for the server to completely shut down and, confirm that all Java processes stopped
running.
The following messages confirm that the server is shut down:
startServer.sh server1
Process control
Network Manager processes run under the control of the Master process controller, ncp_ctrl.
Example commands
The following command starts the ncp_ctrl process in the NCOMS domain:
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the
ncp_ctrl process.
-debug DEBUG The level of debugging output (1-4, where 4 represents the most
detailed output).
-help Displays the command line options. Does not start the
component even if used in conjunction with other arguments.
-latency LATENCY The maximum time in milliseconds (ms) that the ncp_ctrl
process waits to connect to another Network Manager process
using the messaging bus. This option is useful for large and busy
networks where the default settings can cause processes to
assume that there is a problem when in fact the communication
delay is a result of network traffic.
-logdir DIRNAME Specifies the directory where log files are to be added and
directs log messages for each process started by the ncp_ctrl
process to a separate file in the specified directory.
-nologdir Turns off log file writing and prints log messages on screen.
-version Displays the version number of the component. Does not start
the component even if used in conjunction with other
arguments.
Prequisites
For ncp_class to run, it requires access to the NCIM database. The connection and access to the database
is performed automatically, you do not need to do anything.
The AOC files define the class hierarchy. There is a copy of this hierarchy in the entityClass NCIM
database table. If changes are made to the AOC files, ncp_class updates the entityClass database
table when it connects to the NCIM database to reflect any changes to the AOC hierarchy.
Note: If you create a new AOC file, you should also add a new insert to the class.classIds database
table in the ClassSchema.cfg configuration file.
Example commands
The following command starts the ncp_class process manually in the NCOMS domain:
Option Explanation
-domain DOMAIN_NAME The name of the domain under which to run ncp_class.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
Option Explanation
-help Displays the command line options. Does not start the
component even if used in conjunction with other arguments.
-latency LATENCY The maximum time in milliseconds (ms) that ncp_class waits to
connect to another Network Manager process by means of the
messaging bus. This option is useful for large and busy networks
where the default settings can cause processes to assume that
there is a problem when in fact the communication delay is a
result of network traffic.
-read_aocs_from DIRECTORY_NAME The full path of the directory from which to read the AOC
definitions.
When ncp_class is launched it obtains the AOC definitions either
from this directory or from the cache files contained in
NCHOME/var/precision.
• If you omit the -read_aocs_from argument from the
command line, ncp_class automatically reads the cache files
from NCHOME/var/precision if they are present. If there
are no valid cache files, ncp_class uses the definitions in
NCHOME/precision/aoc.
• If you specify a directory using the -read_aocs_from
option, ncp_class initializes itself with the AOCs located in the
specified directory. The ncp_class process automatically
moves any existing cache files to a backup directory.
Regardless of the options specified, ncp_class generates a
warning if the files within the NCHOME/precision/aoc
directory are more recent than the cache files contained within
the NCHOME/var/precision directory.
For more information about failover, see the IBM Tivoli Network
Manager IP Edition Installation and Configuration Guide.
-version Displays the version number of the component. Does not start
the component even if used in conjunction with other
arguments.
Example commands
The following example command starts the ncp_config process in the domain NCOMS with the highest
level of debugging output.
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the
ncp_config process. Data saved in the GUI is saved to the
domain name that you specify here.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
-help Displays the command line options. Does not start the
component even if used in conjunction with other
arguments.
-latency LATENCY The maximum time in milliseconds (ms) that the ncp_config
process waits to connect to another Network Manager
process using the messaging bus. This option is useful for
large and busy networks where the default settings can
cause processes to assume that there is a problem when in
fact the communication delay is a result of network traffic.
-logfileusepool Enable log pooling. This setting is off by default. For more
information about how to use the log settings, see “Avoiding
process errors with large trace or log files by using log file
rotation” on page 33.
-logfilepoolsize Set the log pool size. Valid values are: 2 to 99. The default
value is 10. For more information about how to use the log
settings, see “Avoiding process errors with large trace or log
files by using log file rotation” on page 33.
Option Explanation
-query QUERY A query statement to pass to the OQL Service Provider. This
option is designed to run the ncp_config process in batch
mode. In batch mode, ncp_config processes the OQL
query statement against the requested database, writes the
schema files, and exits.
-read_schemas_from The full path of the directory from which the ncp_config
DIRECTORY_NAME process reads the schema files. This command line option
can only be used when starting the ncp_config process
manually.
If this option is not specified, NCHOME/etc/precision is
used as a default.
-write_schemas_to The full path to which the ncp_config process writes the
DIRECTORY_NAME schema files. This command line option can only be used
when starting the ncp_config process manually.
If no path is specified, the ncp_config process updates the
files in the source directory, saving a backup of the existing
schema.
Example commands
The following command starts ncp_disco in the domain NCOMS:
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the ncp_disco
process.
-debug DEBUG The level of debugging output (1-4, where 4 represents the most
detailed output).
-help Displays the command line options. Does not start the component
even if used with other arguments.
-latency LATENCY The maximum time in milliseconds (ms) that the ncp_ctrl process
waits to connect to another Network Manager process by using the
messaging bus. This option is useful for busy networks where
processes can assume that a problem occurred, when in fact the
communication delay is a result of network traffic.
-LoadCacheIntoMem CACHE_DOMAIN Loads discovery cache files from CACHE_DOMAIN into memory for a
discovery in another domain.
This option is for specialist use, as a replacement for loading cache
files onto disk.
Option Explanation
-version Displays the version number of the component. Does not start the
component even if used with other arguments.
Example commands
The following command starts the Helper Server in the domain NCOMS:
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the Helper
Server.
-debug DEBUG The level of debugging output (1-4, where 4 represents the most
detailed output).
-help Displays the command line options. Does not start the component
even if used with other arguments.
Option Explanation
-version Displays the version number of the component. Does not start the
component even if used with other arguments.
Starting helpers
Provided that the Helper Server is launched by CTRL, the individual helpers are automatically started as
and when they are required.
The only situation in which you might need to configure an insert for an individual helper into the
disco.managedProcesses table would be if you wanted to start that helper on a remote machine (that is, a
machine other than the one that is running the Helper Server). In this situation, you would insert the
required helper into the disco.managedProcesses table, specifying the appropriate remote host in the
m_Host field.
Example commands
The following command starts the Helper Server in the domain NCOMS:
Attention: If you are using Network Manager with failover, you must start the Event Gateway using
the ncp_ctrl process. The ncp_ctrl process checks the status of the Event Gateway
component and uses this information to generate the health check events used by the failover
process.
For more information about failover, see the IBM Tivoli Network Manager IP Edition Installation and
Configuration Guide.
Option Description
-domain DOMAIN_NAME Required. The name of the domain under which to run
ncp_g_event.
Example commands
It is best practice to configure the ncp_ctrl process, the master process controller, to launch and
manage the ncp_model process. You can configure the behavior of the ncp_model process when it is
started by using the command line options.
The following example command starts the ncp_model process in the domain NCOMS:
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the
ncp_model process.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
-help Displays the command line options. Does not start the
component even if used in conjunction with other
arguments.
Usage considerations
Use this command only to troubleshoot IBM Tivoli Network Manager IP Edition.
The nco_p_ncpmonitor command starts the Probe for Tivoli Netcool/OMNIbus independently of the
domain process controller ncp_ctrl. If you are using Network Manager with failover, you must start the
Probe for Tivoli Netcool/OMNIbus using ncp_ctrl. The ncp_ctrl process checks the status of the Probe for
Tivoli Netcool/OMNIbus and uses this information to generate the Health Check events used by the
failover process.
There are no dependencies for starting the Probe for Tivoli Netcool/OMNIbus.
-debug DEBUG The level of debugging output (1-4, where 4 represents the most detailed
output).
-domain DOMAIN_NAME Required. The name of the domain under which Network Manager processes
are running.
–help Prints out a synopsis of all command line options for the component.
If specified, the component is not started.
-latency LATENCY The maximum time in milliseconds (ms) that the component waits to
connect to another Network Manager process via the messaging bus. This
option is useful for large and busy networks where the default settings can
cause the process to assume that there is a problem when in fact the
communication delay is a result of network traffic.
Usage considerations
It is best practice to configure the ncp_ctrl process, the master process controller, to launch and
manage the ncp_poller process.
Attention: If you are using Network Manager with failover, you must start the ncp_poller
process by using the ncp_ctrl process. The ncp_ctrl process checks the status of the
ncp_poller process and uses this information to generate the health check events used by the
failover process.
Prerequisites
Before you manually start the ncp_poller process, the following Network Manager processes must be
running:
• The ncp_model process must be running in order to pass the network topology to the polling
subsystem.
• The Probe for Tivoli Netcool/OMNIbus must be running to transfer events to the ObjectServer.
Example commands
The following example command starts the ncp_poller process in the domain NCOMS:
-debug DEBUG The level of debugging output (1-4, where 4 represents the most
detailed output).
-deregister Deregisters a poller. Any polls assigned to a poller that is not
registered will not run.
-domain DOMAIN_NAME Required. The name of the domain under which to run this instance
of ncp_poller.
-force Forces deregistration of the poller. Deletes all polling policies
assigned to the named poller.
-help Prints out a synopsis of all command-line options for this instance of
ncp_poller then exits.
-latency LATENCY The maximum time in milliseconds (ms) that this instance of
ncp_poller process waits for a response to a query of another
Network Manager process. This option is useful for large and busy
networks where the default settings can cause the process to
assume that there is a problem when in fact the communication
delay is a result of network traffic.
For large topologies, make sure you set a value of at least a few
minutes.
-name Run as a named poller. Only polls assigned to this poller will be run.
-readsnmpconfig Instructs the poller to read the configuration from the
SnmpStackSecurityInfo.cfg file and write it to the configuration
database.
For more information on failover, see the IBM Tivoli Network Manager IP Edition Installation and
Configuration Guide.
Example commands
It is best practice to configure the ncp_ctrl process, the master process controller, to launch and
manage the ncp_store process. You can configure the behavior of the ncp_store process when it is
started by using the command line options. The following example command starts the ncp_store process
in the domain NCOMS:
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the
ncp_store process.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
-help Displays the command line options. Does not start the
component even if used in conjunction with other
arguments.
Option Explanation
-latency LATENCY The maximum time in milliseconds (ms) that the ncp_store
process waits to connect to another Network Manager
process by means of the messaging bus. This option is
useful for large and busy networks where the default
settings can cause processes to assume that there is a
problem when in fact the communication delay is a result of
network traffic.
Usage considerations
Virtual Domain is used when running Network Manager with failover.
It is best practice to configure the ncp_ctrl process, the master process controller, to launch and
manage Virtual Domain. You can configure the behavior of the process when it is started by using the
command line options.
Example commands
The following example command starts the ncp_virtualdomain process in the domain NCOMS:
Option Description
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
Option Description
-domain DOMAIN_NAME Required. The name of the domain under which the
Network Manager component is running. This name must
be different for the primary and backup Network Manager
servers.
-latency LATENCY The maximum time in milliseconds (ms) that the Virtual
Domain component waits to connect to another Network
Manager process using the messaging bus.
Usage considerations
The ncp_webtool process transfers the running of the Web tools to the backend server in environments
where Topoviz is running on a different server to the Network Manager backend processes and there is a
firewall between the two. This transfer makes the Web tools available across such distributed
environments.
You do not need to interact directly with ncp_webtool process, because it is a sever-time application that
runs without user input.
It is best practice to configure the ncp_ctrl process, the master process controller, to launch and manage
the ncp_webtool process. You can configure the behavior of the process by using the command line
options.
Example commands
The following command starts ncp_crypt and encrypts the password provided:
Note: All password encryption in Network Manager is performed using FIPS 140–2 compliant algorithms.
The following command starts ncp_crypt and decrypts the password provided:
Option Explanation
Option Explanation
-decrypt Optional. Overrides the default and instructs ncp_crypt to decrypt the
password.
-help Optional. Displays the command line options. Does not start the
component even if used in conjunction with other arguments.
-version Optional. Displays the version number of the component. Does not start
the component even if used in conjunction with other arguments.
Prerequisites
All MIBs must be valid in order to be parsed correctly.
There are no process dependencies for the ncp_mib process.
Example commands
The following command starts the ncp_mib process using the generic MibDbLogin.cfg file:
ncp_mib
The following command starts the ncp_mib process using the MibDbLogin.NCOMS.cfg file:
The following example database query verifies that a MIB has loaded successfully. You must run ncp_mib
before running this database query.
When processing completes, a message states that the MIBs have been committed to the database.
Example commands
The following example command starts the ncp_oql process (known as the OQL Service Provider) in the
domain NCOMS:
The following example command starts the OQL Service Provider with a username and password supplied
on the command line:
Option Explanation
-dbId DATABASE_ID This option is only valid when used in conjunction with the
ncim service. Choose the database from DbLogins to
connect to. The default value is NCIM.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
-domain DOMAIN_NAME Required. The name of the domain in which the processes
that you want to query are running. The process whose
databases you wish to query must be running in order for
the databases to be queried.
-latency LATENCY The maximum time in milliseconds (ms) that the service
provider waits to connect to another Network Manager
process using the messaging bus. This option is useful for
large and busy networks where the default settings can
cause processes to assume that there is a problem when in
fact the communication delay is a result of network traffic.
The default value is 3000 (equivalent to 3 seconds). You
might want to increase this value as the default value might
not be long enough to get a response from a large or busy
OQL database.
Option Explanation
-plugin The Event Gateway stitcher plugin to connect to. Takes the
value of the subdirectory of the relevant stitcher.
Option Explanation
-schema PATH_TO_SCHEMA_FILE This option is only valid when used in conjunction with the
ncp_config service. Specifies a schema file to use.
-server SERVER_NAME This option is valid only with the ObjectServer service. It
defaults to the current ObjectServer given in the ConfigItnm
file.
-service SERVICE_NAME Required. The service you want to interrogate. Run ncp_oql
with the -options command line option to list all available
services.
-username USERNAME The username to use to log into the service provider.
Required if the OQL Service Provider is running in
authentication mode.
Example commands
The following command starts the ncp_store process in the domain NCOMS.
Option Explanation
-domain DOMAIN_NAME Required. The name of the domain under which to run the trap
multiplexer.
-debug DEBUG The level of debugging output (1-4, where 4 represents the most
detailed output).
Option Explanation
-help Displays the command line options. Does not start the component
even if used in conjunction with other arguments.
-latency LATENCY The maximum time in milliseconds (ms) that the ncp_trapmux process
waits to connect to another Network Manager process by means of the
messaging bus. This option is useful for large and busy networks where
the default settings can cause processes to assume that there is a
problem when in fact the communication delay is a result of network
traffic.
Scheduled discovery
You can schedule a full discovery to start at a certain time. For example, you can schedule a full discovery
to run at the same time every night, or at the same time on the same day every week, or at the same time
every day of the month.
Scopes
Define the zones of the network (that is, subnet ranges) that you want to include in the discovery, and the
zones that you want to exclude. The areas of the network to be included in the discovery process, or
excluded from the discovery process are collectively known as the discovery scope.
There are several benefits to limiting the discovery scope:
• It is important to limit discovery scope because the range of IP addresses considered by the default
discovery process is potentially unlimited. Without a scope, the discovery attempts to recognize every
network device. By limiting the scope, you can concentrate on the important areas of your network.
Types of scoping
Network Manager offers several types of scoping.
You can enable the following types of scoping:
• You can include or exclude areas of your network (either subnet ranges or specific devices) in the
discovery. Each configured area is referred to as a zone.
Tip: If your subnet is sparsely populated, including individual routers is likely to result in a faster
discovery than including the whole subnet.
• Zones can be specified within zones: within a given inclusion zone, you can specify devices or subnets
that are not to be detected. These devices are not pinged by the Ping finder or interrogated by the
discovery agents. For example, you can define an include scope zone consisting of the Class B subnet
1.2.0.0/16, and within that zone you can specify an exclude scope zone consisting of the Class C subnet
1.2.3.0/24. Finally, within the exclude scope zone you could specify an include scope zone
1.2.3.128/26.
• You can include or exclude non-IP devices, such as layer 1 optical devices, using a filter.
• You can configure a filter that determines whether a discovered device is interrogated for connectivity
information.
• You can configure multicast scoping. This enables you to configure which multicast subnets to use as
scopes for your multicast discovery.
Inclusion zone
Use this information to understand how an inclusion zone works.
The following figure shows an inclusion zone, 172.18.1.0/24.
• An entity with IP address 172.18.1.33 is within the inclusion zone and is therefore discovered.
• An entity with IP address 172.18.2.33 is outside the inclusion zone and is therefore not discovered.
Figure 1. Inclusion zone, with device inside and outside the zone.
Exclusion zone
Use this information to understand how scoping works for an exclusion zone works.
The following figure shows an exclusion zone, 172.18.1.0/24.
• An entity with IP address 172.18.1.33 is within the exclusion zone and is therefore not discovered.
• An entity with IP address 172.18.2.33 is outside of the exclusion zone and is therefore discovered.
The above example defines three different IP inclusion zones each using a different syntax to define the
subnet mask. Network Manager discovers:
Procedure
• Any device that falls within the 172.16.1.0 subnet (with a subnet mask of 24, that is, 24 bits turned on
and 8 bits turned off, which implies a netmask of 255.255.255.0).
• Any device with an IP address starting with "172.16.2", that is, in the 172.16.2.0 subnet with a mask
of 255.255.255.0.
• Any device that falls within the 172.16.3.0 subnet with a mask of 255.255.255.0.
Example
Preventing the Interrogation of a Device Based on the IP Address
In this example only devices that do not have the IP address 10.10.63.234 are interrogated further.
The backslash must be used in the above insert to escape the ., which would otherwise be treated as
a wildcard.
Combining Multiple Filter Conditions
The following example shows how you can combine filter conditions within a single OQL insert. This
example ensures that only devices that do not have the specified OID and do not have the specified IP
address are detected.
Seeds
Configure seeds to specify the locations from which to begin discovering devices. Discovery seeds can be
IP addresses, or subnet addresses.
You can specify seeds in several ways:
• Using the Ping finder: You specify the IP addresses or subnet addresses to discover first.
• Using the File finder: You provide one or more files that each contain a list of IP addresses or subnet
addresses.
• Using the Database finder: You specify connection details for an internal or external database that
contains details of devices to discover. You also specify an SQL query to run to retrieve the device
details from the database. An advantage of using the Database finder over the File finder is that you can
Device access
Configure device access by specifying SNMP community strings and Telnet parameters so that the system
can access network devices.
Configure device access as follows:
• Specify SNMP community strings so that Network Manager can access and interrogate the network
devices that use SNMP. Network Manager supports SNMP v1, v2, and v3,
• Specify Telnet parameters so that Network Manager can access and interrogate the network devices
that use Telnet.
Agents
Use discovery agents to retrieve information about devices on the network. Select the right agents for
your discovery depending on your network type.
Discovery agents retrieve device details and investigate device connectivity. They can also report the
existence of new devices by finding new connections when investigating device connectivity. The
discovery agents can be used for specialized tasks. For example, the ARP Cache discovery agent
populates the Helper Server database with IP address to MAC address mappings.
Default agents are provided for the type of discovery you want to perform, for example a layer 2 or layer 3
discovery. You can select different sets of agents for full discoveries and for partial discoveries. The
agents vary because connectivity information varies with the technology of the hardware in the network.
Device filters
Use prediscovery filters to increase the efficiency of discovery.
After you have defined the scope of your discovery using the Scope tab, it is possible to restrict the scope
using filters. For example, you might want to maintain the scope zones that you defined earlier but restrict
the scope based on location (for example, New York hardware only) or based on hardware supplier (for
example, Cisco devices only).
You can filter out devices based on a variety of criteria, including location, technology, and manufacturer.
By default, the discovery filters do not filter out the Network Manager host because it usually also serves
as the polling station for root cause analysis. For root cause analysis to work correctly, the polling station,
and hence the Network Manager host machine, must be part of the topology.
For more information on root cause analysis, see the IBM Tivoli Network Manager IP Edition
Administration Guide and the IBM Tivoli Network Manager User Guide.
If you do need to filter out the Network Manager host, then you need to modify the following stitchers and
remove the sections of code, indicated by comments, that prevent the Network Manager host from being
filtered. The stitchers are DetectionFilter.stch and InstantiationFilter.stch.
Post-discovery filter
The post-discovery filter is not available when discovery is running in dNCIM mode.
ipAddrTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpAddrEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The table of addressing information relevant to
this entity's IP addresses."
::= { ip 20 }
The syntax "SEQUENCE OF" defines this as a table. You can find out what tables are defined in the MIB by
searching for this string. The following example shows the output of a search run on UNIX:
Advanced settings
Configure advanced discovery settings to increase the speed of the discovery, and balance the speed with
the load on the server. Generally, a faster discovery results in more memory usage on the server.
Advanced settings control features of the discovery such as concurrent processes and timeouts.
Note: Modify the advanced settings only if you are an experienced Network Manager user.
You can configure the following advanced discovery settings:
Finder parameters:
Finders are discovery subsystems that discover devices on the network. You can configure parameters
such as timeouts, number of retries, and number of threads for the finders.
Helper parameters
Helpers are discovery applications used by agents to retrieve information from devices. You can
configure parameters such as timeouts, number of retries, and number of threads for the helpers.
Other parameters
You can configure complex discovery settings, such as enabling caching of discovery tables, VLAN
modeling, File finder verification, and parameters that affect the speed of partial discovery.
Most of the advanced discovery parameters are optional.
Context-sensitive discovery
If you need to discover devices that support multiple contexts, you must run a context-sensitive
discovery. For example, a device that uses separate SNMP contexts to provide access to its virtual routers.
Context-sensitive discovery ensures correct representation of context-accessible virtual devices. Always
check that your particular device type is supported for discovery.
In a context-sensitive discovery, information about a device is passed from the returns table of the
Details agent to the despatch table of the relevant Context agent.
The Context agents use the filters in the .agnt files of the agents to determine which devices to process.
This approach is true for all discovery agents. If the device is not of a type that supports context-
accessible virtual devices, that is, does not need context-sensitive processing, it is passed directly to the
Associated Address agent.
Helpers
The helpers are specialized applications that retrieve information from the network on demand. The
default helper configuration is sufficient for most networks. However, you might decide to alter the
configuration for several reasons.
Configuring the Helper System can speed up network discovery, but is recommended for experienced
users.
Collectors
Collectors are like agents, except they do not discover information from devices, but collect it from
Element Management Systems (EMSs). Enable and configure the right collectors for your discovery if you
use an EMS.
Collectors are separate processes that are started independently of the ncp_disco process. Collectors
connect to an EMS or parse files from an EMS to collect data about the devices managed by the EMS.
Each Collector that you need to run must be configured to connect to the appropriate EMS.
Specialized discoveries
You can configure the system to perform more complex discoveries, such as Multiprotocol Label
Switching (MPLS) and Network Address Translation (NAT) discovery.
Specialized discoveries include:
Element Management System (EMS) discoveries
Collect topology data from Element Management Systems and integrates this data into the discovered
topology.
MPLS discoveries
Discover layer 3 virtual private networks (VPNs) and enhanced layer 2 VPNs running across MPLS core
networks.
NAT discoveries
Discover NAT gateway devices to retrieve data on devices in private address spaces.
Third-party discoveries:
Discover intervening provider networks as a "third-party" object on multiple networks that run across
a provider network (for example, enterprise VPNs across a provider MPLS core network).
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. At the top left of the Network Discovery Configuration tab, select the domain in which you want to run
a discovery from the Domain menu.
3. Click the wizard button to the right of the Domain menu.
Procedure
1. Select Scoped or Unscoped.
Scoped
A scoped discovery restricts the discovery to a certain part of your network. To specify a scoped
discovery, tell the wizard which area of the network to restrict the discovery to, and assign IP
addresses or subnets as seeds to ping to begin the discovery.
Attention: If there are routes out of your network to the Internet, an unscoped discovery
will find these routes and start to discover parts of the Internet.
2. If you selected Scoped, specify which area of the network to which to restrict the discovery.
Specify one or more subnets to use for both scoping and seeding by clicking New and typing an IP
address and a netmask.
Restriction: For performance reasons, only IPV4 addresses will be pinged. To ping IPV6 addresses use
the Seed tab in the Discovery Configuration GUI.
3. If you selected the Unscoped option, specify the seeds to use for your unscoped discovery.
Click New… and specify one or more IP addresses.
Procedure
1. For each SNMP community string and associated password that you want to define:
a) Click the New icon above the SNMP Community Strings table to display the SNMP Password
Properties window.
b) Specify address-specific, subnet-specific, or global SNMP community strings, and supply
passwords for these community strings in the case of SNMP V3.
You might need to enter a community string more than once. For example, enter a string for SNMP
V1, enter another string for SNMP V2, and another string for SNMP V3.
Specifying community strings by subnets results in a more efficient and faster discovery.
Restriction: It is best practice not to use the at symbol (@) in community strings. Using this symbol
in a community string can cause problems connecting to devices at discovery time.
2. Use the up and down arrow keys to put the community strings in order of most frequently expected
use. Put more frequently used community strings at the top.
Procedure
1. After you have specified SNMP community strings, click the New icon on the Telnet Access window.
2. For each set of Telnet-accessible devices for which you want to define prompts and passwords, click
New.
Procedure
1. On the Discovery Type window, specify a Layer 2 or Layer 3 discovery.
2. If you selected Layer 3, the End Node Discovery window is displayed.
On the End Node Discovery window, you can filter out end node devices such as workstations and
printers. You can also filter out devices with no SNMP access.
Tip: Filtering out all end nodes in networks that have large numbers of end nodes can lead to speed
and performance improvements in your discovery.
3. If you selected Layer 2 and Layer 3, the VLAN Modelling window is displayed.
In the VLAN Modelling window, you configure the discovery to model VLANs in the resulting topology.
This enables VLANs to be considered when performing root cause analysis. VLANs are a Layer 2
concept and VLAN modelling is required for Layer 2 discoveries only. Specify whether you want to
model VLANs. When you have specified an option, click Next to display the End Node Discovery
window.
Procedure
1. Provide varying amounts of connectivity information by selecting one of these options.
Best possible connectivity accuracy and richness of information
This option provides comprehensive connectivity information between switches, end nodes and
routers as well as detailed information on each device discovered. However, the discovery might
require a significant amount of time to complete.
Best possible connectivity accuracy but prefer speed to richness of information
This option provides comprehensive connectivity information. However, the discovery provides less
detailed information on each device discovered in order to provide a faster discovery.
Rich device information but prefer speed to accurate connectivity
This option provides detailed information on each device discovered. However, the discovery
provides less detailed connectivity information to provide a faster discovery. For example, the
discovery might provide information on how switches are connected to each other, but it might not
provide information on connectivity between switches and end nodes or between switches and
routers.
Procedure
1. Review the settings on the Configuration Summary window.
Click any of the links to return to the relevant window to modify the settings as appropriate.
2. When you are satisfied with the discovery settings, select one of these options.
• Select Start Discovery, to use the discovery configuration settings that you specified, and then click
Finish to start the discovery.
• If you do not select Start Discovery, the discovery settings are saved when you click Finish.
Scoping discovery
To scope the discovery for IP-based devices and subnets, define the zones of the network (that is, subnet
ranges) that you want to include in the discovery, and the zones that you want to exclude.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click Scope.
8. Click Save .
What to do next
If you are performing NAT address mapping, you must configure the NAT gateways and return to the
Scope tab to set the address mapping.
Seeding discovery
To seed the discovery, provide the starting points from which to look for devices.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click Seed.
4. Optional: To switch off the Ping finder or File finder clear the Use Ping Finder in Discovery or Use
File Finder in Discovery check boxes.
5. Add or edit a ping seed:
What to do next
You can also seed a discovery by using the Collector finder. The collector finder retrieves topology data
from an EMS. Topology data is collected by EMS collectors, which are software modules that retrieve
topology data held in an EMS database, convert this data to XML format and pass this data to Network
Manager to stitch into the topology. You must seed the Collector finder to enable Network Manager to find
one or more EMS collectors.
The time estimates shown in the table refer to time taken to ping all the seeds in a subnet seed specified
for the Ping finder. It would take longer to complete the discovery as there will be many more devices to
ping within the discovery scope.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click Passwords.
Results
When you save the Telnet password settings, the following passwords are automatically encrypted:
• Telnet password
• Telnet privileged mode password (if specified)
When you save the password settings, the following passwords are automatically encrypted:
• SNMP community string
• SNMP authentication password
• SNMP private password
What to do next
If required, change the SNMP and Telnet encryption settings. For example, you can change the encryption
key file, or switch off encryption.
Activating agents
You must enable the appropriate agents for the discovery you want to perform. You can specify agents for
a full discovery or for a partial discovery.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click one of the following tabs, based on your requirements:
Tab Description
Full Discovery Select agents from this tab to run a full discovery.
Agents
Partial Discovery Select agents from this tab to run a partial discovery.
Agents
Note: The Reset button in the Partial Discovery Agents window sets the
partial agents to match the settings defined in the Full Discovery Agents
window.
The Agents List is displayed, showing all available discovery agents for the selected discovery option.
4. Select the check boxes next to the required agents.
For descriptions of the agents, select an agent name.
To select all agents required for a layer 3 discovery, select the Layer 3 checkbox. To select all agents
required for a layers 2 and 3 discovery, select the Full Layer 2 and Layer 3 Discovery checkbox.
5. Click Save .
If you have selected a invalid combination of agents, or a combination that might result in an inefficient
discovery, a warning is displayed.
6. If applicable, follow the steps displayed in the warning:
• If you selected an agent that must be run in conjunction with another agent or agents, the warning
indicates that the additional agents will be selected as applicable. Click OK to select the agents, or
click Cancel.
• If you selected an agent that cannot be run in conjunction with another agent or agents, the
warning indicates that the redundant agents will be automatically deselected. Click OK to deselect
the recommended agent or click Cancel.
The steps for adding, editing, and deleting filters are identical for both types.
To set the discovery filters:
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
c) Click Add New Row or Delete This Row to add or remove rows.
d) Select All to combine multiple conditions in an AND relationship, or Any combine the conditions in
an OR relationship.
e) Click Save.
9. Optional: On the Advanced tab, type the required SQL WHERE clauses. For multiple conditions, use
an AND or an OR relationship as appropriate. Click Save.
Note: The filter is actually based on standard OQL formatting, though the GUI refers to the SQL
clause.
10. Click Close to close the Filter Library, then click Save to save your filter settings.
m_Protocol = 4
Only pass non-IP devices to discovery and exclude the non-IP devices with a specified unique key
The following example insert ensures that only non-IP devices are passed to discovery and the non-IP
devices that are passed must not include the specified string in their unique Element Management
System (EMS) key.
( m_Protocol = 4 )
AND
( m_UniqueAddress NOT LIKE 'LONDON' )
BASENAME != 'jane'
What to do next
For more information on OQL syntax, see the IBM Tivoli Network Manager Reference.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click the DNS tab.
4. Add a new DNS helper, or edit an existing helper as follows:
8. Click Save .
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click NAT.
4. Add a new NAT gateway, or edit an existing gateway:
6. Click Save .
7. To activate NAT translation for the discovery, select Enable Network Address Translation (NAT)
Support. Click Save and then map the discovery scope zones to the NAT address spaces:
a) Click Scope.
b) Click a scope zone to edit it.
The Scope Properties page is displayed.
c) In the Address Space field, enter the NAT address space and click OK.
The Address Space field appears on the Scope Properties only after the Enable Network Address
Translation (NAT) Support has been selected.
d) Repeat the previous two steps for all the required scope zones.
e) Click Save .
NAT Address Spaces Dynamic Distinct view is created automatically if Enable Network Address
Translation (NAT) Support is turned on. Once discovery is complete, use the Network Views to
visualize the NAT Address Spaces network view.
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click the Full Discovery Agents tab.
The Agents List is displayed, showing all available discovery agents for the selected discovery option.
4. Click Full Layer 2 and Layer 3 Discovery > Multicast.
5. Select the check box next to the agents you want to enable.
a) Enable the StandardPIM agent to discover protocol-independent multicast groups compliant with
the RFC2934 PIM MIB.
b) Enable the StandardIPMRoute agent to discover IP multicasting networks compliant with the
RFC2932 IPMRoute MIB.
c) Enable the StandardIGMP agent to discover multicast groups running the Internet Group
Membership Protocol (IGMP).
6. Click Save .
Procedure
1. Click the Discovery icon and select Network Discovery Configuration.
2. From the Domain list, select the required domain.
3. Click Multicast.
4. In the Multicast Groups section, create a new multicast group or edit an existing group:
7. To delete one or more groups, select the groups you want to delete and click the Delete button .
To select or deselect all groups, click the Select All or Deselect All button.
8. In the Multicast Sources section, create a new multicast source or edit an existing source.
11. To delete one or more groups, select the groups you want to delete and click the Delete button .
To select or deselect all groups, click the Select All or Deselect All button.
1 Devices are typically discovered using IP addresses retrieved by the AssocAddress agent. If a device is
discovered using an IP address that was not retrieved by the AssocAddress agent, then the IP address is
probably non-standard. This type of IP address is called a virtual IP address. Examples of virtual IP
addresses are HSRP and VRRP addresses, which are shared by multiple devices for fault tolerance. Other
examples include certain management interfaces that might be on a single device but do not appear in the
IP table for security reasons. Virtual IP addresses include management addresses. A management address
is an IP address whose only role is to manage the device. Management addresses are often on a separate
network isolated from the customer traffic. These addresses are defined in the scope.special table.
Starting a discovery
After you configure a discovery, you can start and, if necessary, stop the discovery.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Select the domain in which you want to run a discovery from the Domain menu. You can start to type
the name of the domain, and matching domains are listed below the Domain field.
3. Start a full or partial discovery:
• To start a full discovery, click Start Discovery only. The discovery starts.
• To start a partial discovery, click the downward-facing arrow next to the Start Discovery button
and select Start Partial Discovery from the menu (if a full discovery has not been run since
the last time that the discovery engine, ncp_disco, was started, the option to start a partial
discovery is grayed out). The Partial Discovery window is displayed. Specify the IP addresses and
subnets that contain the devices to be discovered:
a) Under Partial Discovery, select the required nodes and subnets.
b) To add a new subnet or node, click New.
e) To add a new discovery scope zone click New . To edit an existing scope zone, click the required
entry in the list.
f) Complete the fields as follows and click OK:
Action
Define the subnet range as an inclusion zone or exclusion zone. If the subnet range is an
inclusion zone that you intend to ping during the discovery, click Add to Ping Seed List. Clicking
this option automatically adds the devices in the scope zone as a discovery seed devices.
Restriction: The Add to Ping Seed List option is not available for IPv6 scope zones. This
prevents ping sweeping of IPv6 subnets, which can potentially contain billions of devices to be
pinged. Ping sweeping of IPv6 subnets can therefore result in a non-terminating discovery.
g) Click OK then click Go.
When a full or partial discovery is running, the Start Discovery button is toggled off .
4. To stop a discovery, click Stop Discovery . The discovery might take a short time to stop, during
which time both the Start Discovery and Stop Discovery buttons are toggled off. If you stop a
discovery, you cannot then do a partial discovery until after the next full discovery.
Note: When you stop a discovery, the discovery cache is lost. This is why you must wait for the
completion of the next full discovery before being able to perform a partial discovery. It is possible to
configure the Discovery engine to save the discovery cache as the discovery is running, which would
enable you to run a partial discovery immediately following the manual stop of a discovery. You can
configure the Discovery engine to save the discovery cache by clicking Enabling Caching of Discovery
Tables in the Advanced tab.
Results
While the discovery is running, you can monitor the progress of the discovery.
Note: You cannot stop the discovery from the GUI in the correlating connectivity phase. Stopping the
discovery process from the command line while the topology is being created can corrupt the discovery.
What to do next
After the discovery is complete, the Start Discovery button is toggled on, and you can run another full or
partial discovery at any time. If the Event Gateway Disco plug-in is enabled, then a new discovery can be
triggered automatically when a reboot event (event ID of NmosSnmpReboot triggered by the
rebootDetection poll policy) is received.
Table 39. Schemas and tables to which the discovery parameters are mapped
Network
Discovery
Configuration
tab Description Schema or table name
Scope The zones of the network (that is, subnet DiscoScope.DOMAIN_NAME.cfg
ranges) that you want to include in the
discovery, and the zones that you want to
exclude.
Seed The location from which to begin discovering Ping finder:
devices. This might be one or more IP DiscoPingFinderSeeds.DOMAIN_NAME.c
addresses, or subnet addresses. To seed the fg
discovery, the following finders are used: Ping
finder and File finder. File finder:
DiscoFileFinderParseRules.DOMAIN_N
AME.cfg
DiscoAgentSupportedDevices
(
" (
( m_ObjectId like '1\.3\.6\.1\.4\.1\.9\..*' )
AND
( m_ObjectId <> '1.3.6.1.4.1.9.1.226' )
) "
);
DiscoAgentSupportedDevices
(
" ( m_UniqueAddress like '10\.10\.2\..*' ) "
);
DiscoAgentSupportedDevices
(
"(
( m_ObjectId = '1.3.6.1.4.1.9.5.7' )
AND
( m_UniqueAddress like '^10\.10\..*' )
AND
( m_Name not like '.*[cC]landestin[eE].*' )
)"
);
DiscoAgentDefaultThreads( 10 );
The insert above specifies that the agent uses 10 threads by default. If you set a different number of
threads in the DiscoAgents.cfg configuration file, that value overrides the value in the agent definition
file.
Restriction: Many of the add-on CPAN modules often used with Perl are not thread safe. Perl discovery
agents using such modules might need to be restricted to a single thread.
DiscoAgentReturnsFilterList
{
DiscoReturnsFilter
{
"(
m_LocalNbr->m_IfType = 229
)"
}
};
DiscoAgentReturnsFilterList
{
DiscoReturnsFilter
{
"(
m_LocalNbr->m_IfIndex = 4
)"
DiscoDeleteFields {
"m_Name",
"m_HaveAccess",
"m_LocalNbr->m_SubnetMask",
"m_RemoteNbr->m_RemoteNbrPhysAddr",
}
}
DiscoReturnsFilter
{
"(
m_LocalNbr->m_IfIndex = 5
)"
}
};
DiscoRouterPartialMatchRestrictions
(
"(m_ObjectId='1.3.6.1.4.1.9.1.48', m_OSVersion>='12.2',
m_MibVar='sysDescr')"
);
DiscoRouterPartialMatchRestrictions
(
"(m_ObjectId='1.3.6.1.4.1.9.1.209'),
(m_ObjectId='1.3.6.1.4.1.9.1.48', m_OSVersion>='12.2',
m_MibVar='sysDescr'),
(m_ObjectId like '1\.3\.6\.1\.4\.1\.2773\..*')"
);
Sample: changing the number of threads used by the IpRoutingTable discovery agent
The following example sets the number of threads used by the IpRoutingTable discovery agent to 50.
Increasing the number of threads used by an agent allows the agent to process more devices at once, and
can speed up discovery. However, increasing the number of threads used by an agent also uses more
memory.
Sample: changing the number of threads used by the NMAPScan Perl discovery agent
The following example sets the number of threads used by the NMAPScan Perl discovery agent to 50. To
define the number of threads used by a Perl discovery agent, you must first enable multiple threads for
that agent in the discovery agent definition file.
DiscoAgentReturnsFilterList
{
DiscoReturnsFilter
{
"(
m_LocalNbr->m_IfType = 229
)"
}
};
Database used
The DiscoARPHelperSchema.cfg configuration file defines inserts into the ARPHelper.configuration
database table.
Database used
The DiscoCollectorFinderSeeds.cfg configuration file defines inserts into the collectorFinder
database.
Note that there is another file associated with the collectorFinder database, the
DiscoCollectorFinderSchema.cfg file, but you should not need to alter this file.
Example: configuring the Database finder to use an external Tivoli Data Warehouse database
The following example configuration instructs the Database finder to retrieve device data from an external
Tivoli Data Warehouse database.
vi /var/tmp/logged_hosts
The three columns in this example file respectively contain an IP address, the device name, and a time
value. The columns are separated by white space, which can be multiple tabs, spaces, or a combination of
both. You could configure the File finder to parse this example text file using an insert similar to the
example.
Important: Other combinations of m_UseScope and m_UsePingEntries filters are not recommended.
Specifying values (0,0) results in an unbounded discovery, while specifying values (0,1) results in devices
that you do not want to discover being needlessly pinged.
A stitcher tests each discovered device against the filter condition in the scope.detectionFilter table, and
the outcome of this test determines whether the device is discovered.
Because the process flow of the discovery is fully configurable, you can configure this stitcher to act at any
time during the discovery process. By default, the stitcher performs the conditional test on the device
details returned by the Details agent. Your filter must therefore be based on the columns of the
Details.returns table.
Although you can configure the filter condition to test any of the columns in the Details.returns table, you
might need to use the IP address as the basis for the filter to restrict the detection of a particular device.
If the device does not grant SNMP access to the Details agent, the Details agent might not retrieve MIB
variables such as the Object ID. However, you are guaranteed the return of at least the IP address when
the device is detected.
The following examples show how else you might configure the detection filter.
The following example postdiscovery filter restricts instantiation of a chassis and its contents.
For a device that has 2 IP addresses, 172.20.1.1 and 192.168.1.3, the configuration means that
172.20.1.1 is not chosen as the IP address through which to manage the device. 192.168.1.3 is used
instead. The following example shows what the final topology entry in the master.entityByName looks like
in this instance. The data inside ExtraInfo that is prefixed with m_ScopeSpecial comes from the
scope.zones entry that matched the IP address of 192.168.1.3.
{
EntityName='192.168.1.3';
Address=['','','192.168.1.3'];
EntityType=1;
EntityOID='1.3.6.1.4.1.8072.3.2.10';
IsActive=1;
Status=1;
ExtraInfo={
m_SysName='SYS1';
m_DNSName='DNS1';
m_time=1362486845;
m_DisplayLabel='DNS1';
m_AssocAddress=
[{m_IfIndex = 1, m_IpAddress = '172.20.1.1', m_Protocol = 1, m_IfOperStatus = 1 },
{m_IfIndex = 2, m_IpAddress = '192.168.1.3', m_Protocol = 1, m_IfOperStatus = 1 }];
m_ScopeSpecialIsManagement=1;
m_ScopeSpecialPriority=99;
m_ScopeSpecialIdentifier='CustomerFacing';
m_ScopeSpecialExtraInfo={
m_CustomerName = 'MyCompany',
m_CustomerType = 'Internal'
};
m_DefinedMgmtIP=1;
m_IsOutOfBand=1;
m_BaseName='192.168.1.3';
m_AddressSpace=NULL;
m_AccessProtocol=1;
m_AccessAddress='192.168.1.3';
};
LingerTime=3;
ActionType=0;
CreateTime=1362486848;
ChangeTime=1362486848;
Note: The default maximum response size might be too small when running a Collector-based discovery
against Collectors that result in very large responses. In such cases, increase the maximum response size.
To increase the maximum response size, set the m_MaxResponseSize parameter to a higher value. Make
sure you set the same value for m_MaxResponseSize in both of the following files:
• NCHOME/etc/precision/DiscoCollectorFinderSchema.cfg
• NCHOME/etc/precision/DiscoXmlRpcHelperSchema.cfg
Procedure
• DiscoCompiledAgent{}: Denotes a compiled discovery agent (with a corresponding shared library
in the $NCHOME/precision/lib directory).
• DiscoDefinedAgent{}: Denotes a text-based discovery agent (with no corresponding shared
library).
• DiscoCombinedAgent{}: Denotes a discovery agent that is a combination of text-based and
precompiled, where extra processing (such as the retrieval of extra information from devices) is
defined in the discovery agent definition file.
DiscoAgentMediationFilter
{
// Optional section containing filters for the mediation layer.
}
DiscoAgentMediationLayer
{
// Contains the SNMP Get and GetNext requests to be performed.
// In addition, an ICMP trace can be performed and SNMP access
// parameters can be retrieved in the mediation layer.
}
DiscoAgentProcessingLayer
{
// Adds the retrieved variables to the appropriate entity
// record(s).
}
DiscoAgentMediationLayer
{
DiscoSnmpRequests
{
DiscoSnmpGetResponse( ARGUMENT, VARIABLE );
DiscoSnmpGetNextResponse( ARGUMENT, VARIABLE, );
DiscoSnmpGetAccessParameters( VARIABLE );
}
DiscoICMPRequests
{
DiscoICMPGetTrace( VARIABLE );
}
}
DiscoSnmpGetResponse();
DiscoSnmpGetResponse(); performs an SNMP Get request. The simple form of this rule takes two
arguments, separated by a comma. The first argument is the key to assign to the response. This key is
used in the processing layer. The second argument is the OID (Object ID) to retrieve from the device.
The following example retrieves sysUpTime, assigning the key m_SysUpTime to the value that is returned.
DiscoSnmpGetNextResponse();
DiscoSnmpGetNextResponse(); performs an SNMP GetNext request. This rule takes the same arguments
as DiscoSnmpGetResponse();.
The following example retrieves ipRouteIfIndex and assigns the key m_IpRouteIfIndex to the value
returned.
DiscoSnmpGetAccessParameters();
DiscoSnmpGetAccessParameters(); retrieves the SNMP access parameters for the device.
If you configure the discovery agent to retrieve the access parameters in the mediation layer, you must
also configure the agent to add the information to the database record in the processing layer.
DiscoSnmpGetAccessParameters( "m_AccessParam" );
DiscoICMPGetTrace();
DiscoICMPGetTrace(); retrieves the IP addresses in the path to the device.
If you configure the discovery agent to retrieve the path to the device in the mediation layer, you must also
configure the agent to add the information to the database record in the processing layer.
DiscoICMPGetTrace( "m_Trace" );
DiscoAgentMediationFilter
{
DiscoMediationSnmpGetFilter
{
"ipForwarding" = 1 ;
}
}
DiscoAgentProcessingLayer
{
DiscoAgentProcLayerAddTags
{
DiscoAddTagSnmpGet( KEY );
DiscoAddTagSnmpGetNext( KEY );
DiscoAddTagSnmpGetAccessParameters( "m_AccessParam" );
DiscoAddTagTrace( "m_Trace" );
}
DiscoAgentProcLayerAddLocalTags
{
DiscoAddTagSnmpGet(
TAG FROM KEY WHERE CONDITION );
DiscoAddTagSnmpGetNext(
DiscoAgentProcLayerAddTags{}
Within the DiscoAgentProcLayerAddTags{} section, you can include as many
DiscoAddTagSnmpGet(); or DiscoAddTagSnmpGetNext(); rules as necessary. These rules add the
retrieved variable to the database record for the discovered entity.
Each rule within the DiscoAgentProcLayerAddTags{} section takes a single argument, which is the
key assigned to the retrieved variable in the mediation layer. The following example adds the value of
m_SysUpTime, retrieved in the mediation layer, to the entity record.
DiscoAddTagSnmpGet( "m_SysUpTime" );
If you configured the discovery agent to retrieve either the SNMP access parameters or the path to the
device during the mediation layer, you must include either the
DiscoAddTagSnmpGetAccessParameters(); or the DiscoAddTagTrace(); rule in the
DiscoAgentProcLayerAddTags{} section to ensure that the retrieved information is added to the
MODEL database.
DiscoAgentProcLayerAddLocalTags{}
Within the DiscoAgentProcLayerAddLocalTags{} section, you can include as many
DiscoAddTagSnmpGet(); or DiscoAddTagSnmpGetNext(); rules as necessary. These rules add the
retrieved variable to the database record for a local neighbor.
The structure of the rules is:
The arguments that determine the local neighbor to which the tag is added are:
• TAG specifies the field name of the tag to be added.
• KEY indicates the key assigned to the value returned in the mediation layer.
• CONDITION indicates a condition that determines whether or not the tag is added.
The following example adds a field called m_IfDescr to the local neighbor object (using the value
returned in the mediation layer that was assigned the key m_IfDescr) where m_IfIndex=1.
The following example adds a field called m_IfType to the local neighbor object using the list of values
returned by the GetNext request performed in the mediation layer and assigned the key m_IfType. The
WHERE clause indicates the particular value required from the list of data. The value is retrieved by looking
for the entry where the value of the m_IfIndex field in the local neighbor object is equal to
SNMPINDEX(0), that is, the first value of the SNMP table entry.
Forwarding traps
Using the SNMP Trap Multiplexer, you can forward traps to one or more servers.
Procedure
1. Edit the schema file, $NCHOME/etc/precision/TrapMuxSchema.cfg, to contain a set of host/
socket pairs. For example, append the following lines to the file:
Results
In the above example, when a trap is sent to the server that is running the ncp_trapmux process, it is
forwarded to test-host1, port 5999 and test-host2, port 5999.
Procedure
1. Log into the TrapMux service using the OQL Service Provider or the Management Database Access
page.
2. Issue the following commands:
Procedure
1. Log into the TrapMux service using the OQL Service Provider or the Management Database Access
page.
2. Issue the following commands:
Results
Where FILENAME specifies the file to which the output is written. If the file is not specified,
$NCHOME/etc/precision/trapmux.out is used.
capture_start Begin logging traps to memory. The default filename is NULL (not required).
capture_stop Stop logging traps to memory. The default filename is NULL (not required).
capture_continue Continue logging traps to memory. The default filename is NULL (not
required).
capture_empty Clear memory of all currently logged traps. The default filename is NULL (not
required).
rehash Shut down the ncp_trapmux process and clear all memory. The daemon then
rereads the configuration file and starts up again. The default filename is
NULL (not required).
restart Set the daemon to normal mode. The default filename is NULL (not required).
replay Either read the traps in memory or read the raw trap packet information in
the specified file and replay the traps with a small delay between each. The
default filename is NULL (play from memory).
replay timed Either read the traps in memory or read the raw trap packet information in
the specified file and replay the traps in the order of the time they were
received with the same delays between traps. The default filename is NULL
(play from memory).
print Print the current traps in memory in a non-readable format to the specified
file. Time information is encoded with the trap. The default filename is
$NCHOME/etc/precision/trapmux.out.
Types of traps
Traps are administrative messages sent from network devices such as routers that indicate that the
device or its connections have started or stopped.
ipAddrTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpAddrEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The table of addressing information relevant to
this entity's IP addresses."
::= { ip 20 }
The syntax "SEQUENCE OF" defines this as a table. You can find out what tables are defined in the MIB by
searching for this string. The following example shows the output of a search run on UNIX:
6. Define the SNMP interface filter expression to be applied to the MIB tables. Only rows that match this
filter, that is, for which this expression evaluates true, are retrieved. Locate the value of
m_InstanceFilter and define a filter, enclosed in double quotes. You can use any Object
Identifiers (OIDs) to construct the filter. Use Object Query Language (OQL) syntax. You can define
more than one interface filter per named filter.
The filter must be in the following form:
7. Optional: If you want to filter out information that relates to the same interface in related MIB tables
that are not explicitly defined with the same index, specify which tables to include using a dependent
filter. Copy and edit a default insert into the snmpFilter.dependentInstances table from the
NCHOME/etc/precision/DiscoSnmpHelperFilters.DOMAIN_NAME.cfg file or copy an
example insert from this documentation.
The syntax of the filter is
MIB_variable_name in
(eval(list_type,'&MIB_table.MIB_entry'))
9. You can configure more than one SNMP interface filter in the NCHOME/etc/precision/
DiscoSnmpHelperFilters.DOMAIN_NAME.cfg file. If more than one interface filter is configured,
a table row that matches any filter is retrieved.
10. If one or more interface filters are configured, ensure that the the
RaiseAlertsForUnknownInterfaces property in the NCHOME/etc/precision/
NcPollerSchema.cfg file is set to 0. This setting ensures that alerts are not raised against
interfaces that were not discovered, for example, because they were filtered out of the discovery by
interface filters.
In the following example, the ipAddrTable is indexed on IP address, but each row contains
ipAdEntIfIndex, whose value is equivalent to ifIndex. The ifTable table is also indexed on ifIndex. This
relationship is written into the MIB definition, but cannot be programmatically determined. Entering the
relationship as a dependent filter ensures that matching entries in the ipAddrTable are also included.
Procedure
1. Backups are off by default. To enable and configure backups, edit the EventGatewaySchema.cfg
file.
a) Back up and edit the $NCHOME/etc/precision/EventGatewaySchema.cfg file.
b) Locate the insert into the config.defaults database table and edit the values.
c) Set backupDiscoveryCaches to 1 to enable the backups, or 0 to disable them.
d) Set numberOfBackupsToKeep to the number of backups to keep. After this number of backups
have been made, older ones are deleted.
2. Restart the core components using the itnm_stop ncp and itnm_start ncp commands.
3. To restore the backups:
a) Shut down the core components using the itnm_stop ncp command.
b) Copy the cache files from $NCHOME/var/precision/backup/StoreCacheBackup/ back to
$NCHOME/var/precision/.
c) Restart the core components using the itnm_start ncp command.
About collectors
A collector is a software module that retrieves topology data from a data source, such as an Element
Management System (EMS) or a comma-separated value (CSV) file, and makes this data available to the
discovery process as a set of XML data. Network Manager can then stitch this data into the discovered
topology.
A collector translates the topology data from the format in which it is held in the proprietary EMS into a
standard XML structure that can be processed by Network Manager. This means that a different collector
must be developed for each different EMS vendor and model. The predefined collectors provided with
Network Manager are written in either Java or Perl. However, collectors may be written in any language,
as long as that language can provide an XML-RPC server which the ncp_disco process can query.
Predefined collectors
Network Manager ships with a set of default collectors that retrieve device data from a variety of EMSs,
including EMSs that manage radio access network (RAN) and Optical devices.
Alcatel5620Sam Collector for the Alcatel 5620 SAM SOAP Long Term Evolution
EMS. This Java collector retrieves (LTE), LAG, OSI Layer 2,
the same information as the Perl OSI Layer 3, Interface,
Alcatel5620SamSoapFindToFile Inventory, Physical
collector, and additionally retrieves Entity, VPN Layer 3 and
Link Aggregation Group (LAG) VPN Layer 2
information.
The collector retrieves LAG
containment data, which is modelled
and presented in the Structure
Browser.
The collector retrieves VLAN
interface information.
The collector retrieves address and
subnet information for ENodeB
elements, creates VLAN information
based on that information, and
mdoels Ethernet ports and control
boards.
Starting from V4.2 FixPack 1, LTE-
related discovery data for the SAM
5620 EMS is no longer supported for
Network Manager partial discovery.
The collector retrieves
information for cloud-based, or
virtual MMEs (Multimedia
Extensions).
The collector retrieves
information for Nokia SAE gateways,
which have LTE PDNGateway and
ServingGateway functionality.
Cisco APIC REST Collector for the Cisco Application JSON and XML over Interface Inventory,
Policy Infrastructure Controller REST WebSocket Physical Entity
(APIC) EMS. protocol
CiscoLMS Collector for the CiscoWorks LMS JDBC and REST Web Physical Entity,
EMS. This collector uses the Cisco services Interface Inventory
Open Database Schema and Cisco
Data Extraction Engine to
communicate with the EMS.
Huawei CORBA TMF Collector for the Huawei CORBA TMF CORBA TMF814 OSI Layer 1, Interface
814 814 EMS. This collector collects Inventory, Physical
information from EMS systems that Entity, SONET, SDH
use the CORBA TMF 814 interface,
such as Huawei T2000 and U2000.
The collector retrieves SNC data to
supplement CTP data. Visualization
of SNC data is not supported.
Huawei M2000 Collector for the Huawei M2000 N/A eNodeB, BSC, BTS,
EMS. This collector processes IMS NodeB, RNC, MGW,
and STP devices, and LTE 3G, 2G, UGW, USN, HIR, EIR,
PSCore, and CSCore data by using HSS, CGNE, MSS, ATS,
the configuration management XML CCF, CSCF, MRFP,
files generated from a Huawei SE2900, SPG, SG7000,
M2000 EMS. USCDB
NetActCMDump Processes 2G, 3G and LTE RAN data FTP or SFTP LTE, RAN, SGSN,
by using the configuration eNodeB, MME, PGW,
management XML file for the NetAct BTS, RNC, SGW, BSC,
EMS collector. The collector needs to NodeB, MGW, TRX,
connect to the NetAct EMS collector MSC, PCU
in order to retrieve this XML file, and
it does this using either FTP or SFTP.
In order to use data from the NetAct
XML Interface for Configuration
Management collector in a network
discovery, you must configure the
collector properties file with the FTP
and SFTP connection details
between the NetAct EMS and
Network Manager.
NetViewer Collector for the Nokia Solutions and CORBA TMF814 OSI Layer 1, Interface
Networks (NSN) NetViewer EMS. Inventory, Physical
Entity, SONET, SDH
Nokia5529Idm Collector for the Nokia5529Idm SOAP Interface Inventory,
EMS. This Java collector retrieves Physical Entity
the same information as the Perl
Nokia5529Idm collector, and it
additionally supports the Bulk
Network Export feature and
supports the Java Message Service
(JMS). The collector listens for JMS
notifications about entities that have
been added or removed from the
EMS. The collector pauses and then
rediscovers the EMS. During the next
discovery or partial discovery, the
NCIM topology database is updated
with the latest data from the
collector.
NokiaOMS1350 Collector for the Nokia OMS 1350 REST OSI Layer 1
EMS. This collector discovers Nokia
1830 PSS-based optical network
devices.
Tellabs INM8000 Collector for the Tellabs INM8000 Java API OSI Layer 3, OSI Layer
EMS. 2, Interface Inventory,
Physical Entity
Alcatel5620SamSoap Collector for the Alcatel SOAP OSI Layer 2, OSI Layer 3,
5620 SAM EMS. Interface Inventory,
Physical Entity, VPN Layer
3, VPN Layer 2
Alcatel5620SamSoap Collector for the Alcatel SOAP, FTP LTE, OSI Layer 2, OSI
FindToFile 5620 SAM EMS. The Layer 3, Interface
collector retrieves the Inventory, PCRF, SGW,
same data as the PGW, MME, eNodeB,
Alcatel5620SamSoap Physical Entity, VPN Layer
FindToFile collector. 3, VPN Layer 2
AlcatelNR8PLIooIsn Collector for the Alcatel IOO (for the Alcatel 1353 NM, 1354 RM
Lucent 1353 NM and Lucent 1353 component),
Alcatel Lucent 1354 RM ISN (for the Alcatel Lucent
components within the 1354 RM component)
AlcatelNR8PL EMS.
Component Description
Collector finder The Collector finder reads the collector host seeds from a seed
table in the collectorFinder database. It then queries the
ncp_df_collector
collectors specified in this table to get a list of devices managed
by the EMS associated with each collector.
Collector agents Retrieve basic and detailed information about the devices on
the collector. Each agent makes use of the Collector helper to
retrieve this information.
CollectorDetails agent Retrieves basic information about the devices on the collector,
including sysObjectId, sysDescr, and naming data.
CollectorInventory agent Retrieves local neighbor, entity and associated address data for
each of the devices on the collector.
CollectorLayer2 agent Retrieves layer 2 connectivity information for the devices on the
collector.
CollectorLayer3 agent Retrieves layer 3 connectivity information for the devices on the
collector.
CollectorLTE agent Retrieves LTE-specific entity information for the devices on the
collector.
CollectorRan agent Retrieves radio access network (RAN) information for the
devices on the collector.
CollectorVpn agent Retrieves layer 2 and layer 3 VPN data for the devices on the
collector.
6 The Collector responds by providing basic and detailed information as this is requested.
Configuring collectors
The purpose of a collector is to gather and standardise EMS data based on requests by the main Network
Manager discovery process, for consumption by the discovery process. Collector configuration governs
how the collector interrogates the EMS or data source in order to service requests from the Network
Manager discovery process, and how the collector listens for requests from the Network Manager
discovery process.
log.maxsize Maximum size of the log file. Once this maximum is reached, the file is
renamed and is kept as a backup.
log.count Number of backup log files to keep.
log.messageprefix Log message prefix.
trace.filename Filename for the trace file. Can also specify a pattern for the trace file name
using a set of system-defined elements.
trace.level One of the following:
• NONE
• FINEST
• FINER
• FINE
• CONFIG
• INFO
• WARNING
• SEVERE
• ALL
trace.maxsize Maximum size of the trace file. Once this maximum is reached, the file is
renamed and is kept as a backup.
trace.count Number of backup trace files to keep.
Procedure
1. Before running the collector, copy the required .jar files from the EMS to the server on which the
collector is installed:
a) Log into the Schema page of the IDM using the credentials of an IDM NBI user.
The URL of the IDM Schema page is https://hostname:8443/idm/schemadoc/html/index.html,
where hostname is the name or IP address of the IDM server.
b) Click on the Client sample URL and download the idm-oss-client.tar.gz file to the server on
which the collector is installed.
c) Uncompress the file.
d) If the EMS version is 9.4 or below, then copy the following files to the $NCHOME/precision/
collectors/javaCollectors/lib directory:
axs-mobject-remote-api-9.4-268573.jar
hornetq-core-client-2.3.1.Final-ALU-1
hornetq-jms-client-2.3.1.Final-ALU-1.jar
jaxen-1.1.jar
jboss-as-security-7.2.0.Final-ALU-8.jar
jboss-client.jar
jboss-logging-3.1.2.GA-ALU-1.jar
jboss-remoting-3.2.17.GA.jar
jdom-1.1.2-ALU-2.jar
jms-1.1.jar
log4j-1.2.13.jar
netty-3.6.2.Final-ALU-1.jar
trove-2.1.1.jar
e) If the EMS version is 9.6.07 or 9.6.08, then copy the following files to the $NCHOME/precision/
collectors/javaCollectors/lib directory:
axs-encription-app-9.6.07-399857.jar
jboss-logging-3.3.0.Final.jar
slf4j-simple-1.7.21.jar
axs-mobject-api-9.6.07-399857.jar
log4j-1.2.14.jar
wildfly-client-all.jar
axs-mobject-remote-api-9.6.07-399857.jar
picketbox-4.9.6.Final.jar
xbean-2.6.0.jar
idm-oss-client-1_9.6.07-399857.jar
picketbox-infinispan-4.9.6.Final.jar
cd $NCHOME/precision/collectors/javaCollectors/Alcatel5529Idm/
cp Alcatel5529IdmCollector.properties.sample Alcatel5529IdmCollector.properties
csv.NE.1=IP Address
csv.NE.n
Specifies the mapping for the next unmapped variable, where n is an integer that increases by 1
with each subsequent variable.
csv.NE_System.1
Specifies the mapping for the first unmapped variable for a line in the CSV file that describes an
NE System, that is, for the fourth variable in the line. For example:
csv.NE_System.1=Contact
csv.NE_System.n
Specifies the mapping for the next unmapped variable, where n is an integer that increases by 1
with each subsequent variable.
In the following example data for an NE, the NE name is ISAM123, the managed object type is NE,
and the object identifier is ISAM123.
ISAM123,NE,ISAM123,192.168.242.175
The value 192.168.242.175 is the IP address. So you must define the following property:
csv.NE.1=IP Address
In order to correctly map the remaining values, you would define the following properties:
csv.NE_System.1=Contact
csv.NE_System.2=Description
csv.NE_System.3=Ethernet DSL
csv.NE_System.4=ETSI Version
csv.NE_System.5=HUB MAC Address
csv.NE_System.6=Location
csv.NE_System.7=MIB Version
csv.NE_System.8=System ID
csv.NE_System.9=Type
csv.NE_System.10=Up Time
12. In the JMS HTTPS properties section, configure the properties that relate to the secure Java
Messaging Service:
jms.secure
If true, the HTTPS secure JMS connection is established. If false, the connection is insecure.
The default is true.
jms.keystore
The complete path to the trust-store file. This property takes effect only when the soap.secure
property is set to true.
jms.keypass
Password for the trust-store file. This property takes effect only when the soap.secure property
is set to true.
jndi.isClusterSetup
Set to true if the JNDI server is running in cluster mode. Set to false if the JNDI server is not
running in cluster mode. If the EMS version is 9.6 or above, set the value to false. The default is
true.
13. Save the collector configuration file.
Procedure
1. Before running the collector for the first time, copy the file /opt/5620sam/server/nms/
integration/samOss.jar from the EMS server to the /opt/IBM/netcool/core/precision/
collectors/javaCollectors/lib/ directory. You must use the samOss.jar file from the same
version and release as the Aclatel 5620 system.
2. Install the Oracle JRE on the Alcatel 5620 server.
3. Create a new script to run the collector.
a) Create a copy of the /opt/IBM/tivoli/netcool/precision/collectors/
javaCollectors/bin/collector.sh script in the same directory.
This script is used to start only the SAM 5620 collector.
cd $NCHOME/precision/collectors/javaCollectors/Alcatel5620Sam/
5. Within this directory, find the sample configuration file for the collector and copy it to the working
configuration file.
cp Alcatel5620Sam.
properties.sample
Alcatel5620Sam.
properties
$NCHOME/precision/collectors/javaCollectors/Alcatel5620Sam/Alcatel5620Sam.
properties.
If false, the ifName and entityDescription for Physical Interfaces do not contain extra
information. The default is false.
12. Save the collector configuration file.
What to do next
Use the script to start the collector. For example, use a command line similar to the following:
cd $NCHOME/precision/collectors/javaCollectors/CiscoAPICREST/
2. Within this directory, find the sample configuration file for the Cisco APIC REST collector and copy it
to the working configuration file.
cp CiscoApicRestCollector.properties.sample CiscoApicRestCollector.properties
Where key_file is the key file retrieved from the server, cert_file is the certificate retrieved
from the server, and cert_pkcs12 is the combined file in PKCS12 format for loading into the
keystore.
10. To create a Java keystore using the Keytool utility, follow these steps:
a) Generate a keystore and self-signed certificate using the following command:
b) Import the SSL certificate from Cisco APIC into the newly created Java keystore file using the
following command:
c) Verify that the certificates are in a Java keystore using the following command:
d) Set the keyStoreFileName and keyStorePassword properties in the collector property file.
e) Set the enableSSL property in the collector property file to true.
f)
If required, configure the TLSVersion property in the collector property file.
g) Ensure that the DataSource.emsPort property in the collector property file is set to the HTTPS
port.
h) Copy the generated keystore file into the directory specified in the pathToKeyStoreFile
property.
Procedure
1. Change to the CiscoWorks LMS collector directory.
cd $NCHOME/precision/collectors/javaCollectors/CiscoLMS/
2. Within this directory, find the sample configuration file for the CiscoWorks LMS collector and copy it to
the working configuration file.
cp CiscoLMSCollector.properties.sample CiscoLMSCollector.properties
Procedure
1. Change to the Huawei M2000 collector directory.
cd $NCHOME/precision/collectors/javaCollectors/HuaweiM2K/
2. Within this directory, find the sample configuration file for the collector and copy it to the working
configuration file.
cp HuaweiM2KCollector.properties.sample HuaweiM2KCollector.properties
Procedure
1. Change to the Huawei CORBA TMF 814 collector directory.
cd $NCHOME/precision/collectors/javaCollectors/HuaweiCorbaTMF814/
2. Within this directory, find the sample configuration file for the Huawei CORBA TMF 814 collector and
copy it to the working configuration file.
cp HuaweiCorbaTMF814Collector.properties.sample
HuaweiCorbaTMF814Collector.properties
During processing, the values specified in the filter.productName property are compared with the
contents of the entityData.Description field.
13. Save the collector configuration file.
Procedure
1. Change to the MTOSISoap collector directory.
cd $NCHOME/precision/collectors/javaCollectors/MTOSISoap/
2. Within this directory, find the sample configuration file for the MTOSISoap collector and copy it to the
working configuration file.
cp MTOSISoapCollector.properties.sample
MTOSISoapCollector.properties
DataAcquisition.TopologicalLinksBatchSize
Defines the maximum number of MTOSI objects that can be included in a SOAP EMS response for a
TopologicalLinkRequest. The default value is 6000 objects.
Note: You must set the DataAcquisition.ManagedElementsBatchSize and
DataAcquisition.TopologicalLinksBatchSize parameters to values that are less than the
number of elements on the EMS. Otherwise, discovery fails and you see this error in the discovery
logs:
DataAcquisition.GetEntities
Takes one of the following values. The default value is 0.
1: Enable
Enables download of physical entity data from the EMS.
0: Disable
Disables download of physical entity data from the EMS.
DataAcquisition.GetLayer2Connections
Takes one of the following values. The default value is 0.
1: Enable
Enables download of layer 2 connectivity data from the EMS.
0: Disable
Disables download of layer 2 connectivity data from the EMS.
DataAcquisition.GetLayer3Connections
Takes one of the following values. The default value is 0.
1: Enable
Enables download of layer 3 connectivity data from the EMS.
0: Disable
Disables download of layer 3 connectivity data from the EMS.
DataAcquisition.receiveTimeout
The maximum time in seconds to wait for a response from the EMS. The default is 300 seconds.
6. You can optionally configure details about the source element management system (EMS) in the Data
Source properties section by configuring the following generic fields. Data from these fields is used by
Network Manager to model the EMS.
DataSource.id
Unique identifier for the datasource, in the form of an integer. This field takes the value 1,
indicating that this is the primary data source.
DataSource.descr
Description of the EMS.
DataSource.emsHost
Hostname of the EMS.
DataSource.emsName
Name of the EMS.
DataSource.emsPort
Port of the EMS.
Configuring the Nokia Solutions and Networks NetAct XML Interface for Configuration Management
collector
The Nokia Solutions and Networks (NSN) NetAct XML Interface for Configuration Management collector
processes 2G, 3G and LTE RAN data by utilizing the configuration management XML file for the NSN
NetAct EMS. This XML file contains the NetAct Configurator network configuration data, in RAML/CM2
format.
cd $NCHOME/precision/collectors/javaCollectors/NetActCMDump/
2. Within this directory, find the sample configuration file for the collector and copy it to the working
configuration file.
cp NetActCMDumpCollector.properties.sample NetActCMDumpCollector.properties
Procedure
1. Change to the collector directory:
cd $NCHOME/precision/collectors/javaCollectors/NokiaOMS1350/
cp NokiaOMS1350RestCollector.properties.sample NokiaOMS1350RestCollector.properties
=ST-1083-Gz5plCWlPlq9gBkrLfj4-cas01.example.org
Debug.emsSelectElements
Set to true to enable debugging for the specified EMS items. Set to false to turn off debugging.
Debug.emsNENode.1
The name of the first node that you want to debug.
Debug.emsNENode.2
The name of the second node that you want to debug.
Debug.enable_manual_service_ticket
Set to true to enable the manual service ticket. Set to false to turn off the manual service ticket.
Debug.service_ticket
The service ticket value that you want to override and validate manually.
9. Save the collector configuration file.
Procedure
1. Change to the NSN NetViewer collector directory.
cd $NCHOME/precision/collectors/javaCollectors/NetViewer/
2. Within this directory, find the sample configuration file for the NSN NetViewer collector and copy it to
the working configuration file.
cp NetViewerCollector.properties.sample NetViewerCollector.properties
Procedure
1. Change to the Tellabs INM8000 collector directory.
cd $NCHOME/precision/collectors/javaCollectors/TellabsINM8000/
2. Within this directory, find the sample configuration file for the Tellabs INM8000 collector and copy it
to the working configuration file.
cp TellabsINM8000Collector.properties.sample TellabsINM8000Collector.properties
use.filter.node.discovery=true
node.id.1=874
node.id.2=8856
# Map the first data column to the device management IP address (<ip>)
MainEntityData.1.name = ManagementIpAddress
MainEntityData.1.mapsTo = DEVICE_MANAGEMENT_IP_ADDRESS
The following table how data in CSV data files is mapped to attributes.
Data types
The following table lists the supported data types.
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/Alcatel5529IdmSoap/
Alcatel5529IdmSoap
Collector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file. Configure the following properties:
Host
The hostname of the EMS.
Port
The port to connect to the EMS.
Username
The username to connect to the EMS.
Password
The password to use to connect to the EMS.
Timeout
The timeout for the SOAP communication between the collector and the EMS.
Domain
The domain of the AMS system on which the Inventory Data Manager is running.
GetEntities
A flag for discovery of physical entities such as racks, cards, and ports. Set to 1 to discover physical
entities. If this flag is set to 0, only chassis information is discovered. The default value is 1.
GetOnt
A flag to configure whether the collector retrieves Optical Network Terminal (ONT) information. Set
to 1 to enable ONT module data retrieval. Retrieval of ONT information relies on physical entity
information. Ensure that GetEntities is set to 1 if you want to set GetOnt to 1.
The following example shows example and default values of these properties:
DataSource =>
{
Host => 192.168.1.2,
Port => 8080
Timeout => 30
GetEntities => 1
GetOnt => 0
,
4. Ensure that the Batchsize parameter is set to 500, unless otherwise advised by IBM Support. This
parameter controls the size of each SOAP/XML response.
5. Save the collector configuration file.
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/Alcatel5620SamCsv/
Alcatel5620SamCsv
Collector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
The following example shows the default values of these properties:
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file and specify the filename of the CSV loader
module configuration file, as shown in the following example.
The CSV loader module configuration file in turn specifies the CSV files and the .drv driver files that
detail how each CSV file is parsed
DataSource =>
{
CsvCfg => 'exampleCsv.cfg',
…
…
…
},
4. You can optionally configure details about the originating EMS by adding a SourceInfo subsection to
the DataSource section of the configuration file. If you configure this EMS information , then data
from these fields will be used by Network Manager to model the EMS.
To configure details about the EMS, set values for the fields shown in the following code snippet:
SourceInfo =>
{
Id => 1,
Descr => 'Primary Data Source',
# EmsHost => '',
# EmsName => '',
# EmsVersion => '',
# EmsIdentifier => '',
# EmsRole => '',
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/Alcatel5620SamSoap/
Alcatel5620SamSoap
Collector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
The following example shows the default values of these properties:
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file. Configure the following properties:
Host
The hostname of the EMS.
Port
The port to connect to the EMS.
Username
The username to connect to the EMS.
Password
The password to use to connect to the EMS.
Timeout
The timeout for the SOAP communication between the collector and the EMS.
DataSource =>
{
Host => 192.168.1.2,
Port => 8080
4. Edit the DataAcquisition section of the configuration file and configure the following properties:
GetEntities
A flag for discovery of physical entities such as racks, cards, and ports. Set to 1 to discover physical
entities. If this flag is set to 0, only the following information is discovered: chassis, logical entities,
and data for the other enabled flags in the DataAcquisition section. The default value is 1.
GetVplsVpns
A flag for discovery of VPLS-based Layer 2 VPN data. Set to 1 to enable discovery of this data. The
default value is 1.
GetVllVpns
A flag for discovery of VLL-based Layer 2 VPN data for epipes only. Set to 1 to enable discovery of
this data. The default value is 1.
GetLayer3Vpns
A flag for discovery of Layer 3 VPN data. Set to 1 to enable discovery of this data. The default value
is 1.
GetMplsInterfaces
A flag for discovery of MPLS interface data. Set to 1 to enable discovery of this data. The default
value is 1.
GetLayer2Connections
A flag for discovery of physical link data. Set to 1 to enable discovery of this data. The default value
is 1.
The following example shows the default values of these properties:
DataAcquisition =>
{
GetEntities => 1
GetVplsVpns => 1,
GetVllVpns => 1,
GetLayer3Vpns => 1,
GetMplsInterfaces => 1,
GetLayer2Connections => 1
},
5. 5. Edit the DataProcessing section of the configuration file. Configure the ContainmentMethod
property.
The ContainmentMethod property controls how the entity data is processed in cases where
containment is ambiguous due to missing or duplicate index data, which can occur with module(card)/
slot data.
The possible values of the ContainmentMethod property are:
0
Ignore duplicate indexes and prefer slots. Slot entities are stored, but module (card) entities might
be lost if they share the same data as the slot.
1
Ignore duplicate indexes and prefer cards. Module entities are stored, but slot entities might be
lost if they share the same data as the module.
Device =>
{
extraFields => [ { srcField => 'version', destField =>
'm_Version', typeField => 'string' }]
},
Where srcField is the name of the attribute in the SAM object, destField is the name of the
field to which the data will be mapped within the extraInfo field, and typeField is an optional type
descriptor.
The attribute you want to retrieve must be part of one of the objects already retrieved by the
collector. The objects queried by the collector are:
• netw.NetworkElement
• equipment.PhysicalPort
• lag.Interface
• equipment.MediaAdaptor
• equipment.PhysicalPort
• equipment.DaughterCard
• equipment.Equipment
• equipment.Shelf
• vpls.L2AccessInterface
• vll.L2AccessInterface
• l3fwd.ServiceSite
• vprn.L3AccessInterface
• netw.PhysicalLink
• lldp.RemotePeer.
Valid types are int and string.
c) Save and close the configuration file.
d) Edit the CustomData section of the $NCHOME/precision/collectors/perlCollectors/
Alcatel5620SamSoap/Alcatel5620SamSoap
Collector.cfg collector configuration file. Specify the name and location of the configuration file
that defines the extra information to be collected, as in the following example:
CustomData =>
{
ExtraInfoCfg => 'extraInfo.cfg'
},
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/Alcatel5620SamSoap
FindToFile/Alcatel5620SamSoap
FindToFileCollector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
The following example shows the default values of these properties:
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
DataSource =>
{
Host => 192.168.1.2,
Port => 8080
DataAcquisition =>
{
GetEntities => 1
GetVplsVpns => 1,
GetVllVpns => 1,
GetLayer3Vpns => 1,
GetMplsInterfaces => 1,
GetLayer2Connections => 1,
GetLteData => 1
}
5. Optional: If you want to retrieve custom data from the EMS in addition to the data retrieved by default,
complete the following steps.
a) Create a configuration file in the collector directory, or edit the default file $NCHOME/precision/
collectors/perlCollectors/Alcatel5620SamSoap/extraInfo.cfg.
b) Edit the file and specify the data to be retrieved, as in the following example:
Where srcField is the name of the attribute in the SAM object, destField is the name of the
field to which the data will be mapped within the extraInfo field, and typeField is an optional type
descriptor.
The attribute you want to retrieve must be part of one of the objects already retrieved by the
collector. The objects queried by the collector are:
• netw.NetworkElement
• equipment.PhysicalPort
• lag.Interface
• equipment.MediaAdaptor
• equipment.PhysicalPort
• equipment.DaughterCard
• equipment.Equipment
• equipment.Shelf
• vpls.L2AccessInterface
• vll.L2AccessInterface
• l3fwd.ServiceSite
• vprn.L3AccessInterface
• netw.PhysicalLink
• lldp.RemotePeer.
Valid types are int and string.
c) Save and close the configuration file.
d) Edit the CustomData section of the $NCHOME/precision/collectors/perlCollectors/
Alcatel5620SamSoap/Alcatel5620SamSoap
Collector.cfg collector configuration file. Specify the name and location of the configuration file
that defines the extra information to be collected, as in the following example:
CustomData =>
{
ExtraInfoCfg => 'extraInfo.cfg'
},
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/AlcatelNR8PLIooIsn/
AlcatelNR8PLIooIsn
Collector.cfg
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file. The following default code in that section allows
Network Manager to communicate with the ISN and the IOO agents running on the Alcatel NR8 PL
EMS:
DataSource =>
{
IOONBI =>
{
Host => '192.168.1.2',
IOOAgentPort => 5001,
Timeout => 10,
IOOPassword => 'alcatel',
IOOInputStream => 4096
}
ISNNBI =>
{
Host => '192.168.1.2',
ISNAgentPort => 5002,
ISNUserName => 'ISNTest1',
ISNReportUnprocessedDirectory => './ISNReport',
ISNReportProcessedDirectory => './ISNReportProcessed',
FtpUsername => 'ftpuser',
FtpPassword => 'ftpuserpassword',
FtpSourceDirectory => '/tmp/report',
GunzipPath => '/usr/bin/gunzip',
}
DataAcquisition =>
{
GetEntities => 1,
GetLayer1Connections => 1
}
}
Set GetEntities to 1 if you want to collect entity information from the collector.
Set GetLayer1Connections to 1 if you want to retrieve layer 1 data from the collector.
4. You can optionally configure details about the originating EMS by adding a SourceInfo subsection to
the DataSource section of the configuration file. If you configure this EMS information , then data
from these fields will be used by Network Manager to model the EMS.
To configure details about the EMS, set values for the fields shown in the following code snippet:
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/GenericCsv/GenericCsv
Collector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
The following example shows the default values of these properties:
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file and specify the filename of the CSV loader
module configuration file, as shown in the following example.
The CSV loader module configuration file in turn specifies the CSV files and the .drv driver files that
detail how each CSV file is parsed
DataSource =>
{
CsvCfg => 'exampleCsv.cfg',
…
…
…
},
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/HuaweiU2000iManagerTL1/
HuaweiU2000iManagerTL1
Collector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 1 to turn
debug on. The collector prints debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
The following example shows the default values of these properties:
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15
},
3. Edit the DataSource section of the configuration file. Specify the hostname and port of the EMS, and
the username and password to connect to the EMS, as shown in the following example:
DataSource =>
{
Host => 192.168.1.2,
Port => 8080
GetEntities => 1
DataAcquisition =>
{
StoreONTs => 1,
}
…
…
,
Set GetEntities to 1 if you want to collect entity information from the collector.
Set StoreONTs to 1 if you want to retrieve Optical Network Termination (ONT) data.
4. You can optionally configure details about the originating EMS by adding a SourceInfo subsection to
the DataSource section of the configuration file. If you configure this EMS information , then data
from these fields will be used by Network Manager to model the EMS.
To configure details about the EMS, set values for the fields shown in the following code snippet:
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/
HuaweiU2000iManagerTL1DumpExport/
HuaweiU2000iManagerTL1DumpExportCollector.cfg
2. Edit the General section of the configuration file. Configure the following properties:
Debug
The collector debug mode. Set the property to 0 to turn off debug. Set the property to 4 to turn
debug on. Setting this property to 1, 2, or 3 is equivalent to setting it to 0. The collector prints
debug to the display (stdout).
Listen
The port that the collector listens on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By
default the port is 8081. The port must match the port you have configured in the insert into the
collectorFinder.collectorRules table in the DiscoCollectorFinderSeeds.cfg file when
seeding the collector for a first discovery.
Timeout
Timeout for the communication from the collector to Network Manager. The timeout is measured
in seconds. The default value is 15 seconds.
General =>
{
Debug => 0,
Listen => 8081,
Timeout => 15,
QueueSize => 40
},
3. Edit the DataSource section of the configuration file. Specify the hostname and port of the EMS, the
username and password to connect to the EMS, and the details of the XML file, as shown in the
following example:
DataSource =>
{
Host => 192.168.1.2,
Port => 8080
FtpDestinationDirectory =>
'/opt/IBM/netcool/core/precision/collectors/perlCollectors/
HuaweiU2000iManagerTL1DumpExport/data',
XMLDumpFileName =>
'MA5610S.xml,MA5606T.xml',
Timeout => 30,
DataAcquisition =>
{
GetEntities => 1,
}
…
…
,
Set GetEntities to 1 if you want to collect entity information from the collector.
Set FtpDestinationDirectory to the full directory path to the XML files that you transfer from the
EMS. The default directory is /opt/IBM/netcool/core/precision/collectors/
perlCollectors/HuaweiU2000iManagerTL1DumpExport/data.
Set XMLDumpFileName to the file name of all the XML files from the EMS. If there are multiple XML
files, use commas to separate the file names. For example, fileName1.xml,fileName2.xml. For
single XML file names, the notation is fileName1.xml. The default value is with multiple XML file
names: MA5606TN2000.xml,MA5606T.xml.
Set Timeout for the timeout for the communication from the collector to EMS. The timeout is
measured in seconds. The default value is 30 seconds.
4. You can optionally configure details about the originating EMS by adding a SourceInfo subsection to
the DataSource section of the configuration file. If you configure this EMS information , then data
from these fields will be used by Network Manager to model the EMS.
To configure details about the EMS, set values for the fields shown in the following code snippet:
SourceInfo =>
{
Id => 1,
Descr => 'Primary Data Source',
# EmsHost => '',
# EmsName => '',
# EmsVersion => '',
# EmsIdentifier => '',
# EmsRole => '',
Procedure
1. Edit the collector configuration file:
$NCHOME/precision/collectors/perlCollectors/OpticalBlackboxXml/
OpticalBlackboxXml
Collector.cfg.
2. Specify the port the collector must listen on for XML-RPC requests from Network Manager.
This port is also used by the collector to provide XML-RPC responses to Network Manager. By default
the port is 8081. A default timeout of 15 seconds is also configured. Find and edit the General
section of the configuration file, as shown in the following example:
General =>
{
Debug => 0,
Listen => 8081
Timeout => 15
},
The port must match the port you have configured in the insert into the collectorFinder.collectorRules
table in the DiscoCollectorFinderSeeds.cfg file when seeding the collector for a first discovery.
3. Edit the DataSource section of the configuration file and specify the filename of the XML file, as
shown in the following example:
DataSource =>
{
BlackboxXml => './exampleXmlData/blackbox.xml',
DataAcquisition =>
{
GetEntities => 1,
GetLayer1Connections => 1
}
}
4. You can optionally configure details about the originating EMS by adding a SourceInfo subsection to
the DataSource section of the configuration file. If you configure this EMS information , then data
from these fields will be used by Network Manager to model the EMS.
To configure details about the EMS, set values for the fields shown in the following code snippet:
SourceInfo =>
{
Id => 1,
Descr => 'Primary Data Source',
# EmsHost => '',
# EmsName => '',
# EmsVersion => '',
# EmsIdentifier => '',
# EmsRole => '',
# EmsStatus => '',
},
Option Explanation
-jar jar_file Required: path to the jar file for the collector to be run
relative to the root Java collector directory; for example,
csv/csvcollector.jar.
-propsFile file_name Optional: path to the properties file for the collector. The
default is specified by the collector; for example, for the CSV
collector the default is ../csvcollector.properties.
-port port_number Optional: port on which to run the collector. Default value is
8080.
Note: This value can also be specified in a collector
properties file.
-bg Optional, and on UNIX only. Use this parameter to run the
collector in the background.
Note: Do not use the standard UNIX & parameter to run a
collector in the background. Use the -bg option only.
[ -Xmsminimum_memory-sizem ] Optional: the minimum heap size for the collector. Increase
the heap size settings if you receive errors relating to the
collector process being out of memory. The default
minimum heap size is 256M.
[ -Xmxmaximum_memory-sizem ] Optional: the maximum heap size for the collector. Increase
the heap size settings if you receive errors relating to the
collector process being out of memory. The default
maximum heap size is 768M.
$NCHOME/precision/collectors/javaCollectors/bin
Option Explanation
Example: stopping a Java collector running on the local server on port 8080
To stop a Java collector running on the local server on port 8080, perform the following steps:
1. Go to the following directory:
$NCHOME/precision/collectors/javaCollectors/bin
Option Explanation
collector_script The name of the perl script that implements the collector;
for example, main.pl.
Option Explanation
-csvcfg Use this optional parameter to specify the name of a CSV file
CSV_COLLECTOR_CONFIG_FILE to use as a data source. You can also specify this parameter
within the collector configuration file.
Restriction: This parameter is valid only when the data
source is a CSV file.
-debug DEBUG The level of debugging output (1-4, where 4 represents the
most detailed output).
-logdir DIRNAME Directs log messages for each process started by CTRL to
NCHOME/log/precision.
-nologdir DIRNAME Directs log messages for each process started by CTRL to a
separate file in the specified directory.
Procedure
1. Configure the Alcatel 5620Sam Java collector.
2. Run a discovery.
3. Open the Structure Browser and examine a device that contains aggregated links.
The aggregated links are shown within the device containment.
Results
A Service Affected Event (SAE) is generated if any port that participates in an aggregated link has an alert
of severity 5 or higher.
numberOfSuppressedEvents = ExecuteStitcher('IsolatedEntitySuppression');
Seed the blackbox collector discovery by “Seeding an EMS discovery” on page 319
configuring the $NCHOME/etc/precision/
DiscoCollectorFinderSeeds.cfg file for your
domain to use same port as stated in the blackbox
collector configuration file
OpticalBlackboxXmlCollector.cfg.
Procedure
1. Go to $NCHOME/precision/collectors/perlCollectors/OpticalBlackboxXml/
exampleXmlData directory.
2. Edit the blackbox.xml file and supply the data you want to import inside the <blackbox> element.
Use the appropriate tags inside the <blackbox>element for the entity information you want to import.
When editing the blackbox.xml file, note the following rules:
3. Save and close the file.
Structure of blackbox.xml
The blackbox.xml file is used to load passive (unmanageable) entities in your network so that you can
view them in a topology map.
Use this example of a blackbox.xml file to understand the syntax of statements allowed in the file.
1] <blackbox>
2]
3] <ne name="Passive_NE1" ip="10.20.1.2" type="Passive">
4] <properties>
5] <property name="company" value="IBM"/>
6] </properties>
7] <entities>
8] <entity tom_id="rack" type="FLEX_Bay" position="1" />
9] <entity tom_id="shelf" type="FLEX_shelf" position="1-1" />
10] <entity tom_id="shelf" type="FLEX_shelf" position="1-2" />
11] <entity tom_id="card" type="OC12Card" position="1-2-1" />
12] <entity tom_id="card" type="TRMTR_Slot_HS" position="1-9-1" />
13] <entity tom_id="ptp" type="OC12_LS_PTP_V" position="1-2-1-1" />
14] <entity tom_id="ptp" type="OC48_LINE_PTP_TRMTR_HS" position=
"1-9-1-1" />
15] <entity tom_id="ctp" type="STS3_OC48_TRMTR_HS" position=
"1-9-1-1-25" />
16] </entities>
17] </ne>
18]
19] <ne name="Passive_NE2" ip="10.11.1.30" type="ECI">
20] <properties>
21] <property name="Vendor" value="ECI"/>
22] <property name="NeType" value="XDM100"/>
23] <property name="LocationName" value="MELAKA"/>
24] <property name="Address" value="THIRD FLOOR , COLLEGE ,
MELAKA , , Malaysia"/>
25] <property name="City" value="MELAKA"/>
26] <property name="State" value="ALOR GAJAH"/>
27] </properties>
28] <entities>
29] <entity type="FLEXPort" tom_id="ptp" label="PORT" position=
"1-1-3021-1" />
30] <entity type="FLEXPort" tom_id="ptp" label="PORT" position=
"1-1-3022-1" />
31] </entities>
32] </ne>
33]
34] <ne name="Passive_NE3" ip="10.11.1.29" type="ECI">
35] <properties>
36] <property name="Vendor" value="ECI"/>
37] <property name="NeType" value="XDM100"/>
38] <property name="LocationName" value="ARAU KANGAR"/>
39] <property name="Address" value="3 Ground , Sate Road ,
Arau, Kangar "/>
40] <property name="City" value="KANGAR"/>
41] <property name="State" value="PERLIS"/>
42] </properties>
4-6 <properties> The properties of the entity to which the element applies.
20-27
35-42
2 1 1
3 3 3
4 6 6
Results
These agents can discover MPLS VPN and Virtual Private LAN Service (VPLS) data from devices in the
network.
Tip: Agents that retrieve VPLS information can retrieve large amounts of data. Enabling these agents can
add significant processing time to the discovery process. If you do not need to rediscover VPLS
information, disable these agents for a faster discovery.
Note: If you have an MPLS network that supports both Layer 3 and enhanced Layer 2 VPNs, then the
same MPLS agents discover both types of VPN. Network Views can also partition both Layer 3 and
enhanced Layer 2 VPNs simultaneously on the same core MPLS network.
If your MPLS network contains Cisco equipment, enable both the Cisco MPLS Telnet and Cisco MPLS
SNMP agents. These two agents complement each other, as follows:
• Cisco MPLS SNMP agent targets only devices with an Internetwork Operating System (IOS) that fully
supports SNMP-based MPLS discovery
• CiscoMPLSTelnet agent targets only devices running an IOS that does not fully support an SNMP-based
discovery
Attention: Use caution when altering the CiscMPLSSnmp.agnt file. Some network devices might
contain IOS versions that have a flaw that might affect the device when certain MPLS SNMP data is
requested. These IOS versions have been filtered out by default in the CiscMPLSSnmp.agnt file.
In addition to these standard discovery configuration activities, you can also change the scope of the
MPLS discovery by restricting the scope to specific VPNs or VRFs.
Procedure
1. Populate the Telnet configuration file TelnetStackPasswords.cfg so the agents can access the
target devices.
2. Configure the Telnet Helper so that agents can understand the output from devices.
Procedure
1. Configure SNMP access to devices.
2. Configure the SNMP Helper so that agents can understand the output from devices.
AsAgent Enables Network Manager to uniquely identify devices in different VPNs with
identical IP addresses, and thereby correctly resolve device connectivity. This
agent works in conjunction with the ASRetprocessing.stch stitcher and with
the ASMap.txt file in NCHOME/precision/etc.
Table 60 on page 329 provides the format of the ASMap.txt file by showing an example of the content of
this file. Fields in this text file must be separated by tabs.
Procedure
1. Exit all instances of the Discovery Configuration GUI.
2. Go to the NCHOME/etc/precision directory.
3. Edit the DiscoConfig.DomainName.cfg file and set the m_RTVPNResolution field to 1 in the
disco.config table. The default is 2 (use VRF).
4. Restart the ncp processes to read the configuration files again:
itnm_stop ncp
itnm_start ncp
What to do next
Note: RT-based discoveries do not require label data. However, you can retrieve the label data as
described in “Fine-tuning label data” on page 335.
5. Click Save .
6. If you want to rediscover MPLS TE tunnels, enable the StandardMPLSTE agent for partial rediscoveries.
a) Click the Partial Rediscovery Agents tab.
b) Select the check box next to the StandardMPLSTE agent.
c) Click Save .
7. Ensure that the SNMP community strings are configured correctly to access the devices in the MPLS TE
tunnels.
Related concepts
MPLS Traffic Engineered tunnel discovery modes
Set the discovery mode according to how much detail you want to retrieve.
Related tasks
Configuring the StandardMPLSTE agent
Configure which tunnels to discover, and what details to retrieve.
Procedure
1. Back up and edit the file NCHOME/etc/precision/DiscoScope.cfg.
2. Locate and edit the insert into the scope.mplsTe table, or create a new insert. Create or edit an insert
similar to the following:
Option Function
ExcludeVPN Does not discover any VRFs within the named VPN
The order of precedence for Exclude and Include within the DiscoAgentDiscoveryScoping section is:
1. Exclude
2. Include
The order of precedence for VRF and VPN within the DiscoAgentDiscoveryScoping is:
1. VRF
2. VPN
For example, if you include a VPN, but another filter excludes a VRF in your VPN, then the VRF is excluded.
If a VPN is excluded, but another filter includes a VRF within that VPN, then the VRF is included.
VRF names are case sensitive and an asterisk ( * ) represents a wildcard for any VRF or VPN name when
used in the name part of the configuration. The wildcard can be used with any of the above options.
Scoping by VPN name works only when the VRF names configured on the devices discovered by the MPLS
agents are in the Cisco-recommended VRF format. A VRF is named based on the VPN or VPNs serviced,
and the topology type. The format for the VRF names are:
For example, in a VPN called precision, a VRF for a hub edge router would be:
V1:precision
A VRF for a spoke edge router in the precision VPN would be:
V1:precision-s
V1:precision-etc
The following example scopes a discovery in a system where there are four VRFs: V65:Precision-etc,
V65:Precision-s, V65:Precision, and V44:AcmeSheds.
Results
You can retrieve label data manually with the following insert in the DiscoAgentDiscoveryScoping section
of the appropriate MPLS agent's .agnt file:
DiscoAgentDiscoveryScoping
{
GetMPLSLabelData = 1;
}
Note: Not all MPLS agents support this setting. Check the description of the agent for information about
whether the specific agent supports this setting. If supported, the agent retrieves label data in addition to
the data used for MPLS discovery. However, the additional label data is not used by any default stitchers
and is not stored in NCIM. Using this option to retrieve label data requires custom data collection with
custom stitchers set up to consume the label data. For more information, see Chapter 18, “Discovering
and using custom data,” on page 417. For help with writing custom stitchers, contact IBM Support.
Procedure
1. Ensure that the output of the UPE and NPE devices is set to display vsi verbose.
2. Ensure that m_RTBasedVPNs in the disco.config database table is set to 1.
3. Ensure that the HuaweiMPLSTelnet discovery agent is enabled.
4. Back up and edit the following stitchers: BuildMPLSContainers.stch,
ResolveVPLSConnections.stch, and MPLSProcessing.stch.
5. Set the value of modelHuaweiVPN to 1 in each stitcher.
What to do next
After discovery is finished, view the devices in a network view by filtering on VPLS VPN.
Column Description
ExtraInfo->m_AddressSpace The name of the NAT address space to which the device
belongs. This value is set in the
translations.NATAddressSpaceIds table. If the
discovery is not using NAT, or if the device is in the public
domain, this value is NULL.
1. Configure the discovery to use network address “Configuring NAT “Enabling NAT
translation. You can do this using the Discovery translation” on page 194 translation” on page 340
Configuration GUI, or using the command line.
2. Define each NAT gateway device and its “Defining address spaces
corresponding address space. You can do this using for NAT gateways” on
the Discovery Configuration GUI, or using the page 340
command line.
3. Seed the Ping finder with the IP address of each “Seeding discovery” on Guidance for seeding a
NAT gateway device. page 183 discovery
“DiscoPingFinderSeeds.cf
g configuration file” on
page 217
Guidance for seeding a
NAT discovery
“Seeding discovery with
NAT gateway addresses”
on page 341
4. Define a scope zone for each NAT gateway device. “Scoping discovery” on Guidance for scoping a
page 182 discovery
Note: You do not need to define a scope zone for any
“DiscoScope.cfg
NAT Gateway devices whose IP address is already
configuration file” on page
within any other scope zones defined for the
220
discovery.
Example: how to define a
Note: Do not define an address space for the NAT
scope zone for a private
gateway devices or for public subnet scopes. Address
NAT subnet
space can only be defined for private subnets.
“Defining a scope zone
within a NAT domain” on
5. Define scope zones for the public subnets page 341
associated with each NAT address space.
Note: Do not define an address space for the NAT
gateway devices or for public subnet scopes. Address
space can only be defined for private subnets.
Procedure
• The IP address must be the public IP address that is accessible from the management server.
• The address space field can be any descriptive string, but avoid special characters such as quotes. Use
the standard rules for DNS names for the address space because the address space might make up
part of the name of these devices.
Results
The following example insert configures the discovery system for two NAT gateways.
The above example defines one inclusion zone. Network Manager discovers any device with an IP address
starting with "172.16.2", that is, in the private 172.16.2.0 subnet with a mask of 255.255.255.0,
and that also belongs to the NAT address space NATDomain1. The protocol is set to 1, that is, IP.
Note: Do not define an address space for the NAT gateway devices or for public subnet scopes. Address
space can only be defined for private subnets.
Procedure
1. Enable the agents. There is an insert into the disco.agents table in the DiscoAgents.cfg configuration
file for every installed discovery agent. To activate an agent, you must alter the insert so that the
m_Valid column for that agent is set to 1. To deactivate an agent, ensure that m_Valid=0.
2. Run a discovery.
$NCHOME/precision/bin/ncp_perl
my $natFileName = "$ENV{$NCHOME}/etc/precision/NATTranslations.txt";
Note: From the perspective of the management station, the public IP address of a particular gateway
translation is not necessarily the same as the public address that the management stations sees. The
public address is the IP address that the gateway retrieves from one port and then translates and
places on another port. This difference is important to note when you have chained gateways, where
an IP address can be translated multiple times. The public IP is effectively the IP address that is closer
to the management domain.
4. Enable the agent. There is an insert in the disco.agents table in the DiscoAgents.cfg configuration file
for every installed discovery agent. To activate an agent, alter the insert so that the m_Valid column for
that agent is set to 1. To deactivate an agent, ensure that m_Valid=0.
5. Ensure that the NATTimer.stch stitcher has been configured to trigger a rediscovery against the NAT
gateways. By default, the NATTimer.stch stitcher runs every hour. You can alter this interval by locating
the following line in the stitcher file and changing the integer value:
6. Run a discovery.
For the first and second address spaces private IP address space is not unique. For both of these address
spaces, the private IP address space is defined by a subnet and netmask combination of 192.168.1.0/29.
Based on this NAT gateway device and address space data, define discovery scopes as follows.
Procedure
1. Define each NAT gateway device and its corresponding address space.
In this example, the names of the three NAT address spaces are RTP1, RTP2, and RTP3. For example,
for the third NAT gateway device, the following insert defines the NAT device and its associated
address space, RTP3:
3. Define scope zones for the public subnets associated with each NAT address space.
For example, for the third public subnet, the following insert defines the scope zone:
4. Define a scope zone for the private subnet associated with the third NAT address space only.
Restriction: You can only define a scope zone for a private NAT address space where the subnet and
netmask combination of the private subnet is unique within the discovery configuration. This excludes
the first and second private subnet.
For the third private subnet, the following insert defines the scope zone:
What to do next
Now you can launch the NAT discovery.
This statement displays a value from 0 to 4. The meaning of the value is:
Procedure
• 0: NAT discovery in initial state. NAT devices have not been processed.
• 1: NAT discovery initiated. NAT gateway IPs have been sent to the Ping finder to verify their existence
• 2: NAT discovery is running.
Results
Use the results of this query to debug a problematic NAT discovery. The value indicates whether any
discovery problems are caused by NAT or caused by the standard (non-NAT) part of the discovery
process.
This query tells you which agents the current phase is waiting for in order to complete. The discovery is
waiting for the agents that are meant to complete in the current phase and are in state 1, 2 or 3.
Using the first query, you can see which agents are still running in a particular phase.
Using the following query, you can determine which entity that particular agent is processing. This can be
useful in determining a problem device within your network:
This second query shows you what base address and base name is being used for a particular IP as well
as whether this IP address is considered to be in scope.
Procedure
1. Back up and edit the $NCHOME/etc/precision/DiscoConfig.domain.cfg file.
2. Make the following settings:
• Set m_EnableCrossDomainProcessing to 1.
• Set m_InferPEsUsingBGP to 0 to disable the inference of Provider Edge (PE) devices. PE device
inference is incompatible with cross-domain discoveries. This setting can also be made in the
Advanced tab of the Network Discovery Configuration GUI by clearing Enable Inference of PEs
using BGP data on CEs.
3. Repeat these steps in the DiscoConfig.domain.cfg file of each domain that you want to be linked.
4. In the LinkDomainsPopulateDomainAdjacencies.stch stitcher file, define the adjacencies
between domains in the tmpDomainAdj.adjacencies table.
Use INSERT statements to define the adjacencies. Sample INSERT statements are provided in the file.
Each INSERT statement defines only one adjacency. You can put the INSERT statements in any order.
For example, to define adjacencies between two domains that are called NORTH and SOUTH use the
following INSERT statement:
The following example shows the INSERT statements to use when you have three domains: EUROPE,
ASIA, and AMERICA. EUROPE is adjacent to both ASIA and AMERICA.
To define an extra adjacency between ASIA and AMERICA, use another INSERT statement:
Procedure
1. Back up and edit the stitcher file NCHOME/precision/disco/stitchers/LinkDomains.stch.
Procedure
1. Back up and edit the stitcher file NCHOME/precision/disco/stitchers/LinkDomains.stch.
2. Optional: To enable /30 connections between devices in different domains to be created as links in the
topology, locate the line that begins int linkViaSlash30Subnet and set the value to 1.
a) Configure the following parameters:
preventLinkPropagation
Set to 0 to add the /30 connection even if there is an existing Layer 2 connection between the
two network entities. Set to 1 to prevent a /30 connection being added if there is already an
existing Layer 2 connection from the entity.
linkSlash30InLayer2
Set to 0 to prevent /30 links being added as Layer 2 links. Set to 1 to add /30 links as Layer 2
links. Setting both this property and linkSlash30InLayer3 to 0 prevents /30 connections
being created, even though they are discovered, which can make the discovery take longer. You
can set both properties to 1 to add /30 links as both Layer 2 and layer 3 links.
linkSlash30InLayer3
Set to 0 to prevent /30 links being added as Layer 3 links. Set to 1 to add /30 links as Layer 3
links. Setting both this property and linkSlash30InLayer2 to 0 prevents /30 connections
being created, even though they are discovered, which can make the discovery take longer. You
can set both properties to 1 to add /30 links as both Layer 2 and layer 3 links.
3. Optional: To enable pseudowire connections between devices in different domains to be created as
links in the topology, locate the line that begins int linkViaPseudoWires and set the value to 1.
a) Configure the following parameters:
Procedure
1. Back up and edit the stitcher file NCHOME/precision/disco/stitchers/
LinkDomainsLoadPresetConnections.stch.
2. Uncomment the OQL insert statement.
3. Copy one OQL insert statement for each connection that you want to make.
4. Edit the OQL insert statement and add the details of the connection that you want to create, using the
following parameters:
entryNo
A unique numeric ID for this row. Start at 1 and increase to n.
action
Set to ADD to add a connection.
aEndDiscoDomainName
The domain in which the device at the beginning of the connection was discovered. This
connection is created only after a discovery is run in this domain.
aEndDiscoEntityName
The entityName of the device at the beginning of the connection.
zEndNCIMDomainName
The domain in which the device at the end of the connection is located. If a discovery is run in only
this domain, this connection is not created.
zEndNCIMEntityName
The entityName of the device at the end of the connection.
topologyEntityType
The NCIM topology entityType of the connection.
Procedure
1. Back up and edit the stitcher file NCHOME/precision/disco/stitchers/
LinkDomainsLoadInterfaceDescriptionMatches.stch.
2. Copy one OQL insert statement for each connection that you want to make.
3. Edit the OQL insert statement and add the details of the connection that you want to create, using the
following parameters:
entryNo
A unique numeric ID for this row. Start at 1 and increase to n.
action
Set to ADD to add a connection.
onlyAdminUp
Set to 1 to restrict the search to interfaces whose administrative status is Up. Set to 0 to include all
interfaces, whether their administrative status is Up or Down.
Results
All interfaces matching the search are connected together.
Example
The following example shows an insert that connects all interfaces in the NCOMS domain whose
descriptions contain the string connection to vmhost_network to all interfaces in the NCOMSADJ
domain whose descriptions also contain the string connection to vmhost_network:
The following example shows an insert that connects all interfaces in the NCOMS domain whose
descriptions match the regular expression ELON(GW|WR|AR) to all interfaces in the NCOMSADJ domain
whose descriptions contain the string connection to PE2_ASBR_AS2:
Procedure
1. Run a full discovery in your first domain.
2. Run a full discovery in your second domain.
3. Run a full discovery in any other domains.
After discovering all domains once, some connections might be duplicated, and your links between
domains might not be as expected.
4. Run a second full discovery in every domain.
Any inferred connections are replaced by discovered connections.
Results
The links between each domain are added by the cross-domain stitchers. The AGGREGATION domain is
created by the aggregation stitching, which runs at the end of discovery (and whenever the topology is
updated).
What to do next
Create any network views you want, using the AGGREGATION domain.
Procedure
1. Click the Incident icon and select Network Availability > Network Views.
Results
Your network view shows devices from all discovered domains.
Procedure
1. Ensure that the appropriate agents are enabled for the technologies and devices that are on the edges
of your domains.
2. Ensure that all the appropriate technologies are enabled for the cross-domain stitching.
3. Check that the boundary between domains is appropriate.
It is important to scope your discovery domains to ensure the minimum of links between domains. For
example, you would not normally split the network such that highly connected switches were in
different domains. Natural splits for domains are often along geographical lines.
Restriction:
However you split your network, you must ensure that any given device appears in only one domain.
That is, the discovery domains must not overlap if you want to join them together using cross-domain
discovery.
4. If you know that links between devices in different domains are present, but they are not shown in the
Network Views, you can add or edit the links manually.
Procedure
1. Ensure that you have the correct licenses for any mapping provider that you intend to use.
"mapProvider": {
"baseMapLayerName": "IBM Network Management",
"baseLayer": "OpenStreetMap",
"baseLayersDefn": [
{
"baseLayerName": "OpenStreetMap",
"baseLayerType": "osm"
},
{
"baseLayerName": "Microsoft Bing",
"baseLayerType": "bing",
"imagerySet": "Road",
"key": "INSERT_YOUR_MICROSOFT_KEY"
},
{
"baseLayerName": "OpenLayer XYZ Format",
"baseLayerType": "xyz",
"urls": ["https://api.mapbox.com/styles/v1/mapbox/
streets-v9/tiles/256/{z}/{x}/{y}?access_token=INSERT_YOUR_KEY"]
},
{
"baseLayerName": "My Custom GeoServer WMS Layer",
"baseLayerType": "wms",
"url": "https://localhost:8443/geoserver/wms",
"params": {
}
},
{
"baseLayerName": "My Custom GeoServer WMTS Layer",
"baseLayerType": "wmts",
"capabilities": {
}
}
],
4. Configure a new or existing base layer. Edit the existing section for a supported map provider or copy
and edit it. You can include multiple base layers for one mapping provider. For example, you can define
multiple base layers that all use the OpenStreetMap provider by editing the baseLayer value.
Important: Do not delete any empty sections from the config.json file. Missing sections can cause
errors.
a) Specify any unique descriptive name for the baseLayerName.
In the preceding example, the baseLayerName value for the first base layer is set to
OpenStreetMap on line 3.
b) Specify the mapping provider for this base layer in the baseLayerType parameter.
You can specify only one of the following defined keywords for the baseLayerType value:
• bing for Bing Maps
• osm for Open Streetmap
• wms for Web Map Service
• wmts for Web Mapping Tile Service
• xyz for OpenLayer XYZ format
5. Configure any mapping provider-specific parameters necessary.
Mapping providers might support additional parameters, however, only those parameters that are
listed in the default configuration are supported by Network Manager. Refer to the mapping provider
documentation for information about what values are acceptable for these parameters.
6. Ensure that the baseLayer parameter exactly matches one of the baseMapLayerName values.
The following example is incorrect because the city and country values are the same.
The following example is correct, because the geographical hierarchy is properly ordered and contained.
Procedure
1. Back up and edit the following stitcher: $NCHOME/precision/disco/stitchers/
PostLayerProcessing.stch.
2. Add the following line at the appropriate place in the file for your discovery data flow, for example, at
the end:
ExecuteStitcher('AddGeoLocationData');
3. Run a discovery.
The AddGeoLocationData stitcher adds geographic data to the appropriate fields within the
m_ExtraInfo field.
Procedure
1. Create a .csv file that contains location information for the devices you want to view in geographical
views. For example, you can export the data from a database to file.
ip,address,city,state,country,latitude,longitude
The following example shows the top two lines of a .csv file.
The sample ACMEDeviceLocationEnrich.stch stitcher expects the .csv file to be in this format.
If you want to use a different format, you must modify the stitcher.
2. Create a database table in the NCIM topology database to store geographical data.
The sample ACMEDeviceLocationEnrich.stch stitcher expects this table to be called
ACMEGeoLocation. If you want to use a different table name, you must modify the stitcher.
For Db2, the database table must contain fields of the following types and specifications:
For Oracle, the database table must contain fields of the following types and specifications:
3. Import the geographical data from the .csv file into the database table you created using your choice
of database tool.
For example, to load a file core_lat_long_all.csv into a table ACMELOOKUPGEOLOCATION in an
NCIM database on Oracle by using Oracle loader V12.1, run the following command from the Oracle
directory.
LOAD DATA
infile 'core_lat_long_all.csv'
REPLACE
INTO TABLE NCIM.ACMELOOKUPGEOLOCATION
fields terminated by ',' optionally enclosed by '"'
(
IP,
ADDRESS,
CITY,
STATE,
COUNTRY,
LATITUDE,
LONGITUDE
)
ExecuteStitcher('ACMEDeviceLocationEnrich', domainId,
6. Run a discovery.
Results
The PopulateDNCIM_CustomGeography.stch stitcher adds devices to the correct geographical
collections based on their location data.
The ACMEDeviceLocationEnrich.stch stitcher populates the geographic tables in the DNCIM
discovery database with data from the NCIM database table that you created.
Procedure
1. Install a mapping provider that implements the WMS standard. Refer to the documentation for the
version of the provider that you are installing.
2. Configure the mapping provider to use SSL.
3. Run the mapping provider and verify that it is working correctly.
You might want to cache a public WMS as a test.
4. Configure a base mapping layer to use a WMS mapping provider.
a) Back up and edit the following file: $JazzSM_HOME/profile/installedApps/
JazzSMNode01Cell/isc.ear/ncp_gis.war/resources/config.json
b) Configure a new section within the baseLayersDefn section and specify the correct parameters.
The WMS parameters that are accepted by OpenLayers are listed at http://openlayers.org/en/latest/
apidoc/ol.source.TileWMS.html. The parameters that you must use are defined in the WMS request
specification of your WMS server.
Use the following syntax for parameters: "PARAM_NAME":"PARAM_VALUE". To avoid errors, use a
validation tool to validate the JSON.
c) To configure the new base layer as the default, set the baseLayer value to the baseLayerName of
the new base layer.
The following example configures parameters for a GeoServer integration.
If you do not specify any parameters in the "params": {} section, leave the section empty.
Important: Do not delete any empty sections from the config.json file. Missing sections can cause
errors.
For offline map integration, the baseLayerType value must be wms.
Specify any unique descriptive name for the baseLayerName.
Procedure
1. Back up and edit the following file: $JazzSM_HOME/profile/installedApps/
JazzSMNode01Cell/isc.ear/ncp_gis.war/resources/config.json
2. Create a new customLayers section or uncomment one of the default sections, and specify the
correct parameters.
The WMS parameters that are accepted by OpenLayers are listed at http://openlayers.org/en/latest/
apidoc/ol.source.TileWMS.html. The parameters that you must use are defined in the WMS request
specification of your WMS server. Use the following syntax for parameters:
"PARAM_NAME":"PARAM_VALUE". To avoid errors, use a validation tool to validate the JSON.
The ArcGISRest parameters that are accepted by OpenLayers are listed at https://openlayers.org/en/
latest/apidoc/module-ol_source_TileArcGISRest-TileArcGISRest.html.
The WMTS parameters that are accepted by OpenLayers are listed at https://openlayers.org/en/latest/
apidoc/module-ol_source_WMTS.html.
The following example configures parameters for one WMS custom layer, one ArcGISRest custom
layer, and one WMTS custom layer.
"customLayers": [
{
"layerName": "Drainage Divisions",
"layerType": "wms",
"url": "http://geoserver.nationalmap.nicta.com.au/
admin_bnds_abs/ows",
"params": {
"LAYERS": "admin_bnds:ADD_2011_AUST"
}
"selected":"true"
"selected":"false"
}
{
"layerName": "New Zealand Earthquakes",
"layerType": "wmts",
"capabilities": {
"url": "https://openlayers.org/en/v4.3.4/examples
/data/WMTSCapabilities.xml",
"layer": "layer-7328",
"matrixSet": "EPSG:3857"
}
"selected":"false"
}
]
If you do not supply any arcGISRest parameters, include the line but leave it empty: "params":
{}. Removing or omitting sections from the file causes errors.
The layerName parameter can be set to any unique descriptive value.
For custom map layers, the layerType value must be one of the following supported values:
• arcGISRest
• wms
• wmts
Custom layers that have the selected parameter set to true are displayed by default in the
geographical views. The user can show or hide any custom layers.
3. Define multiple layers if you want. The z-index of the layers is defined by their position in the file. To
display one custom layer above another layer, define it higher in the file. The topology layer is
displayed on top of the other layers, and the base layer is displayed underneath the other layers.
Procedure
1. Check the logs for the ncp_disco process in the $NCHOME/log/precision directory to find out if
the geographical stitchers that you configured are working.
2. Query the location tables in the NCIM topology database to find out if they are populated with
geographic data.
For example, use the following command:
3. Log into Dashboard Application Services Hub. Open the following URL:
https://server:port/ibm/console/nm_rest/topology/devices/geo/all
If geographical discovery completed successfully, JSON results for the geographically enriched
devices are displayed.
4. Open a geographic view and check that the expected devices appear.
Procedure
1. Install the Netcool/OMNIbus Knowledge Library version 4.8.1 or above.
2. Configure the Netcool/OMNIbus Knowledge Library for use with the SNMP Probe.
This step allows event status to be associated with IP SLA Probes in the network topology.
3. Enable the appropriate IP SLA agent.
This step allows IP SLA Probes to be discovered. For more information on the IP SLA agents available,
see Service Level Agreement agents in the IBM Tivoli Network Manager Reference.
4. Run a discovery.
What to do next
You can now monitor IP SLA response times by using the network views, Network Hop View, and
Structure Browser. See Monitoring IP Service Level Agreement (IP SLA) configurations in the IBM Tivoli
Network Manager User Guide.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Select a domain.
3. Click the Monitoring tab.
4. Start either a full or partial discovery by selecting the option from the Start Discovery button .
Results
The following phases are shown in the table.
Interrogating Devices
During this phase, devices are first discovered by the finders, and then information is retrieved from
the devices by the agents. This phase is also known as phase 1.
Resolving Addresses
During this phase, the agents resolve IP to MAC address translations. This phase is also known as
phase 2.
Downloading Connections
During this phase, the switch agents download the forwarding tables from the switches in the
network. This phase is also known as phase 3.
Correlating Connections
During this phase, the connectivity between the devices is calculated, the containment model is
created, and the network topology is built. This phase is also known as phase -1.
You can see which phase the current discovery is in by looking at the Status column of the table. If a
phase has not started, this column is empty. If a phase is in progress, this column shows a spinning wheel
icon. If a phase has completed successfully, this column shows a green tick icon.
You can see how long each phase is taking in the Elapsed Time column in the table. Each phase takes a
different amount of time depending on the scope of the discovery, the complexity of the network, and the
amount of detail being retrieved from the devices. If the elapsed time continues to increase, and the work
completed does not increase, the discovery might be encountering problems.
Remember: In the first phase, the count of IP addresses discovered stops increasing part way through
the phase. This is part of the normal operation of the discovery. The count of IP addresses discovered only
increases during the first part of the phase, while the finders discover new devices. In the latter part of the
phase, the discovery agents retrieve information from these devices, and new IP addresses are not
discovered.
The Discovery Agents section shows the progress of the discovery agents. If you think that a phase is
taking too long to complete, click the Discovery Agents tab to see what the discovery agents are doing.
You can see the progress within a phase in the Work Completed column in the table. For the first phase,
this column shows the number of IP addresses found so far. For the other phases, this column shows the
percentage of work completed in the phase.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Within Network Discovery Status, click the Monitoring bar.
Results
You can see the time that is taken to complete each phase of the previous discovery in the Previous
subcolumn of the Elapsed Time column.
Note: To display discovery times from all previous discoveries, run the disco_profiling_data.pl
script from the command line. For more information about the disco_profiling_data.pl script, see
the IBM Tivoli Network Manager IP Edition Administration Guide.
The time that is taken for each phase depends on the scope of the discovery, the complexity of the
network, and the amount of detail that is retrieved from the devices. If the network is not changed
significantly, and the discovery scope and settings are not changed significantly, but the elapsed time for a
phase in the current discovery is more than the time taken for the same phase in the previous discovery,
the discovery might be encountering problems.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Within Network Discovery Status, click the Ping Finder Status tab.
Results
You can use the Ping Finder Status table to see which IP addresses and subnets are discovered up to this
point. If the ping finder is processing a subnet, you can also see which IP address was last pinged.
The Ping Finder Status table contains the following information:
Address
A list of IPs and subnets discovered to this point.
Netmask
For each subnet, this column indicates the netmask value.
Last Pinged
The last IP address pinged.
Status
Indicates whether the Ping finder is still pinging this device or subnet or whether it has completed
pinging.
Stopped Ping finder has not started pinging this subnet or IP address.
Awaiting System is awaiting Ping finder status for this subnet or IP address.
status
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Click the Agents Status tab.
The Agents Status section contains two tables, the Agents Status table at the top and the Entity
Status table below. The Agents Status table toolbar contains the following controls.
Filter Agents by Phase
Use the phase drop-down list to select a discovery phase. The agents table then displays the
following agents:
• Full or partial discovery: all discovery agents that have started during the current discovery and
that are scheduled to finish in the discovery phase that you selected.
Refresh
Refreshes the data in both the Agents Status and Entity Status table. The icon changes to the
Refreshing icon while the table data is being refreshed. You cannot refresh the tables again
until the refresh has completed.
The Agents Status table lists all the agents that have started so far during this discovery and contains
the following information. This information is updated every 20 seconds. When you first open this
table, it is sorted by descending order of State.
Agent
Discovery agents that have started during the current discovery and that are scheduled to finish in
the discovery phase that you selected.
Completes in Phase
The phase in which the discovery agent completes.
State
Current state of the discovery agent. Possible states, in the default descending order, are listed in
the following table.
Finished 4 The agent is still running but has finished processing of all the
entities in its queue. The agent is still available to process any
further agents placed in the queue.
Total Entities
The total number of entities that this agent is required to process. This number varies as follows:
Elapsed Time
The time taken for the agent to process this entity, expressed in the format HH:MM:SS. This value
is only displayed for those entities that have completed processing.
The results from the query show the current status of all stitchers that have been called by the discovery
process so far. Note that the results shown above have been abbreviated.
The results of the above query show that only the Details agent and the IpRoutingTable agent are active
(that is, they have a state greater than zero).
The above query shows the devices discovered by the Ping finder as well as devices reported as a result of
connections discovered by the IpRoutingTable Discovery agent.
Sample: Identifying devices that have been sent to the Details agent
The following example shows how to identify devices that have been sent to the Details agent.
Sample: Identifying devices that have been returned from the Details agent
To identify which devices have returned from the Details agent, query the returns table of the Details
agent, as shown below.
Once you have identified which agents still need to complete in the current phase, use the following query
to determine which devices those agents are working on.
select
m_Name,
m_UniqueAddress,
m_ObjectId,
m_Description
from
<agentName>.despatch
where
m_UniqueAddress NOT IN
(( select m_UniqueAddress from <agentName>.returns where m_LastRecord = 1 )) ;
Sample: Identifying whether a device has been returned from the AssocAddress agent
If the device is not present in the workingEntities database, you can use the following example query to
determine if the device has been returned from the AssocAddress agent.
Sample: Identifying whether a device has been returned from the Details agent
If the device has not been returned from the AssocAddress agent, you can use the following example
query to determine if the device has been returned from the Details agent.
Sample: Identify whether a device has been sent to the Details agent
If the device has not been returned from the Details agent, you can check if the device has been sent to
the Details agent by querying the Details.despatch table, as shown below. This result indicates that
the device has been sent to the Details agent, but has not yet been processed.
{
m_UniqueAddress='10.1.1.20';
m_Name='OpticalNE3';
m_ManagerId='localhost:8081_1';
m_HaveAccess=1;
m_Protocol=1;
m_UpdAgent='CollectorLayer1';
m_LocalNbr={
m_InterfaceId='STS 2';
m_LocalNbrName='OpticalNE3';
};
m_RemoteNbr={
m_RemoteNbrName='OpticalNE1';
m_Unidirectional=1;
};
}
Procedure
1. Log into the OQL Service Provider using the following command:
ncp_oql -domain NCOMS -username admin -service ncim
You can also issue this query using the Management Database Access page.
2. Specify the relevant password when prompted.
3. Type the following query:
select * from entityClass;
go
The following table shows an example of the output of this query:
Procedure
1. Go to the NCHOME/precision/aoc directory.
2. Back up any files that you want to edit.
3. Create a text file or edit an existing AOC file by using a text editor.
For example, the Tellabs63xx.aoc file uses the alias Description to reference the
m_Description field: instantiate_rule = "Description = 'Tellabs 6340_OLD'.
• If the device type can be uniquely identified using a different field from the
workingEntities.finalEntity database table, then specify the field name. For example, the
VirtualHost.aoc file uses the ExtraInfo->m_IsVirtualMachine field in the
workingEntities.finalEntity database table: instantiate_rule = "ExtraInfo-
>m_IsVirtualMachine = 1".
6. If you created a new AOC file, add an insert to the class.classIds database table in the
ClassSchema.cfg configuration file.
7. Edit the startup options for the ncp_class process and set the -read_aocs_from option to ensure
that the new or changed AOC files are read.
8. Restart the ncp_class process after you change the AOC files. After ncp_class is restarted and
running, restart the ncp_disco process.
9. Ensure that a domain-specific version of any new AOC files is present in the NCHOME/
precision/aoc directory.
10. Back up and remove the class cache files in the NCHOME/var/precision directory.
For example, remove the following cache files:
Class.Cache.class.activeClasses.NCOMS
Class.Cache.class.staticClasses.NCOMS
11. Run a full discovery and check that the results match the changes you made.
Procedure
1. Log into the OQL Service Provider or access the Management Database Access.
2. Issue the following query to the disco.status table to confirm that the ncp_disco process is in
rediscovery mode:
select * from disco.status;
Here is a sample response.
m_DiscoveryMode=1;
m_Phase=1;
m_BlackoutState=0;
m_CycleCount=0;
m_ProcessingNeeded=0;
m_FullDiscovery=0;
From the results returned by the query, you can see that ncp_disco is currently in the rediscovery
mode, that is, m_DiscoveryMode=1.
3. Start the SendTopologyToModel stitcher.
The SendTopologyToModel sends the topology from ncp_disco to ncp_model.
a) Ensure that you are in the OQL Service Provider or the Management Database Access.
b) To insert the stitcher into the stitchers.actions table, issue the following command:
After your OQL insert is accepted, the stitcher is invoked and the network topology is sent to
ncp_model. When the topology is sent, it is instantiated in accordance with the modified AOC
hierarchy.
4. In order to ensure that the newly classified devices are removed from the Devices with Unclassified
SNMP Object IDs report and the Devices with Unknown SNMP Object IDs report, perform the following
steps:
a) Clarify exactly which new sysObjectId values are being mapped by the new or edited AOC files.
For example, the original AOC files mapped the following sysObjectId values:
• 1.2.3.4
• 1.5.6.*
Then two new sysObjectId values are added to the system: 1.9.8 and 1.5.6.7. In the AOC file, the
sysObjectId value 1.5.6.7 is covered by the mapping 1.5.6.*. However, the AOC file must be updated
to add the sysObjectId value 1.9.8.
b) Clarify which AOC files are mapped by the NCIM topology database mappings table.
The mappings table is used by the Devices with Unclassified SNMP Object IDs report and the
Devices with Unknown SNMP Object IDs report to determine which data to show in the reports.
In the AOC file, only the sysObjectId value 1.9.8 needed to be added because the generic mapping
1.5.6.* covered the new sysObjectId value 1.5.6.7. However, in the NCIM topology database
mappings table both sysObjectId values 1.9.8 and 1.5.6.7 must be added.
c) From the command line, update the NCIM topology database mappings table with relevant records
for the new sysObjectId values.
For example, to add records for the two new sysObjectId values 1.9.8 and 1.5.6.7, issue the
following SQL insert statements:
Where device_type is the device type to which the sysObjectId value must be mapped.
For information on the NCIM topology database mappings table, see the IBM Tivoli Network
Manager Reference.
Results
After the AOC changes have been applied to the topology, either automatically by waiting for the next
discovery, or manually by performing the steps in this topic, you will notice the following changes are
applied to network polling and visualization.
• When you define a new polling policy, the new classes you defined are displayed in the Classes tab in
the Poll Policy Editor.
• When you visualize the network using network views, the network view tree now displays the classes
defined in the modified class hierarchy.
• If you updated the NCIM topology database mappings table as described then the Devices with
Unclassified SNMP Object IDs report and the Devices with Unknown SNMP Object IDs report no longer
return any devices.
EndNode class
Use this sample EndNode class AOC file to understand how Network Manager assigns discovered devices
to the EndNode class.
Sample
The following sample AOC file fragment assigns devices to the EndNode class using the filter defined in
the instantiate_rule clause.
//*************************************************************
//
// File : EndNode.aoc
//
//*************************************************************
active object 'EndNode'
{
super_class = 'Core';
instantiate_rule = "EntityOID like '1 \.3\.6\.1\.4\.1\.2021\.' OR
EntityOID = '1.3.6.1.4.1.2021' OR
EntityOID = '1.3.6.1.4.1.1575' OR
EntityOID like '1 \.3\.6\.1\.4\.1\.11\.2\.3\.9\.' OR
EntityOID = '1.3.6.1.4.1.11.2.3.9' OR
(EntityType = 1 AND EntityOID IS NULL)
OR
...
OR
(
EntityOID = '1.3.6.1.4.1.1977'
)
OR
(
EntityOID like '1\.3\.6\.1\.4\.1\.2136\.'
)
OR
...
For the EndNode class the instantiate_rule is very long. It consists of multiple lines comparing the
EntityOID, (this is the sysObjectID of the device), to various values, joined together by an OR operator.
There are different versions of the OR comparison:
EntityOID = '1.3.6.1.4.1.2021'
This filter is looking for an exact match of the EntityOID to the value 1.3.6.1.4.1.2021. If the match is
not exact, then the comparison fails and the device is not assigned to the EndNode class.
EntityOID like '1\.3\.6\.1\.4\.1\.11\.2\.3\.9\.'
This filter is looking for a match like the value 1\.3\.6\.1\.4\.1\.11\.2\.3\.9\. The \. is required to make
sure that the . (period) is matched. Also, notice that the value ends in \. This allows matching OIDs
that start with the specified value but have additional values following the last . (period) specified.
NetworkDevice class
Use this sample NetworkDevice class AOC file to understand how Network Manager assigns discovered
devices to the NetworkDevice class.
Sample
The following sample AOC file fragment assigns devices to the NetworkDevice class using the filter
defined in the instantiate_rule clause.
//*************************************************************
//
// File : NetworkDevice.aoc
//
For the NetworkDevice class, the instantiate_rule tries to match device types. The following examples are
filters that are used in the instantiate_rule.
EntityType = 1
Matches all entities discovered that are chassis devices. Chassis devices have the field entityType set
to a value of 1 in the NCIM topology database entityData table.
EntityType = 2
Matches all entities discovered that are ports or interfaces. Ports and interfaces have the field
entityType set to a value of 2 in the NCIM topology database entityData table.
EntityType = 3
Matches all entities discovered that are logical interfaces. Logical interfaces have the field entityType
set to a value of 3 in the NCIM topology database entityData table.
EntityType = 5
Matches all entities discovered that are cards. Cards have the field entityType set to a value of 5 in the
NCIM topology database entityData table.
EntityType = 6
Matches all entities discovered that are power supply units (PSUs). PSUs have the field entityType set
to a value of 6 in the NCIM topology database entityData table.
EntityType = 8
Matches all entities discovered that are modules. Modules have the field entityType set to a value of 8
in the NCIM topology database entityData table.
Sample
The following sample AOC file fragment assigns devices to the EWindowsNetHarmoni class using the filter
defined in the instantiate_rule clause. This is an EndNode device.
//*************************************************************
//
// File : EWindowsNetHarmoni.aoc
//
//*************************************************************
active object 'EWindowsNetHarmoni'
{
super_class ='EndNode';
For the EWindowsNetHarmoni class, the following parameters are defined in the AOC file. The
instantiate_rule parameter is long. It consists of multiple lines comparing the EntityOID, (this is the
sysObjectID of the device), to various values, joined together by an OR operator. There are different
versions of the OR comparison:
Entity types
The entityType table contains all the entity types that are available in the NCIM topology database.
The following table lists the entity types available in the topology database.
192 Probe Collection Collecti probeCollection Provides a collection facility for probes
on or probe collections.
200 LTE S1-U Topolog entityData Topology type for LTE S1-U connectivity.
y
201 LTE S5 Topolog entityData Topology type for LTE S5 connectivity.
y
202 LTE S8 Topolog entityData Topology type for LTE S8 connectivity.
y
203 LTE S1-MME Topolog entityData Topology type for LTE S1-MME connectivity.
y
204 LTE S10 Topolog entityData Topology type for LTE S10 connectivity.
y
205 LTE S11 Topolog entityData Topology type for LTE S11 connectivity.
y
206 LTE SGi Topolog entityData Topology type for LTE SGi connectivity.
y
207 LTE Gx Topolog entityData Topology type for LTE Gx connectivity.
y
208 LTE S3 Topolog entityData Topology type for LTE S3 connectivity.
y
209 LTE S4 Topolog entityData Topology type for LTE S4 connectivity.
y
210 LTE S6a Topolog entityData Topology type for LTE S6a connectivity.
y
211 LTE S13 Topolog entityData Topology type for LTE S13 connectivity.
y
212 LTE X2 Topolog entityData Topology type for LTE X2 connectivity.
y
250 NR Sector Element eUtranSector 5G New Radio Sector Entity.
251 NR Cell DU Element NRCellDU Represents a geographical area of radio coverage
and is implemented and supported by physical
radio equipment for 5G LTE, such as towers,
amplifiers, and antennas.
252 NR Cell CU Element NRCellCU Represents a geographical area of radio coverage
and is implemented and supported by physical
radio equipment for 5G LTE, such as towers,
amplifiers, and antennas.
Scheduling discoveries
After a full discovery completes, you can schedule further discoveries by inserting the time, date, and day
for discoveries to run in the FullDiscovery.stch stitcher file.
Procedure
1. Back up the NCHOME/precision/disco/stitchers/FullDiscovery.stch file.
2. Create separate instances of the FullDiscovery.stch file for each domain in the network.
To create a domain-specific instance, insert .domain into the file name.
For example, FullDiscovery.NCOMS.stch.
If you do not have separate FullDiscovery.stch files for each domain, all the domains on the
network are discovered.
3. Schedule the discovery of the first domain.
In a FullDiscovery.domain.stch file, uncomment one of the ActOnTimedTrigger lines. Then,
change it to run the discovery at a certain time.
For example, to schedule the discovery for 11:00 PM every day, change the line as follows:
4. Repeat the steps in the FullDiscovery.stch file for each domain on the network.
Examples
• To schedule a discovery on the sixth day of the week since Sunday (that is, on Saturdays) at 11 PM:
Procedure
1. Select the domain in which you want to run a discovery from the Domain menu. You can start to type
the name of the domain, and matching domains are listed below the Domain field.
2. Click the downward-facing arrow next to the Start Discovery button and select Start Partial
Discovery from the menu. The Partial Discovery window is displayed. Specify the IP addresses and
subnets that contain the devices to be discovered
3. Under Partial Discovery, select the required nodes and subnets.
4. To add a new subnet or node, click New.
5. Complete the fields as follows and click OK:
Discover
Select one of the following options:
Identifier
Type the required IP address.
Subnet
Type the required subnet and specify the number of netmask bits. The Netmask field is
automatically updated.
7. To add a new discovery scope zone click New . To edit an existing scope zone, click the required
entry in the list.
8. Complete the fields as follows and click OK:
Action
Define the subnet range as an inclusion zone or exclusion zone. If the subnet range is an inclusion
zone that you intend to ping during the discovery, click Add to Ping Seed List. Clicking this option
automatically adds the devices in the scope zone as a discovery seed devices.
Restriction: The Add to Ping Seed List option is not available for IPv6 scope zones. This
prevents ping sweeping of IPv6 subnets, which can potentially contain billions of devices to be
pinged. Ping sweeping of IPv6 subnets can therefore result in a non-terminating discovery.
9. Click OK then click Go.
When a partial discovery is running, the Start Discovery button is toggled off .
Manual discovery
To manually discover the device with IP address 192.168.1.2, first start the OQL Service Provider using
the following command:
Having logged into the OQL provider, run the following query (note that the command is entered on one
line):
When discovery of a device is forced like this, ncp_disco immediately passes it to the Ping finder to
confirm it exists, and, if it does, triggers the appropriate agents to reanalyze it. If the connections from the
device have changed, neighboring devices might also be discovered.
Procedure
1. Remove the device from the topology database using the RemoveNode.pl script.
2. Physically remove the device from the network.
Procedure
1. Enter a command similar to the following to start the OQL Service Provider:
2. Update the LingerTime field in the ncimCache.lingerTime table for all entities that represent the
device. For example, if the device is called core-router.abcd.com, enter the following command,
on one line:
Resolving unclassified Asset reports: Using these reports, you can create leaf-node
devices • Interface Availability AOC files for the new device class.
• Summary By Device Class
• Vendor and Device
Availability
Resolving devices Troubleshooting reports: Using the information in this report, you can
with unregistered Devices with Unknown SNMP modify the AOC files associated with the
SNMP object IDs Object IDs unregistered devices.
Identifying devices Troubleshooting reports: This report displays information on devices to
pending deletion Devices Pending Delete on Next be deleted from the topology if they are not
Discovery found during the next discovery cycle. The
report allows you to check that removal of
devices from the topology is progressing, and
to identify devices erroneously scheduled for
removal.
Procedure
1. Click the Incident icon and select Events > Event Viewer.
2. Apply a filter to the Event Viewer so that only events with an Agent of ncp_disco are displayed.
3. Optional: Refine the filter or sort on EventId to view only specific kinds of discovery events.
4. Ensure that the LocalPriObj and LocalSecObj columns are displayed in the Event Viewer. These
columns contain information for discovery events. (Not all columns are used by all events.)
$NCHOME/precision/embeddedDb/sqlite/processName.domain
Where:
• processName is the name of the Network Manager process that is using DNCIM. In this case, this is the
name of the Discovery engine, ncp_disco.
• domain is the name of the current domain.
For example, if the name of the current domain is NCOMS, then the database files are located here:
$NCHOME/precision/embeddedDb/sqlite/ncp_disco.NCOMS
Note: This will result in a small delay to the next discovery because the DNCIM database must be rebuilt.
Note: For a large database, the delete operation can take a long time.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Within Network Discovery Status, click the Agents Status tab.
3. Set the Phases drop-down list above the upper Agents table to Interrogating Devices.
The upper Agents table now displays only agents that are scheduled to complete in the first discovery
phase, Interrogating Devices.
Note: This problem usually occurs during the first discovery phase, Interrogating Devices.
4. Ensure that the State column is sorted in descending order.
The agents appear by default in descending order of agent state, as listed in the following table.
Finished 4 The agent is still running but has finished processing of all the
entities in its queue. The agent is still available to process any
further agents placed in the queue.
5. Scroll down the table to find the agents that have the status Running .
These are the agents that are still processing devices. If the discovery has been running for an
unusually long time, then there might be just one agent that still has Running status . This is the
blocked agent.
6. Select one of the agents with Running status .
By default, the lower table now displays all the entities that are still queued for this agent.
7. Click the All radio button above the lower table.
The lower table now shows all entities that have been processed by this agent, that are still being
processed by this agents, or that are in the agent queue.
8. Ensure that the State column is sorted in descending order.
The entities appear by default in descending order of agent state, as listed in the following table.
9. Scroll down the table to find the entities that have the status Running .
These entities are still being processed by this agent. If the agent is stuck on a single device, then
there will only be one entity with Running status .
10. Look at the other information in the table to find out more about this entity.
The Elapsed Time column indicates how long the agent has been processing this device. The SNMP
Access column indicates whether the agent was able to gain SNMP access to this device. If the agent
was unable to gain SNMP access to the device, there might be a problem with SNMP community
string settings. Further investigation of this device is required.
11. If the device has a large number of interfaces, the discovery might appear to be stuck on this device
because it takes a long time to download all the information. Configure an interface filter for this
device to filter out information that you are not interested in. When you run discovery again, the
SNMP helper retrieves less information from the device, and this might solve the problem.
Procedure
1. Click the Discovery icon and select Network Discovery Status.
2. Within Network Discovery Status, click the Agents Status tab.
3. Ensure that the Phases drop-down list above the upper Agents table is set to All Phases.
The upper Agents table now displays all agents that started so far in this discovery.
4. Click the State column in the upper Agents table so that the agents are ordered in descending order of
State.
The agents now appear in the table in alphabetical order of status.
5. Any agents that terminated unexpectedly are at the top of the table and have the status Died.
What to do next
Further investigation is required to determine why this agent terminated unexpectedly.
Procedure
1. Verify that the device you are looking for is running and connected to the network.
2. Search for the device.
a) Search for the device in the network maps by hostname and then by IP address.
b) If you know which devices it is connected to, try finding one of the connected devices in the
Network Hop View. Then set the number of hops to 1 and see if the device is shown as connected.
3. Check whether the device is in scope. Review the discovery scope, including exclusion zones, in the
Scope tab of the Network Discovery Configuration GUI.
4. Check if the device is being filtered out of the discovery.
a) Click Filters.
b) Review the prediscovery and postdiscovery filters to ensure that the device is not being prevented
from being discovered or instantiated.
c) Search the ncp_disco.domain.log file for the device name.
If a device relationship has been filtered out by a postdiscovery filter, messages are present such
as:
Procedure
1. If you are using the file finder, check that you have correctly specified which field in the seed file
contains the IP address and which contains the host name. You can verify these settings in the
Discovery Configuration GUI.
2. If you are using the ping finder and pinging individual IP addresses, check that these IP addresses are
reachable. If not, you might have a network outage or a firewall issue.
3. Verify that the seed IP addresses are in scope. Even if you add an address to the ping finder or file
finder, the device is not pinged or instantiated if it is not included in the scope. For example, if your
discovery scope is 172.16.1.0 /24 and your seeds are in the 192.168.1.0 /24 network, then the finders
cannot find them.
4. If you are pinging a large, sparsely populated subnet, for example, a class B subnet containing only 10
devices, the ping finder might take a long time to find the first device.
What to do next
If you need to review the discovery logs, refer to the information about locating log files and changing
logging levels in the IBM Tivoli Network Manager IP Edition Administration Guide.
Procedure
1. Stop all Network Manager processes using the itnm_stop script.
2. Navigate to the $NCHOME/var/precision directory and remove all files that belong to the domain
you wish to remove. Files that belong to a particular domain have the domain in the file name. For
example, a configuration file belonging to the domain NCOMS would be called
file_name.NCOMS.cfg.
3. Navigate to the $PRECISION_HOME/embeddedDb/sqlite directory and delete the
ncp_disco.domain directory.
4. Optional: Archive or remove existing log files to start the next discovery with fresh log files. The log
files for the following processes are relevant:
Procedure
1. Back up and edit the SnmpStackSchema.cfg file.
2. Locate the line that configures an insert into the snmpStack.conversionCfg table and edit it to the
following:
Results
The SNMP Helper substitutes characters returned from devices that are not allowed in the database
locale with the question mark character: '?'.
The SNMP Helper substitutes characters on only those objects that are configured in the
snmpStack.multibyteObjects table.
vi /var/tmp/logged_hosts
In this example text file fragment, the third column holds customer information, and the fourth column
holds location information.
Procedure
1. Edit the DiscoFileFinderParseRules.cfg configuration file.
2. In this configuration file, configure the File finder to parse the seed file using an insert similar to the
example. Ensure that you configure the m_ColDefs field to match the new custom tag columns.
What to do next
Ensure that the new data is propagated between discoveries.
Procedure
1. Edit the DiscoConfig.cfg configuration file.
2. In this configuration file, add an insert similar to the following.
What to do next
You can now run a full discovery to discover your network with the custom tags.
Procedure
1. Edit the DiscoConfig.cfg configuration file.
2. In this configuration file, add the following insert:
What to do next
You can now run a full discovery to discover your network with the custom tags.
Procedure
1. Add data to the disco.filterCustomTags or disco.ipCustomTags table to specify which entities to apply
custom tags to.
2. Edit the DiscoConfig.cfg configuration file to configure the GetCustomTag stitcher.
3. In this configuration file, add the following insert:
This insert configures the system to use the GetCustomTag.stch stitcher to look up the value of the
customer field for each entity in the subnet 172.20.3.0/24. The GetCustomTag.stch stitcher must
be modified to provide this information, otherwise the name/value pair is not added to the entity.
4. Save the DiscoConfig.cfg configuration file.
5. Modify the GetCustomTag.stch stitcher to support the custom tag.
The GetCustomTag.stch stitcher receives the tag and entity name as stitcher arguments 1 and 2
respectively and returns a text value. Customize the GetCustomTag.stch stitcher to determine the
appropriate return values, depending on what you want to use the data for. In the following example,
the stitcher is customized to check for the string lon in the supplied entity name. If the entity name
UserDefinedStitcher
{
StitcherTrigger
{
// Called from another stitcher when tag criteria is met
}
StitcherRules
{
text tagName = eval(text,'$ARG_1');
text entityName = eval(text,'$ARG_2');
if(tagName == "customer")
{
// insert logic to retrieve custom tag
//
// As an example, here we use pattern matching to
// assign all entities with 'lon' in their name
// to the A-Z Inc. customer.
//
int count = MatchPattern(entityName, '(lon)');
if (count == 1)
{
value = "A-Z Inc., London";
}
else
{
// Not an A-Z Inc. device.
// If we leave value as NULL then no
// 'customer' custom tag will be
// created, however in this example we
// want such entities tagged with
// 'none'..
value = "none";
}
}
SetReturnValue(value);
}
}
Note: Only entities that pass the criteria configured in the disco.filterCustomTags or
disco.ipCustomTags table are passed to the GetCustomTag.stch stitcher.
Results
The following custom name-value pair tag is added to all IP addresses in the subnet 172.20.3.0/24:
What to do next
You must now configure the DbEntityDetails.cfg configuration file to ensure that, following
discovery, the NCIM topology database entityDetails table is updated with the custom tags.
UserDefinedStitcher
{
StitcherTrigger
{
// Called from another stitcher when tag criteria
// is met
}
if(tagName == "customer")
{
// insert logic to retrieve custom tag
//
// As an example, here we use pattern matching
// to assign all entities with 'lon'
// in their name to the A-Z Inc. customer.
//
int count = MatchPattern(entityName, '(lon)');
if (count == 1)
{
value = "A-Z Inc., London";
}
else
{
// Not an A-Z Inc. device.
// If we leave value as NULL then no 'customer'
// custom tag will be created,
// however in this example we want
// such entities tagged with 'none'..
value = "none";
}
}
SetReturnValue(value);
}
}
Procedure
1. Edit the DbEntityDetails.cfg configuration file.
Note: Editing the ModelNcimDb.cfg configuration file makes it more difficult to migrate your
customizations. Edit the DbEntityDetails.cfg configuration file instead.
2. Add an insert into the dbModel.entityDetails database table to extend the default EntityType filter.
You can have only one entityDetails mapping per EntityType filter. For example, append a mapping
similar to the following code:
Results
The next time that a full discovery is run, the name-value pairs are inserted into the entityDetails table in
the DNCIM discovery database. The data in the entityDetails table in DNCIM is automatically copied to the
entityDetails table in NCIM and the ncimCache.entityData table.
What to do next
Ensure that custom name-value pairs are preserved between discoveries.
Procedure
1. Back up and edit the NCHOME/etc/precision/ModelSchema.cfg file.
2. Locate the insert into the model.config table and set the KeepOldEntityDetails field to 1 (enabled).
For example, the insert might look like this:
Procedure
1. Define the new table in NCIM by using the command line tool for your database, or ncp_oql.
2. Call the first field of the new table entityID and define the field as a foreign key to the entityData
table.
Defining the entityID field in this way links the extra information about the entity to the main NCIM
entity register. If the entity is removed from the entityData table, the data is also deleted from the
custom table.
3. Restart Network Manager.
4. Optional: Insert some example data into the new table and test if it is suitable for your purpose.
The following example SQL statement shows how to create a custom table exampleCustomData in
NCIM for Oracle. The table used in the example is based on the example dNCIM customisation defined in
the createCustomization.sql file supplied with Network Manager.
What to do next
Now create the same table in the DNCIM discovery database.
Procedure
1. Modify the sample SQL script createCustomization.sql script to define the tables to store your
custom data.
2. Save the file $NCHOME/precision/scripts/sql/sqlite/createCustomization.sql.
3. Delete the old dNCIM database directory $NCHOME/precision/embeddedDb/sqlite/
ncp_disco.domain_name/.
Where domain_name is the name of the relevant domain.
The dNCIM database directory $NCHOME/precision/embeddedDb/sqlite/
ncp_disco.domain_name/ will be recreated when you next restart the Discovery engine, ncp_disco.
The new dNCIM database directory will pick up the changes that you specified in the
createCustomization.sql SQL script.
What to do next
You must also configure NCIM to store the custom data.
Inserting data discovered using the File finder, a discovery agent, or collector
The following insert adds a single row of custom data about an existing entity. In the mapping, the values
on the left are the field names of a new table called exampleCustomData. The exampleCustomData
table must be created in dNCIM and NCIM. The eval statements on the right take the values from the
workingEntities.finalEntity database table. This data must already be discovered by using one of
the methods for discovering custom data and added to the workingEntities.finalEntity database
table.
In this example, service-level agreement data for a an existing entity is mapped to the custom dNCIM
table exampleCustomData.
In this example, the data was discovered using the File finder, a discovery agent, or collector. The data
was added to custom fields within the m_ExtraInfo field in the workingEntities.finalEntity
database table.
Procedure
1. Edit the Event Gateway schema file, $NCHOME/etc/precision/EventGatewaySchema.cfg, to
allow the Event Gateway to update the new field. Remember to add a comma at the end of the line
containing the NmosSerial field, before the line containing the new InterfaceName field.
For example, to configure the Event Gateway to update a new field customer, add the text in bold to
the outgoing event filter.
Note: Fields that are added to the outgoing event filter are automatically added to the incoming field
filter, config.nco2ncp, thus ensuring that the current value of the field is retrieved. This allows the
StandardEventEnrichment stitcher to check the value of the InterfaceName field before updating it.
This technique ensures that the Event Gateway does not keep updating the same value.
if ( entityType == 1 )
{
text customerName = @entity.entityDetails.customerId;
5-8 Only populate the Customer field if the value is not already present in the in-scope
event.
The following example code takes the value of customerName from the customer table in the
ncimCache files. Use this method if you added custom data to a new NCIM database table.
if ( entityType == 1 )
{
text customerName = @entity.customer.CUSTOMERNAME;
...
<fromTables>
FROM _ncim_.entityData e
...
In the preceding example, a left join against the custom table is used. This join ensures that data is
displayed for devices that do not have an entry in the custom database table. The fields to be
displayed are listed, and the tableAlias matches the alias given in the left join statement.
Procedure
1. Create a network view based on the custom data that you want to use. Refer to the task “Visualizing
custom data in the topology views” on page 435 for more information.
2. Create or edit a poll policy. Specify the new network view as the scope for the poll policy.
In the preceding example, the custom table customer is added. The manager attribute must always
be set to AllManagers. Set the attribute entitySearch to true to use the data in searches. Each
dataField is a single column of the table to be displayed and must have the correct dataType.
Results
Operators can now select the table when they search in the Hop View or when they create a new dynamic
network view.
Poll policies
Poll policies contain all the properties of a network poll operation. They specify how often a device is
polled, the type of polling mechanisms employed to do the polling, and the devices to be polled.
Related reference
Default poll policies
Network Manager provides a set of default poll policies. Use this information to familiarize yourself with
these policies.
Poll definitions
Poll definitions determine how to poll a network entity. You must associate each poll policy with at least
one poll definition. A poll policy can be associated with multiple poll definitions.
Related reference
Default poll definitions
Network Manager provides a number of default poll definitions that fulfil the most common polling
requirements.
Polling mechanisms
Poll definitions use one of two possible polling mechanisms: ping polling and SNMP polling. All poll
definitions are based on either of these mechanisms.
Ping polling
Ping polling determines the availability of a network device or interface by using an ICMP echo request.
The ping process ensures that a device is still present, live, and can be contacted in the network by
periodically sending an ICMP packet to an IP address and waiting for a response.
A ping poll can have the following results:
Successful
A response to the ping packets is received. No alerts are generated.
Failure
No response to the ping packets is received within the time specified in the poll definition. Alerts are
raised for network entities that do not respond.
Restore
A device that was unreachable on the last ping attempt becomes reachable again. An alert is
generated to clear the ping failure alert.
Ping polling can be performed on either a chassis or an interface of a device. In the case of a chassis, the
ICMP packets are sent to the IP address of a main node device. The main node IP address is also
associated with an interface. In the case of interfaces, the ICMP packets are sent to the IP address of
each interface. Consequently, if you enable ping polling for both chassis and interfaces, the traffic on
main-node IP addresses doubles.
Remember: By default, only the chassis ping poll is enabled on all devices within the discovered network
topology, with the exception of end-node devices, such as desktops and printers.
You can choose to store ping poll results together with the following two metrics:
SNMP polling
SNMP polling involves retrieving Management Information Base (MIB) variables from devices in order to
determine faulty behavior or connection problems. Faulty devices or faulty connections are then
diagnosed by applying predefined formulas to the extracted MIB variables.
Example
If the value of ifOperStatus was 1 (up) during the previous poll, and changes to 2 (down) in the current
poll, an event is raised.
The following table shows the events that are generated as a result of the changes in interface status.
Additionally, an event is generated when a poll fails to return any data, and an event with a clear severity
is generated when a poll to the same device subsequently succeeds.
Related tasks
Changing remote ping and link state poll definitions
Use the Poll Definition Editor to change the following poll definition types: Cisco remote ping, Juniper
remote ping, and SNMP link state.
Configuring Link State polling
You can specify how the ncp_poller process determines the initial state for Link State polls when there is
no existing event.
Data labels
Data labels are a mechanism that allows grouping of multiple poll definitions that collect the same poll
data within a single report. Data labels are only available in basic threshold poll definitions. By default the
data label takes the same name as the poll definition but you can change this to meet your data labeling
needs.
The following examples describe the use of data labels to enable a single report to retrieve data from
multiple poll definitions. A number of Network Manager summary reports use data labels by default. For a
listing of summary reports, refer to the IBM Tivoli Network Manager IP Edition Administration Guide.
You can collect the following ping metrics when creating a chassis or interface ping poll.
Response time
You can opt to collect data on the round trip time for ping tests. This is measured in milliseconds.
When Packet Loss is also being collected, this is the average response time for each successful test.
Packet loss
You can opt to collect data on the number of ping packets for which the polling process did not receive
a response. This is stored as a percentage.
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Select the check box next to the required policy or policies.
3. Optional: To enable the selected policy or policies, click Enable Selected Policies .
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Create a new policy by doing one of the following:
Refresh
Refreshes the data in the table. This updates the table with any changes made by other users
since you logged on or since you last clicked Refresh.
Search
Searches the table for text entered in the Search field. By default the search is performed on
all of the columns in the table. Click the down arrow to the left of the Search field to limit the
search to one or more columns in the table.
• Select the checkboxes corresponding to the columns that you want to limit the search to.
• Select All Columns to revert to the default search settings.
• Click OK once you have made your selection.
Poll Definitions table
The list of poll definitions attached to this poll policy is presented in a table. You can perform
the following actions on this table. Any settings made are valid for this session only.
Hide Toolbar
Hides the toolbar. If the toolbar is hidden, click Show Toolbar to show the toolbar.
Sort Column
Click the column header to sort that column in descending order. Click the column a
second time to sort the column in ascending order. Further clicks toggle the column
between descending and ascending order. The meaning of ascending and descending
order varies according to the type of data in the column:
Poll Interval
Specify the required interval in seconds between poll operations. Click the arrows to change
the value.
Description
Description of the poll definition.
Assign to Poller Instance
Select the poller on which to run the poll policy.
Policy Throttle
The number of devices in certain types of network views, especially event-based network views,
can fluctuate and become large. In order to prevent the Polling engine, ncp_poller, from become
Refresh
Refreshes the data in the table. This updates the table with any changes made by other users
since you logged on or since you last clicked Refresh.
Search
Searches the table for text entered in the Search field. By default the search is performed on all
of the columns in the table. Click the down arrow to the left of the Search field to limit the search
to one or more columns in the table.
• Select the checkboxes corresponding to the columns that you want to limit the search to.
• Select All Columns to revert to the default search settings.
• Click OK once you have made your selection.
Poll Definitions table
The complete list of poll definitions defined on the system. Poll definitions already attached to
this poll policy have a greyed out checkbox. You can perform the following actions on this table.
Any settings made are valid for this session only.
Hide Toolbar
Hides the toolbar. If the toolbar is hidden, click Show Toolbar to show the toolbar.
Sort Column
Click the column header to sort that column in descending order. Click the column a second
time to sort the column in ascending order. Further clicks toggle the column between
descending and ascending order. The meaning of ascending and descending order varies
according to the type of data in the column:
Alphabetical data
Ascending order orders the data from a to z. Descending order orders the data from z to a.
Numerical data
Ascending order orders the data from lowest to highest. Descending order orders the data
from highest to lowest.
Icon
Ascending order orders the icons from the highest to lowest value associated with the
icon. Descending order orders the icons from the lowest to highest value associated with
the icon. The values associated with each icon are listed below.
Resize a column
Click and drag the vertical line separator to the right of the column heading.
Select All/Clear All
Select the check box to select all rows. If all rows are selected, clear the check box to clear all
rows. Select the check box next to a row to select a single row or to clear a single selected row.
Name
The name of a poll definition attached to this poll policy. Click the name to edit the properties of
this poll definition.
Type
The type of poll definition.
Attention: If you select the All Devices option, then the system polls all devices that match
the scope defined in the Device Filter tab. If no scope is set then, if you select the All Devices
option, the poll that you create will poll all devices in the current network domain.
You can further filter the poll policy scope by filtering the scope of each of the poll definitions
contained within this poll policy. You can filter poll definition scope by device class and by interface.
6. Optional: Click the Device Filter tab. This filters on devices on the mainNodeDetails device table only.
Define the filter by using one of the following methods:
• Type an SQL WHERE statement in the field in the Filter column.
Note: SQL syntax is different for different databases. Refer to the documentation for the topology
database that you are using for the correct SQL syntax.
8. Optional: To add filters on other attribute tables, click Add new row , and repeat the steps to edit
the row and build the filter.
9. Optional: To combine multiple filters, click All or Any:
• All: Only network entities that match all the specified filters are polled. For example, if you create
two filters, a network entity must match both filters.
• Any: Network entities that match any of the specified filters are polled.
10. Click Save.
Related concepts
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
Related tasks
Adjusting polling bandwidth
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click Launch Poll Configuration Wizard .
3. Click Next. Complete the Poll Policy Details page as follows:
Name
Specify a name for the poll policy. Only alphanumeric characters, spaces and underscores are
allowed.
Interval
Specify the required interval in seconds between poll operations. Click the arrows to change the
value.
Poll Enabled
Specify whether the poll should be enabled. The poll is enabled by default. To disable the poll,
clear this check box.
Store Poll Data
Select this check box to store the poll data so that it can be subsequently retrieved for reporting.
The data is stored in the ncpolldata database.
Restriction: Storage of polled data is not supported for the Cisco Remote Ping, the Juniper Remote
Ping, and the Generic Threshold poll definitions.
Definition
Select a poll definition from the list.
Assign to Poller Instance
Select the poller on which to run the poll policy.
Policy Throttle
The number of devices in certain types of network views, especially event-based network views,
can fluctuate and become large. In order to prevent the Polling engine, ncp_poller, from become
overloaded by large numbers of devices in the network views attached to a policy, you can place a
limit on the number of devices attached to a poll policy. This limit is called a policy throttle.
Specify the maximum number of entities to limit polling to. The poll policy will poll no more than
the number of entities specified here.
Attention: If you select the All Devices option, the poll that you create will poll all devices in
the current network domain.
5. Click Next. On the Poll Policy Summary page, review the information that you specified and click
Finish.
Related concepts
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
Default Interface Ping Uses the Default Interface Ping poll definition to perform ping
operations on all interfaces that are within a main node with a valid
IP address. This policy uses the Default Interface Ping poll
definition to ping interfaces on all network devices. The interfaces
pinged are restricted according to the following:
• The interface filter in the poll definition. This can be further
refined by adding extra poll definition filters.
• The managed status of each interface. The managed status can
be changed by using the Topoviz or the Structure Browser GUIs,
or by using the ManagedNode.pl, UnManagedNode.pl, or
RemoveNode.pl scripts.
End Node Ping Uses the End Node Ping poll definition to perform ping operations
on all end nodes, as defined by the class settings.
ConfirmDeviceDown Uses the Default Chassis Ping poll definition with an increased
polling frequency and a policy scope that includes only those
devices that on which an NmosPingFail event has occurred. This
policy is used as part of an adaptive polling scenario and has the
aim of accelerating ping polling of devices that failed to respond to
a ping poll in order to identify devices that are really down.
Juniper Remote Ping Uses the Juniper Remote Ping poll definition to check the
availability of MPLS paths between Juniper PE and CE devices
through SNMP remote ping operations, as defined by the class
settings.
This poll policy is applicable only to Juniper devices.
Restriction: Storage of polled data is not supported for the Cisco Remote Ping, the Juniper Remote Ping,
and the Generic Threshold poll definitions.
Threshold policies
The following table describes the SNMP threshold poll policies.
Procedure
1. Click the Administration icon and select Network > Network Polling.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
6. Optional: Click the Interface Filter tab and build the filter against the required fields.
To select variables directly from the MIB tree, click Add MIB Object . From the MIB tree, you can
specify the current or previous values of the selected MIB variable, or resolve the current value of the
variable to the SNMP index.
8. Click the Threshold tab and specify the formulas for triggering events and clearing events.
The MIB OID or expression that you specified on the Poll Data tab is written automatically into the
formulas.
a) In the Trigger Threshold area, select a comparator from the list and type the value against which to
filter the MIB OID.
b) In the Description field, type a meaningful description of the trigger formula. Add the MIB variable
to the description in parentheses.
The description is displayed in the Event Viewer when an event is raised.
For example:
c) To insert the underlying eval statement into the description, position the cursor before the closing
parenthesis, click Add MIB Object , and navigate to the specified variable. Specify whether the
current or previous value of the variable is evaluated, or whether the value is resolved to the SNMP
index, and click OK.
The statement is inserted, for example:
Procedure
1. Click the Administration icon and select Network > Network Polling.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
6. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all
interfaces in the SNMP interfaces table of the device are polled, whether they were discovered or not.
Interfaces might not be discovered if you configured interface filtering for discovery, or for some other
reason, for example that they were inaccessible at discovery time. Undiscovered interfaces are still
8. Specify the message that is displayed in the Event Viewer for the generated event:
a) In the Event description field, type the message.
b) To insert the MIB variables in the field, click Open MIB Tree . Set the message to include either
the current or previous SNMP value, or the SNMP index, and click OK.
9. Required: Click the Clear Threshold tab. Every generic threshold poll definition requires a clear
threshold. Build the formula that specifies the threshold by using one of the following methods:
• In the Basic area, use the fields and options to build a formula. To select values from the MIB tree,
click Open MIB Tree .
• In the Advanced area, type the required eval statement in Object Query Language (OQL).
Tip: If you want the threshold to be cleared manually, create a clear threshold that will not be
reached.
10. Specify the message that is displayed in the Event Viewer for the generated event:
a) In the Event description field, type the message.
b) To insert the MIB variables in the field, click Open MIB Tree . Set the message to include either
the current or previous SNMP value, or the SNMP index, and click OK.
11. Click Save, then click OK.
What to do next
The poll definition is added to the bottom of the list.
Related concepts
Multibyte data in poll definitions
If you are running Network Manager in a domain that uses multibyte characters such as Simplified
Chinese, then you must ensure that Network Manager is configured to use multibyte characters before
you configure basic or generic threshold poll definitions.
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
Related reference
Example generic threshold expression
Use this example generic threshold expression to understand how to compose complex generic threshold
expressions.
Procedure
1. Click the Administration icon and select Network > Network Polling.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
6. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all interfaces
in the SNMP interfaces table of the device are polled, whether they were discovered or not. Interfaces
might not be discovered if you configured interface filtering for discovery, or for some other reason, for
example that they were inaccessible at discovery time. Undiscovered interfaces are still polled unless
you configure a filter on the interface records in the NCIM database for the poll. If you add any
interface filter to this poll, the filter is applied to the interface records in the NCIM topology database,
and only those interfaces are polled. Only the subset of the discovered interfaces that also matches
the filter is polled.
7. Click the Ping tab and complete the Ping Properties fields as follows:
Timeout
Specify, in milliseconds, how long the polling process should wait for a response from the target
device before sending a new ping packet.
CAUTION: Using a size smaller than 32 bytes may result in packets being dropped.
Procedure
1. Click the Administration icon and select Network > Network Polling.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
7. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all interfaces
in the SNMP interfaces table of the device are polled, whether they were discovered or not. Interfaces
might not be discovered if you configured interface filtering for discovery, or for some other reason, for
example that they were inaccessible at discovery time. Undiscovered interfaces are still polled unless
you configure a filter on the interface records in the NCIM database for the poll. If you add any
interface filter to this poll, the filter is applied to the interface records in the NCIM topology database,
and only those interfaces are polled. Only the subset of the discovered interfaces that also matches
the filter is polled.
8. Click Save, then click OK.
Related concepts
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy5
Click Insert
d. Select the comparator >=.
e. Select current.
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy6
Click Insert.
3. Specify the message that is displayed in the Event Viewer when the event is raised:
a. In the Event description field, type CPU usage high (avgBusy5= .
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy5
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy6
h. Type ).
The description for the Event Viewer should now read as follows:
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy5
Click Insert
d. Select the comparator <=.
e. Select literal.
f. Type 80.
3. Specify the message that is displayed in the Event Viewer when the event is raised:
a. In the Event description field, type CPU usage high (avgBusy5= .
iso/org/dod/internet/private/enterprises/cisco/local/lsystem/avgBusy5
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click the required poll policy.
The Poll Policy Editor is displayed; the settings of the selected poll policy are automatically loaded
into the fields.
3. Under Poll Policy Properties, specify a value for the following fields:
Name
Type the unique name that you want to give the poll policy. Only alphanumeric characters, spaces
and underscores are allowed.
Poll Enabled
Select this check box to enable the poll policy. Ensure that you have specified at least one poll
definition for the policy before enabling it.
Poll Definitions
Use this table to specify one or more poll definitions for the poll policy.
Search
Searches the table for text entered in the Search field. By default the search is performed on
all of the columns in the table. Click the down arrow to the left of the Search field to limit the
search to one or more columns in the table.
• Select the checkboxes corresponding to the columns that you want to limit the search to.
• Select All Columns to revert to the default search settings.
• Click OK once you have made your selection.
Poll Definitions table
The list of poll definitions attached to this poll policy is presented in a table. You can perform
the following actions on this table. Any settings made are valid for this session only.
Hide Toolbar
Hides the toolbar. If the toolbar is hidden, click Show Toolbar to show the toolbar.
Sort Column
Click the column header to sort that column in descending order. Click the column a second
time to sort the column in ascending order. Further clicks toggle the column between
descending and ascending order. The meaning of ascending and descending order varies
according to the type of data in the column:
Alphabetical data
Ascending order orders the data from a to z. Descending order orders the data from z to
a.
Numerical data
Ascending order orders the data from lowest to highest. Descending order orders the
data from highest to lowest.
Icon
Ascending order orders the icons from the highest to lowest value associated with the
icon. Descending order orders the icons from the lowest to highest value associated
with the icon. The values associated with each icon are listed below.
Resize a column
Click and drag the vertical line separator to the right of the column heading.
Select All/Clear All
Select the check box to select all rows. If all rows are selected, clear the check box to clear all
rows. Select the check box next to a row to select a single row or to clear a single selected row.
Store?
Select the check box to store data collected by this poll definition for reporting and historical
MIB graphing purposes.
Note: This option is only available for poll definitions of type Basic Threshold.
Name
The name of a poll definition attached to this poll policy. Click the name to edit the properties
of this poll definition.
Poll Interval
Specify the required interval in seconds between poll operations. Click the arrows to change
the value.
Description
Description of the poll definition.
Assign to Poller Instance
Select the poller on which to run the poll policy.
Policy Throttle
The number of devices in certain types of network views, especially event-based network views,
can fluctuate and become large. In order to prevent the Polling engine, ncp_poller, from become
overloaded by large numbers of devices in the network views attached to a policy, you can place a
limit on the number of devices attached to a poll policy. This limit is called a policy throttle.
Specify the maximum number of entities to limit polling to. The poll policy will poll no more than
the number of entities specified here.
Note: Disable policy throttling by setting this value to zero. All new poll policies have policy
throttling disabled by default.
4. Click the Network Views tab. In the Network Views tree, select the check boxes of the required
network views.
The Network Views tree displays only those network views that belong to the network domain in
which this poll policy is defined.
Attention: If you select the All Devices option, then the system polls all devices that match the
scope defined in the Device Filter tab. If no scope is set then, if you select the All Devices
option, the poll that you create will poll all devices in the current network domain.
5. Optional: Click the Device Filter tab. This filters on devices on the mainNodeDetails device table only.
Define the filter by using one of the following methods:
• Type an SQL WHERE statement in the field in the Filter column.
Note: SQL syntax is different for different databases. Refer to the documentation for the topology
database that you are using for the correct SQL syntax.
7. To add filters on other attribute tables, click Add new row , and repeat the steps to edit the row and
build the filter.
8. To combine multiple filters, click All or Any:
• All: Only network entities that match all the specified filters are polled. For example, if you create
two filters, a network entity must match both filters.
• Any: Network entities that match any of the specified filters are polled.
9. Click Save.
Related reference
Default poll policies
Network Manager provides a set of default poll policies. Use this information to familiarize yourself with
these policies.
Scenario
You must customize a poll policy to meet the following requirements:
• The poll policy must check the network for devices in class C subnets that have the IP address 9.1.2.* or
10.123.46*
• The poll policy must check the network at intervals of 60 seconds
• The poll policy must begin polling the network immediately after it has been saved
Required settings
To create a poll that responds to the requirements described in the previous scenario, make the following
settings:
1. On the Configure Poll Policies page, make a copy of a poll policy, for example, the
ciscoMemoryPctgUsage policy. The copy of the poll policy appears as a new row in the poll policy
table.
2. Find the row containing the copy of the ciscoMemoryPctgUsage poll policy, and click the name of the
copy of the poll policy. This enables you to edit the copy of the poll policy in the Poll Policy Editor.
3. On the Poll Policy Properties tab, make the following settings:
Name
Type a meaningful name, for example ciscoMemoryPctgUsage for class C subnets with
9.1.2* and 10.123.46*.
Poll Enabled:
Select this check box.
Poll Interval
In the Poll Definitions table, scroll across and type 60 in the Poll Interval column.
4. On the Network Views tab, ensure that All Devices is selected.
5. On the Device Filter tab, make the following settings:
a. Select Any.
d. Click OK.
e. Click Add .
f. To specify another filter against fields of the mainNodeDetails table, click Open Filter Builder .
g. On the Basic tab of the Filter Builder, complete the fields as follows:
h. Click OK.
6. Click Save.
Related reference
Default poll policies
Network Manager provides a set of default poll policies. Use this information to familiarize yourself with
these policies.
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click the required poll definition.
The poll definition must have the poll definition type Basic Threshold.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
5. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all interfaces
in the SNMP interfaces table of the device are polled, whether they were discovered or not. Interfaces
might not be discovered if you configured interface filtering for discovery, or for some other reason, for
example that they were inaccessible at discovery time. Undiscovered interfaces are still polled unless
you configure a filter on the interface records in the NCIM database for the poll. If you add any
interface filter to this poll, the filter is applied to the interface records in the NCIM topology database,
and only those interfaces are polled. Only the subset of the discovered interfaces that also matches
the filter is polled.
6. Click the Poll Data tab and specify the required formula:
• To specify a MIB Object Identifier (OID), select Single OID. Specify the current or delta value of the
required MIB variable and type the variable into the next field.
• To specify a complex expression, select Expression and type the formula into the field.
To select variables directly from the MIB tree, click Add MIB Object . From the MIB tree, you can
specify the current or previous values of the selected MIB variable, or resolve the current value of the
variable to the SNMP index.
7. Click the Threshold tab and specify the formulas for triggering events and clearing events.
The MIB OID or expression that you specified on the Poll Data tab is written automatically into the
formulas.
a) In the Trigger Threshold area, select a comparator from the list and type the value against which to
filter the MIB OID.
b) In the Description field, type a meaningful description of the trigger formula. Add the MIB variable
to the description in parentheses.
The description is displayed in the Event Viewer when an event is raised.
For example:
c) To insert the underlying eval statement into the description, position the cursor before the closing
parenthesis, click Add MIB Object , and navigate to the specified variable. Specify whether the
current or previous value of the variable is evaluated, or whether the value is resolved to the SNMP
index, and click OK.
The statement is inserted, for example:
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click the required poll definition.
The poll definition must have the poll definition type Generic Threshold.
3. In the Poll Definition Editor, under the General tab, complete the General Properties fields as
follows:
Name
Specify a unique name for the poll definition. Only alphanumeric characters, spaces and
underscores are allowed.
Type
This field is disabled. The Polling engine, ncp_poller, automatically populates this field once this
poll definition is included as part of an enabled poll policy.
Event ID
This field is disabled. The Polling engine, ncp_poller, automatically populates this field once this
poll definition is included as part of an enabled policy. The Event ID field is populated as follows:
• If this is a new poll definition, then the Event ID field is populated with the value POLL-
polldef, where polldef is the name of the current poll definition.
• If you created a poll definition by copying an existing poll definition, then the Event ID contains
the same value as the copied poll definition.
Note: Some of the older default polls have Event ID fields that do not use the POLL-polldef
naming convention.
Event Severity
Specify a valid number for the severity. The severity level must correspond to a valid severity level
as defined in IBM Tivoli Netcool/OMNIbus. For a listing of available severity levels, refer to the
IBM Tivoli Network Manager User Guide
Description
Type a short description of the poll definition.
4. Click the Classes tab. In the Classes tree, select the check boxes of the required classes.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
5. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
7. Specify the message that is displayed in the Event Viewer for the generated event:
a) In the Event description field, type the message.
b) To insert the MIB variables in the field, click Open MIB Tree . Set the message to include either
the current or previous SNMP value, or the SNMP index, and click OK.
8. Required: Click the Clear Threshold tab. Every generic threshold poll definition requires a clear
threshold. Build the formula that specifies the threshold by using one of the following methods:
• In the Basic area, use the fields and options to build a formula. To select values from the MIB tree,
click Open MIB Tree .
• In the Advanced area, type the required eval statement in Object Query Language (OQL).
Tip: If you want the threshold to be cleared manually, create a clear threshold that will not be
reached.
9. Specify the message that is displayed in the Event Viewer for the generated event:
a) In the Event description field, type the message.
b) To insert the MIB variables in the field, click Open MIB Tree . Set the message to include either
the current or previous SNMP value, or the SNMP index, and click OK.
10. Click Save, then click OK.
Related concepts
Multibyte data in poll definitions
If you are running Network Manager in a domain that uses multibyte characters such as Simplified
Chinese, then you must ensure that Network Manager is configured to use multibyte characters before
you configure basic or generic threshold poll definitions.
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
Related reference
Default poll policies
Network Manager provides a set of default poll policies. Use this information to familiarize yourself with
these policies.
Example generic threshold expression
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click the required poll definition.
The poll definition must have the poll definition type Chassis Ping or Interface Ping.
3. In the Poll Definition Editor, under the General tab, complete the General Properties fields as
follows:
Name
Specify a unique name for the poll definition. Only alphanumeric characters, spaces and
underscores are allowed.
Type
This field is disabled. The Polling engine, ncp_poller, automatically populates this field once this
poll definition is included as part of an enabled poll policy.
Event ID
This field is disabled. The Polling engine, ncp_poller, automatically populates this field once this
poll definition is included as part of an enabled policy. The Event ID field is populated as follows:
• If this is a new poll definition, then the Event ID field is populated with the value POLL-
polldef, where polldef is the name of the current poll definition.
• If you created a poll definition by copying an existing poll definition, then the Event ID contains
the same value as the copied poll definition.
Note: Some of the older default polls have Event ID fields that do not use the POLL-polldef
naming convention.
Event Severity
Specify a valid number for the severity. The severity level must correspond to a valid severity level
as defined in IBM Tivoli Netcool/OMNIbus. For a listing of available severity levels, refer to the IBM
Tivoli Network Manager User Guide
Description
Type a short description of the poll definition.
4. Click the Classes tab. In the Classes tree, select the check boxes of the required classes.
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
5. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all interfaces
in the SNMP interfaces table of the device are polled, whether they were discovered or not. Interfaces
might not be discovered if you configured interface filtering for discovery, or for some other reason, for
example that they were inaccessible at discovery time. Undiscovered interfaces are still polled unless
you configure a filter on the interface records in the NCIM database for the poll. If you add any
CAUTION: Using a size smaller than 32 bytes may result in packets being dropped.
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. Click the required poll definition.
The poll definition must have one of the following poll definition types:
• Cisco remote ping
• Juniper remote ping
• SNMP link state
3. In the Poll Definition Editor, under the General tab, complete the General Properties fields as
follows:
Attention: If you leave all classes unchecked, then the system polls all devices that match the
scope defined in the poll policy that uses this poll definition.
5. Optional: Click the Interface Filter tab and build the filter against the required fields.
The Table field is prepopulated with the interfaces table.
Note: When polling for interface data (not ping polling or remote ping polling), by default, all interfaces
in the SNMP interfaces table of the device are polled, whether they were discovered or not. Interfaces
might not be discovered if you configured interface filtering for discovery, or for some other reason, for
example that they were inaccessible at discovery time. Undiscovered interfaces are still polled unless
you configure a filter on the interface records in the NCIM database for the poll. If you add any
interface filter to this poll, the filter is applied to the interface records in the NCIM topology database,
and only those interfaces are polled. Only the subset of the discovered interfaces that also matches
the filter is polled.
6. Click Save, then click OK.
Related concepts
Link state polling
Link state polling monitors changes to the status of the following interface MIB variables: ifOperStatus
and ifAdminStatus.
Poll policy scope
The poll policy scope defines the devices or device interfaces to be polled.
Related tasks
Configuring Link State polling
You can specify how the ncp_poller process determines the initial state for Link State polls when there is
no existing event.
Related reference
Default poll policies
Scenario
You require a poll definition that alerts the operator when a device is using too much of its processing
power. You want an event to be generated if the average CPU usage exceeds 80%, and the event to be
cleared if the average CPU usage falls below 70%.
Required settings
To create a poll definition that responds to the requirements described in “Scenario” on page 491, make
the following settings:
• On the New Poll Definition Type Selection panel, select Basic Threshold.
• On the Poll Data tab of the Poll Definition Editor make the following settings:
– Ensure that Single OID is selected.
– Complete the Single OID area as shown the following example. The bold text denotes entries that
you must type; normal text denotes selections that you make from lists:
current avgBusy5
• On the Threshold tab of the Poll Definition Editor make the following settings:
– Complete the Trigger Threshold area as shown the following example. The bold text denotes entries
that you must type; normal text denotes selections that you make from lists. The italic text denotes
items that you cannot edit:
2. Position the cursor inside the closing parenthesis and click Add MIB Object .
3. Navigate the following path: iso/org/dod/internet/private/enterprises/cisco/
local/lsystem/avgBusy5.
4. Select Current SNMP Value and click Insert.
– Complete the Clear Threshold area as shown the following example. The bold text denotes entries
that you must type; normal text denotes selections that you make from lists. The italic text denotes
items that you cannot edit:
2. Position the cursor inside the closing parenthesis and click Add MIB Object .
3. Navigate the following path: iso/org/dod/internet/private/enterprises/cisco/
local/lsystem/avgBusy5.
4. Select Current SNMP Value and click Insert.
Sample: snmpInBandwidth
The snmpInBandwidth poll definition is one of the default poll definitions. This poll definition defines the
checking of incoming bandwidth utilization. An alert is raised when incoming bandwidth usage exceeds
40%. The following expression shows how to use eval statements to define this condition and is defined
within the Poll Data tab under the Expression radio button.
((eval(long64,"&SNMP.DELTA.ifInOctets") / eval(long64,"&POLL.POLLINTERVAL"))
/(eval(long64,"&SNMP.VALUE.ifSpeed")))
*800
Within the Threshold tab, the threshold is set to trigger if the value of this expression is greater than 40.
Related concepts
Multibyte data in poll definitions
If you are running Network Manager in a domain that uses multibyte characters such as Simplified
Chinese, then you must ensure that Network Manager is configured to use multibyte characters before
you configure basic or generic threshold poll definitions.
Related tasks
Changing basic threshold poll definitions
Use the Poll Definition Editor to change basic threshold poll definitions.
Creating basic threshold poll definitions
Create a basic threshold poll definition to run simple formulas against MIB variables, or to create
threshold polls with interface-level filtering..
Sample: memoryPoll
The memoryPoll poll definition is one of the default poll definitions. This poll definition defines the
checking of memory-pool usage for Cisco devices. An alert is raised when the memory pool usage
exceeds 80%. The following expression shows how to use eval statements to define this condition and is
defined within the Trigger Threshold tab under the Advanced radio button.
((eval(int,"&SNMP.VALUE.ciscoMemoryPoolValid") = 1)
AND
((eval(long64,"&SNMP.VALUE.ciscoMemoryPoolUsed")/
(eval(long64,"&SNMP.VALUE.ciscoMemoryPoolFree") +
eval(long64,"&SNMP.VALUE.ciscoMemoryPoolUsed")))*100
> 80))
Related concepts
Multibyte data in poll definitions
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. In the Select column, select the required poll policies.
3. Click Delete .
4. Click OK to confirm the deletion.
What to do next
The selected poll policies are deleted.
Procedure
1. Click the Administration icon and select Network > Network Polling.
2. In the Select column, select the required poll definitions.
3. Click Delete .
4. Click OK to confirm the deletion.
What to do next
The selected poll definitions are deleted.
Rationale
The standard Default Chassis Ping poll policy polls all chassis devices in the current network domain
every two minutes. For various reasons healthy devices sometimes fail to respond to this poll policy,
generating misleading NmosPingFail events in the Event Viewer. These events are not cleared until a
successful ping response at least two minutes later. During that time these misleading events might cause
network operators to take unnecessary action.
The adaptive polling described in this scenario avoids the risk of unnecessary network operations activity
by accelerating pinging of all devices on which an NmosPingFail event is first raised. These devices are
pinged by a separate poll policy every 10 seconds for three minutes, with the intention of clearing the
event as soon as the device responds. Those devices that still exhibit an NmosPingFail event after three
minutes of accelerated pinging are considered to be really down, and are no longer pinged. The network
operator can take action on these devices, or automations can be written to take relevant action, with the
confidence that the events are actionable.
Note: The three minutes are enforced by specifying as policy scope devices with an NmosPingFail event
and a Tally value of less than 18. The Tally value is calculated by assuming that a faulty device will fail to
respond to all accelerated polls. Each minute there are six accelerated ping polls, so in a three minute
period there will be 18, and the Tally value of those devices that are still not responding will reach 18.
The accelerated pinging values are fully configurable. For example, you can specify a 20 second
accelerated ping polling interval (instead of a 10 second interval) to lighten the load on the network. You
could also continue accelerated polling for longer than three minutes (by increasing the Tally value) if you
require a longer time to verify that devices are really down.
Scenario walkthrough
The following section walks you through this adaptive poll.
1. The Default Chassis Ping poll policy polls all chassis device in the current network domain. You can
modify the scope of this policy by modifying the associated network views and device filter.
2. An NmosPingFail event is generated for all devices that do not respond to the Default Chassis Ping
policy.
3. Devices that have an associated NmosPingFail event are automatically added to the Initial Ping Fail
Events network view. The Initial Ping Fail Events network view is a Filtered network view that is
defined as follows:
EventId = NmosPingFail
Tally < 18
The Initial Ping Fail Events network view can be found in the Network Views, in the Network View tree,
in the Monitoring Views > Initial Ping Fail Events node. For more information on the nodes in the
network view tree, see the IBM Tivoli Network Manager User Guide.
You can change the duration of accelerated polling by modifying the Tally < 18 filter clause. For
example, if you want to increase the duration of accelerated polling to five minutes, then change this
clause to Tally < 30. This value is determined by the following calculation based on a 10 second
polling interval: each minute there are six accelerated ping polls, so in a five minute period there will
be 30. For more information on changing event-filtered network views, see the IBM Tivoli Network
Manager User Guide.
4. The ConfirmDeviceDown poll policy polls all devices within the Initial Ping Fail Events network view
every 10 seconds. Each time the device does not respond, another NmosPingFail is received for the
device, and the NmosPingFail Tally value for the device is incremented.
Important: By default you have to take the following actions in order to activate the adaptive polling
described in this scenario:
• The ConfirmDeviceDown poll policy is disabled by default. You must enable this poll policy.
• The ConfirmDeviceDown poll policy has no scope by default. You must assign the Initial Ping Fail
Events network view as the scope of the ConfirmDeviceDown poll policy.
You can change the frequency of accelerated ping polling by editing the ConfirmDeviceDown poll policy
and modifying the interval in seconds between poll operations. For example, if you want to decrease
the polling frequency to 20 second polling intervals (three polls per minute rather than six), then open
the ConfirmDeviceDown poll policy in the Poll Policy Editor and set the Poll Interval value to 20.
Note: Changing the poll policy interval changes the Tally value for the same accelerated polling
duration. For example, if you change the Poll Interval value to 20 this decreases the frequency of
accelerated ping polling to 3 polls per minute. In this case the associated Tally value for a three
minutes of accelerated polling is 9. This value is determined by the following calculation based on a 20
second polling interval: each minute there are three accelerated ping polls, so in a three minute period
there will be 9.
5. Accelerated polling of devices can conclude in one of the following ways:
Healthy device
During the three-minute accelerated polling period a successful ping response is received for a
device. The NmosPingFail event for that device is cleared and will subsequently be deleted from
the Event Viewer. The device is automatically removed from the Initial Ping Fail Events network
view, and therefore is no longer subject to accelerated polling.
Rationale
The standard HighDiscardRate poll policy performs an SNMP threshold poll on all routers in the current
network domain every 30 minutes to determine if the percentage packet discard rate on any of the router
interfaces exceeds 5%. If the poll policy detects that any one interface on a router has exceeded the
threshold, then the poll generates a POLL-HighDiscardRate event for the router. Healthy router interfaces
might occasionally be busy and need to drop packets, causing them to breach the 5% threshold during
any one 30 minute interval, generating misleading HighDiscardRate events in the Event Viewer. These
events are not cleared until a successful POLL-HighDiscardRate poll policy response occurs at least thirty
minutes later. During that time these misleading events might cause network operators to take
unnecessary action.
The adaptive polling described in this scenario avoids the risk of unnecessary network operations activity
by accelerating SNMP polling of all devices on which a POLL-HighDiscardRate event is first raised. These
devices are polled by a separate SNMP poll policy every five minutes, with the intention of clearing the
event as soon as all interfaces on the device respond with a percentage packet discard rate that falls
within the 5% threshold. Those devices that continue to exhibit the POLL-HighDiscardRate event are
confirmed as having one or more faulty interfaces. The network operator can take action on these devices,
or automations can be written to take relevant action, with the confidence that the events are actionable.
The accelerated polling values are fully configurable. For example, you can specify a 10 minute
accelerated SNMP polling interval (instead of a 5 minute interval) to lighten the load on the network.
Scenario walkthrough
The following section walks you through this adaptive poll.
1. The HighDiscardRate SNMP poll policy performs an SNMP threshold poll on all routers in the current
network domain every 30 minutes. You can modify the scope of this policy by modifying the associated
network views and device filter.
2. A POLL-HighDiscardRate event is generated for all devices that have at least one interface that
breached the 5% packet discard rate threshold.
3. Devices that have an associated POLL-HighDiscardRate event are automatically added to the Devices
that have at least one interface event for HighDiscardRate network view. This network view is a
Filtered network view that is defined as follows:
EventId = POLL-HighDiscardRate
The Devices that have at least one interface event for HighDiscardRate network view can be found in
the Network Views, in the Network View tree, in the Monitoring Views > Devices that have at least
one interface event for HighDiscardRate node. For more information on the nodes in the network
view tree, see the IBM Tivoli Network Manager User Guide.
4. The ConfirmHighDiscardRate poll policy polls all devices within the Devices that have at least one
interface event for HighDiscardRate network view every five minutes.
Important: By default you have to take the following actions in order to activate the adaptive polling
described in this scenario:
• The ConfirmHighDiscardRate poll policy is disabled by default. You must enable this poll policy.
• The ConfirmHighDiscardRate poll policy has no scope by default. You must assign the Devices that
have at least one interface event for HighDiscardRate network view as the scope of the
ConfirmHighDiscardRate poll policy.
Important: The ConfirmHighDiscardRate poll policy is disabled by default. You must enable this poll
policy in order to activate the adaptive polling described in this scenario.
You can change the frequency of accelerated SNMP threshold polling by editing the
ConfirmHighDiscardRate poll policy and modifying the interval in seconds between poll operations. For
example, if you want to decrease the polling frequency to 10 minute polling intervals, then open the
ConfirmHighDiscardRate poll policy in the Poll Policy Editor and set the Poll Interval value to 600.
5. Accelerated SNMP threshold polling of devices can conclude in one of the following ways:
Healthy device
All interfaces on the device respond to the accelerated poll with a percentage packet discard rate
that falls within the 5% threshold. The POLL-HighDiscardRate event for that device is cleared and
will subsequently be deleted from the Event Viewer. The device is automatically removed from the
Devices that have at least one interface event for HighDiscardRate network view, and therefore is
no longer subject to accelerated polling.
1. Identify an existing poll policy Poll policy used: Default Chassis Poll policy used:
that retrieves an error condition Ping HighDiscardRate
on devices in your network.
Performs ping polling on all Determines whether an interface
devices in the network domain on a device is dropping more than
every two minutes. a minimum percentage of the
total packets that it is processing.
Polls for this information every
30 minutes.
2. Create an event-filtered Network view: Monitoring Views Network view: Monitoring Views
network view that filters devices > Initial Ping Fail Events > Devices that have at least one
based on the event generated by interface event for
Contains all devices on which an
the poll that you identified in the HighDiscardRate
NmosPingFail event has been
previous step.
raised and the Tally value is less Determines whether an interface
The devices in this network view than a specified value. The on a device is dropping more than
usually have an associated error NmosPingFail event is raised on a minimum percentage of the
condition that can be further events that fail the Default total packets that it is processing.
diagnosed by more intense Chassis Ping poll policy.
polling.
For information on creating
event-filtered network views, see
the IBM Tivoli Network Manager
User Guide.
3. Create a poll policy that has as Poll policy: ConfirmDeviceDown Poll policy:
its scope the network view that ConfirmHighDiscardRate
Purpose of intense polling:
you created in the previous step
accelerate ping polling of devices Purpose of intense polling:
and that provides a more intense
in the Initial Ping Fail Events Accelerate polling of devices in
polling of the devices in that
network view to 10 second poll the Devices that have at least one
network view.
intervals in order to identify the interface event for
The aim of more intensely polling devices that are really down. HighDiscardRate network view in
these devices is to diagnose the Healthy devices provide a order to provide more timely
problem further as a prelude to successful response to this information before reacting. This
further action. intense polling and their events poll policy continues to generate
are cleared. the POLL_HighDiscardRate
events, thus confirming the
problem on a device, or issues a
resolved event that clears the
error event and thus removes the
associated device from the
HighDiscardRate view.
In Step 2, in the Confirm device down column, the Initial Ping Fail Events network view includes an exit
criterion implemented using the Tally value: once the Tally value for an event goes beyond a specified
value, the related device is automatically removed from the network view. This is useful when you want to
accelerate polling for a limited time period in order to establish a condition on that device. Once the
condition is established the device can be removed from the view. For example, in the case of the default
settings for this network view, you want to accelerate polling on devices that have failed ping polling for
three minutes only. If the device still has an associated NmosPingFail event after three minutes, then the
device is confirmed as being down.
It is also possible to chain more than two poll policies by creating extra network views and poll policies
and chaining them as appropriate to respond to network conditions and to perform the required
diagnosis.
Related concepts
Rapid confirmation that device is really down
Use the adaptive polling described in this scenario to determine as quickly as possible when a device is
really down. You can activate this adaptive polling by enabling the ConfirmDeviceDown poll policy.
Rapid confirmation of a threshold violation
Administering polls
Use the command-line interface to administer poll policies.
Procedure
1. Back up and edit the file NCHOME/etc/precision/NcPollerSchema.DOMAIN.cfg
2. Locate the line that defines the value of the DiscoverInitialAccess option.
3. If you want the ncp_poller process to check the SNMP credentials each time it starts up, leave the
value of DiscoverInitialAccess set to 1.
4. To turn off the initial checking of SNMP access credentials, set the value of DiscoverInitialAccess set to
0. The ncp_poller process still tests SNMP credentials for a given device if there is a poll failure.
5. Restart the ncp_poller process.
Procedure
1. Change to the $NCHOME/precision/scripts/perl/scripts directory and locate the
itnm_poller.pl script.
You can also retrieve the status of only realtime or static poll polices by specifying -status
realtime or -status static.
Procedure
1. Change to the $NCHOME/precision/scripts/perl/scripts directory and locate the
itnm_poller.pl script.
2. Run the itnm_poller.pl script program to retrieve the status of the various poll policies, as shown in the
following example.
In the output of the command you can see the ID for each poll policy. Make a note of the ID for the poll
policy that you want to enable or disable.
3. Run the itnm_poller.pl script program to enable or disable individual poll policies, specifying the poll
policy ID as a parameter.
The following example shows how to enable a poll policy with a policy ID of 10.
The following example shows how to disable a poll policy with a policy ID of 15.
Refreshing polls
Use the itnm_poller.pl script to refresh a poll policy configuration and its entity list.
Procedure
1. Change to the $NCHOME/precision/scripts/perl/scripts directory and locate the
itnm_poller.pl script.
2. Run the itnm_poller.pl script program to retrieve the status of the various poll policies, as shown in the
following example.
Procedure
1. Change to the NCHOME/precision/scripts/perl/scripts directory and locate the
get_policies.pl program.
2. Run the get_policies.pl program to copy poll policies.
The following table describes the possible actions and what to enter on the CLI.
Action Entry on the CLI
Copy all poll policies directly from ncp_perl get_policies.pl -from domain=SOURCE
one domain to another -to domain=DESTINATION -ncim_password
NCIM_password -ncmonitor_password
NCMONITOR_password
Copy only selected poll policies ncp_perl get_policies.pl -from domain=SOURCE
from one domain to another -to domain=DESTINATION -policy "policy_name1"
-policy "policy_name2"
Copy all the poll policies from a ncp_perl get_policies.pl -from
domain to an XML file domain=DOMAIN_name -to file=filename.xml -
password NCIM_password
Copy all the poll policies from an ncp_perl get_policies.pl -from
XML file to a domain file=filename.xml -to domain=DOMAIN_name
Copy only selected poll policies ncp_perl get_policies.pl -from
from a domain to a file domain=DOMAIN_name -to file=filename.xml -
policy "policy_name1" -policy "policy_name2"
Restrictions
Setting the device to "unmanaged" affects only Network Manager polling, it does not stop other polls from
retrieving information from the device or its components and raising alerts where applicable. However,
the alerts from other sources are tagged as unmanaged to indicate that the device or component they
were raised against are in maintenance state.
For more information on unmanaged device settings, see the IBM Tivoli Network Manager IP Edition
Administration Guide.
Procedure
1. Back up and edit the following file: NcPollerSchema.cfg.
2. Edit, uncomment, or add the following line:
where number_of_events is the maximum number of events that the poller will read. If this line is not
present, there is no limit to the number of events that the poller attempts to process.
3. Save and close the file.
Procedure
1. Edit the following configuration file: $NCHOME/etc/precision/NcPollerSchema.cfg.
2. Add the following line to the end of the file:
Where: update_interval is the interval for checking poll policy membership size, in seconds. The
default value is 30 seconds.
3. Restart the Polling engine, ncp_poller.
Procedure
1. Edit the following configuration file: $NCHOME/etc/precision/NcPollerSchema.cfg.
2. Add the following line to the end of the file:
Procedure
1. To set the limit, in the $NCHOME/etc/precision/NcPollerSchema.cfg file for your poller, set the
PollDataQueueLimit parameter to a suitable number of batches.
The following example shows how to set the limit to 50 batches of queued data:
2. Monitor the poller log file in $NCHOME/log/precision and the Event Viewer for messages and
alerts.
Results
When the queue exceeds the limit that is specified by the PollDataQueueLimit parameter, the
following actions are taken:
• In the Event Viewer, an alert is displayed. For example:
ItnmPollerPolicyDataQueueFull: poller NCOMS; poll data queue has
exceeded capacity, off loading data to file
• A message is written to the log. For example:
2013-04-19T12:37:58 [CDataQueue::ProcessValue] Queue size exceeds threshold,
discarding data: policyId:122:templateId:39:monitoredInstanceId:2212
:monitoredObjectId:3:pollTime:1387232947:
tdwTime:1131216222944000:errorCode:111:value:0
• The poll data is discarded from the queue and written to a $NCHOME/log/precision/
ncp_poller.poller name.domain.polldata file, for example, ncp_poller.poller
name.domain.data. The data is for information only and cannot be inserted back into the polling
database. For example:
What to do next
If the limit is exceeded:
• Resolve the size of the poll data queues. For example, create more pollers, or contact your database
administrator.
• Clear the alert from the Event Viewer.
• Clear the .polldata file. The file is not cleared or rotated automatically.
Related tasks
Changing the logging level for processes
Change the logging level of a process before you start the process or while the process is running.
Locating log files for a process
Locate log files for a process to obtain information that might be helpful in troubleshooting the process.
Setting up an additional poller
Set up an additional poller on the Network Manager server if the default pollers are not sufficient to
handle your network load.
Monitoring poller capacity
Procedure
1. Back up and edit the file NCHOME/etc/precision/NcPollerSchema.DOMAIN.cfg
2. Locate the line that defines the value of the DiscoverInitialAccess option.
3. If you want the ncp_poller process to check the SNMP credentials each time it starts up, leave the
value of DiscoverInitialAccess set to 1.
4. To turn off the initial checking of SNMP access credentials, set the value of DiscoverInitialAccess set to
0. The ncp_poller process still tests SNMP credentials for a given device if there is a poll failure.
5. Restart the ncp_poller process.
Procedure
1. Edit the NCHOME/etc/precision/NcPollerSchema.cfg file.
2. Locate the config.properties section.
3. Edit the value for UseFirstPollForInitialState.
• Set to 0 to set the initial state to Clear.
• Set to 1 to configure the initial state to be determined by the first poll.
Related concepts
Link state polling
Link state polling monitors changes to the status of the following interface MIB variables: ifOperStatus
and ifAdminStatus.
Related tasks
Changing remote ping and link state poll definitions
Procedure
1. Edit the CtrlServices.cfg file.
a) Locate the entry for the ncp_poller process.
b) Copy the entry and change the serviceName setting in this new ncp_poller entry to match the name
you used to register the poller. Alternatively, edit the commented-out example of an additional
poller in the default version of the CtrlServices.cfg file and set the serviceName setting to be a
unique name for the poller.
Important: Ensure that only one of the pollers is started using the -admin option, which configures
the poller to perform essential administrative functions. By default this is the ncp_poller_admin
poller. Start all other pollers using the -noadmin option, which configures the pollers to not perform
administrative functions. Refer to the command line options for ncp_poller for information on other
options that you can use when starting the pollers.
c) Save and close the file.
2. Restart the ncp_ctrl process with the specified domain.
The ncp_ctrl process restarts all running ncp_ processes, including the new poller. The poller
automatically registers any new named pollers when it starts.
Example
The example below creates a poller, in the NCOMS domain, that you might use for certain ping polls, and
another poller that you might use for certain SNMP queries.
1. In your CtrlServices.cfg file, leave the ncp_poller entry with the serviceName of
ncp_poller_default as it is. This poller performs the administrative functions and is used for MIB
graphing.
2. Uncomment the ncp_poller_ping entry. This insert should now look like this:
3. Add a similar entry for the new snmpPoller poller. This insert is exactly the same as the PingPoller
insert, except for the serviceName setting, the -name option in the argList parameter.
What to do next
After you set up your pollers, complete these steps.
1. Restart Network Manager, and then log into Network Manager.
2. Click the Administration icon and select Network > Network Polling to edit the poll definitions.
3. Under Poll Policy Properties, choose Assign to poller instance.
4. Assign a poll to the existing poller and then assign a different poll to the new poller.
Procedure
1. Open the following file: $NMGUI_HOME/profile/etc/tnm/tnm.properties.
2. Change the value of the tnm.graph.poller parameter from the default ncp_poller_admin to the
name of the required poller.
3. Save and close the file.
Removing a poller
If a poller is not being used to monitor the network, you can remove the poller from the monitoring
system.
Procedure
1. Before removing the poller, edit each active policy associated with the poller that you want to remove.
From the Monitor Policy Editor, edit the policies to use another valid poller.
2. Stop all running Network Manager processes.
3. From the Network Manager server, run the following command.
If there are no active policies associated with the poller, the poller is deregistered. If there are still
active policies associated with the poller, the script does not deregister the poller.
4. If there are still active policies associated with the poller, either assign the policies to another poller, or
run the script again using the - force option. If you run the script using the - force option, any poll
policies associated with the poller are also deleted.
5. Edit the CtrlServices.cfg file to remove or uncomment the ncp_poller entry for the poller that
you removed.
6. Restart the Network Manager processes.
Sizing considerations
The polling load on a server can be expressed by calculating the overall polling insert rate to the
NCPOLLDATA database. The higher the insert rate, the larger the capacity needed within the raw and
historical poll data storage tables to store the poll data. Once the historical poll data tables increase
beyond a certain size, the performance of queries to the tables by dashboards and reports is likely to
degrade; therefore both the insert rate to the POLLDATA raw poll data table, and the total number of rows
in the historical poll data tables must not be increased beyond a recommended limits in order to ensure
system stability.
It is recommended that the polling insert rate to the POLLDATA raw data table should not exceed 20
million inserts per hour, and the total number of rows for the aggregate data tables should not exceed 200
million rows. This ensures that the size of each of the historical polling data tables stays within acceptable
limits.
Sizing tables
Use these tables to help determine the appropriate polling load for your system, in particular, how many
entities and KPIs you should be polling and what polling interval to set for your poll policies.
Use the following table to determine your approximate polling insert rate and the number of rows this
insert rate will generate in each of the historical poll data tables. Use these tables by reviewing the
following columns and finding values that most closely match the settings in your network:
In each of the examples presented in the table, the number of KPIs (poll definitions) per poll policy and
the poll interval for each poll policy are assumed to be the following:
Table 94. Number of KPIs and poll interval per poll policy
Chassis polls 3 5 36
Interface polls 5 5 60
The following examples show how the values for insert rate and number of rows in the historical poll data
tables change as you vary the number of polled entities in your network.
Table 95. Insert rate and number of rows in millions per historical poll data table
Insert rate Last day Last week Last month Last year
[Inserts/hour] [Millions of [Millions of [Millions of [Millions of
rows] rows] rows] rows]
Table 96. Insert rate and number of rows in millions per historical poll data table
Insert rate Last day Last week Last month Last year
[Inserts/hour] [Millions of [Millions of [Millions of [Millions of
rows] rows] rows] rows]
Procedure
1. Edit the properties file for the Storm topology using a text editor such as vi.
By default, the Apache Storm topology takes the name NMStormTopology and uses a properties file
named NMStormTopology.properties.
vi $NCHOME/precision/storm/conf/NMStormTopology.properties
2. Find one of the following properties in the file, and set it to 0, to turn off storage of historical poll data
for the corresponding time period.
ewma.day.storage.enabled
Set to false to switch off storage of daily historical poll data
ewma.week.storage.enabled
Set to false to switch off storage of weekly historical poll data
ewma.month.storage.enabled
Set to false to switch off storage of monthly historical poll data
ewma.year.storage.enabled
Set to false to switch off storage of yearly historical poll data
3. Save the file.
4. Restart the Apache Storm topology.
Procedure
Run the itnm_poller.pl script as shown in the examples.
The following example shows how to display the charts for the default poller, on the NCOMS domain, from
the most recent time stamp, over the default 4 hour period:
The following example shows how to run the script for the same domain for a specific poller, over the last
12 hours:
The following example shows how to run the script for the same domain and poller, from a specific time
stamp, over a period of 8 hours:
Do not run the script with the -metrics option and the -status option simultaneously.
Example
The following example shows a sample chart for the Health metric.
Health (%) for Policy 'Default Chassis Ping' PollDef My Poll Definition 1'
(Type:SNMP Link State)
A value less than 100% indicates the policy is behind and some devices were not polled
during the last polling cycle
100 ------------------+-----------------------------------------------------------++
|+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
50 ------------------||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 -+++++++++++++++++--------------------------------------------------------------
^ ^ ^ ^ ^ ^ ^ ^
13:46 14:06 14:26 14:46 15:06 15:26 15:46 16:06
Time Window (4 hours): 2013-12-08T13:46:25 to 2013-12-08T17:46:25
(Sample interval: 2 minutes)
What to do next
Review the problems and possible causes in the following table and take action as appropriate.
PollDataQueueSize The number of INSERT The connection to the • Contact your database
statements in the queue database was lost or the administrator.
grows exponentially. frequency of INSERT
statements is greater than • Add more pollers.
the poller can handle.
PollDataRowCount The number or rows The polling load is too Contact your database
exceeds the threshold heavy and so the number administrator.
after pruning is of rows is too great to be
completed. The default pruned within the pruning
threshold is 5,000,000 interval. Alternatively,
and the default pruning problems occurred in the
interval is 1 hour. database, which is
causing problems with
pruning.
Table notes:
1. To set a threshold, change the value of the set BatchQueueThreshold property in the $NCHOME/etc/
precision/NcPollerSchema.cfg to a suitable value. For example, to set the threshold to 10 batches of
queued polls:
When the queue exceeds the specified threshold, a message is written that is similar to the following
example:
2013-04-19T12:37:58:Poller:NCOMS:DataQueueSize:10;
Related tasks
Setting up an additional poller
Set up an additional poller on the Network Manager server if the default pollers are not sufficient to
handle your network load.
Changing poll policies
Use the Poll Policy Editor to change the settings of existing poll policies.
Adjusting the size of poll data queues
Procedure
1. Add the list of IP addresses whose polling you want to monitor using the
ncp_upload_expected_ips.pl script.
Issue the following command: $NCHOME/precision/bin/ncp_perl $NCHOME/precision/
scripts/perl/scripts/ncp_upload_expected_ips.pl -domain DOMAIN_NAME -file
FILENAME -password PASSWORD
Where:
• DOMAIN_NAME is the name of domain that contains the IP addresses. The list of IP addresses will
only be compared with IP addresses in this domain.
• FILENAME is a plain text file of IP addresses, separated by whitespace (for example, one IP address
per line). This only accepts IPv4 addresses. The file is expected to contain just IP addresses in
standard dot notation.
• PASSWORD is the database password used to access the NCIM and NCMONITOR schemas.
Note: Only repeat this operation if there are changes to the list of IP addresses whose polling you want
to monitor. Otherwise, this is a one-time operation only per domain.
Procedure
1. Edit the NcPollerSchema.cfg file located at $NCHOME/etc/precision.
2. Add the following line to the end of the file:
Where aggregationLimit is the value of the aggregation limit setting. By default this is 30.
3. Restart the ncp_poller process.
Related tasks
Monitoring poller capacity
Event enrichment
The event enrichment process occurs within the Event Gateway and is made up of distinct steps. Each of
these steps can be customized.
Related concepts
Network Manager event categories
The events that are raised by Network Manager fall into two categories: events about the network being
monitored and events about Network Manager processes.
1. An event is received from the ObjectServer and the incoming “Incoming event Event
event filter is applied to the event. filter” on page 533
The default filter checks the LocalNodeAlias field of the event. If
the LocalNodeAlias field is not empty, then the event passes the
filter and moves to Step 3.
Note: The LocalNodeAlias field usually contains data that points
to the main node device on which the event occurred. The precise
data held by the LocalNodeAlias field varies, and can include the
following:
• IP address
• DNS name
• sysName
2. The Event Gateway assigns a state to the event based on the “Event states” on Event
Severity and Tally fields in the event. This event state is an page 539
Event state
internal Event Gateway representation and is used later by the
plug-ins as part of the event subscription mechanism.
3. The incoming field filter is applied to the event. This field filter “Incoming field Event with filtered
filters out alerts.status fields that do not participate in the Event filter” on page 536 fields
Gateway processing.
Event state
4. The Event Gateway determines how to handle this event, by “Event map Event with filtered
determining which event map to use. Event maps define how to selection” on page fields
handle an event. 542
Event state
At the same time a numerical precedence value is associated with “Precedence value”
Event map fields,
an event. This precedence value is used by the RCA plugin in on page 566
such as event map
cases where there are multiple events on the same entity. The
name and event
event with the highest precedence value on the entity is used to
enrichment stitcher
suppress other events.
Precedence value
5. The Event Gateway determines the entity ID of the Network “Poller entity” on Event with filtered
Manager server or of the ingress interface, the interface within the page 568 fields
discovery scope from which network packets are transmitted to
Event state
and from the Network Manager server. This value is used by the
RCA plug-in to perform isolated suppression. Event map fields,
such as event map
name and event
enrichment stitcher
Precedence value
PollerEntityId
6. The Event Gateway performs a topology lookup to retrieve “Event Gateway To Steps 8 and Step
entity data associated with this event, and then enriches the stitchers” on page 9
event using some of this entity data. To perform the topology 551
Event with filtered
lookup and event enrichment, the Event Gateway calls the
fields and enriched
stitcher defined in the event map.
fields
Event state
Precedence value
PollerEntityId
Return value from
stitcher
7. The outgoing field filter is applied to the event. This filter only “Outgoing field Fields enriched by
passes the fields enriched by the Event Gateway, and in filter” on page 536 Event Gateway
particular, by the GwEnrichEvent stitcher rule. The enriched fields
“Outgoing Event
are placed on the Event Gateway queue, from where the data is
Gateway queue” on
sent to the ObjectServer at a configurable interval (default is 5
page 537
seconds).
8. Based on the return value from the stitcher defined in the event “Event enrichment Event with filtered
map (Step 7), the Event Gateway determines whether to send the stitchers” on page fields and enriched
enriched event to the plug-ins. 560 fields
• If the return value is 1, then the Event Gateway sends the Event state
enriched event to the plug-ins. Go to the next step.
Event map name
• If the return value is 0, then the Event Gateway does not send
the enriched event to the plug-ins. The event enrichment Precedence value
process for this event ends here. PollerEntityId
9. Each plug-in determines whether it is interested in the “Root Cause Event with filtered
enriched event. It does this based on the event map name and Analysis (RCA) fields and enriched
the event state. The plug-ins that are interested in the event plugin” on page fields
perform further event enrichment or take other action. 565
“Event Gateway
plugins” on page
588
10. On completion of processing, the enriched fields are placed “Outgoing Event To ObjectServer
on the Event Gateway queue, from where the data is sent to the Gateway queue” on
Fields enriched by
ObjectServer at a configurable interval (default is 5 seconds). page 537
plug-ins
Related concepts
Example: Default enrichment of a Tivoli Netcool/OMNIbus trap event
Use this information to understand how a Tivoli Netcool/OMNIbus event is processed as it passes through
the Event Gateway.
Related tasks
Modifying event map subscriptions
You can change the event maps that a plug-in subscribes to. For example, if you add a new event map and
want the system to perform RCA on events handled by that event map, then you must add that event map
to the subscription list for the RCA plug-in.
Event filtering
Events are filtered at the beginning of the enrichment process when the events are received from the
ObjectServer. Events are also filtered at the end of the process when the enriched events are sent back to
the ObjectServer.
Incoming filter
The incoming filter ensures that only events and fields of interest are passed to the Event Gateway for
event enrichment.
The following table describes the relevant lines from this insert.
Standby filter
In a failover deployment, the standby filter is used by the backup domain in a failover pair. That means the
backup domain when the primary is active, or the primary domain if the backup is active. The standby
filter only allows health check (ItnmHealthCheck) events through the Event Gateway. These events are
passed to the Failover plugin and tell the system to switch back to primary mode. Note that for failover
behaviour, any modifications to this filter must still ensure that the standby filter accepts health check
events.
When the primary server is active, the Event Gateway on the backup server does not perform any event
enrichment. When the primary server is down and the backup server is active, the Event Gateway on the
backup server performs event enrichment of events in the ObjectServer.
The standby filter is configured in the EventGatewaySchema.cfg configuration file. This file is located at:
$NCHOME/etc/precision/EventGatewaySchema.cfg.
The example listed in “Incoming event filter: default configuration” on page 534 shows how the standby
filter is configured in the EventGatewaySchema.cfg configuration file.
The section of code that is relevant to the standby filter is listed in the following lines. This insert
configures the Event Gateway to only pass ItnmHealthCheck events when the primary server is down and
the backup server is active.
The following table describes the relevant lines from this insert:
Related tasks
Example: Enriching an event with main node device location
You can configure event enrichment so that the location of the main node device associated with an event
is added to a field in the event.
Example: Enriching an event with interface name
You can configure event enrichment so that for all interface events, the name of the interface on which the
event occurred is added to a field in the event.
Event states
The Event Gateway assigns a state to the event based on the type of event, and based on the Severity and
Tally fields in the event. The event state is one of the parameters used by event plug-ins when subscribing
to events.
Related concepts
RCA stitcher descriptions
Use this information to understand what each RCA stitcher does.
RCA stitcher sequence
The stitchers that are called by the RCA plug-in and the sequence in which stitchers are run to determine
root cause.
Event types
For the purposes of the Event Gateway, event types fall into three broad categories: Problem, Resolution,
and Information.
For the purposes of the Event Gateway, event types fall into the following categories:
Type = 1: Problem
The Event Gateway assigns one of a number of different states to problem events, based on the
previous state, and based on the Severity and Tally fields in the event.
Type = 2: Resolution
Resolution events are immediately assigned the Resolution state.
Type =13: Information
Information events are immediately assigned the Information state.
The full list of event types defined in the alerts.status table is presented in the table below and is mapped
to one of the three categories listed above.
3 Severity: 0
Tally: Changed from previous event
4 Severity: Non-zero
5 Severity: Non-zero
Tally: Unchanged from previous event
6 Severity: Non-zero
Tally: Changed from previous event
7 Type = 2: Resolution
8 Type = 13:Information
Event handling
Event handling involves determining how to map each type of event from the ObjectServer to an entity in
the topology data.
Event maps
Event handling is performed using event maps. The main function of an event map is to call a set of
stitchers that perform topology lookup to determine the entity associated with the event and then enrich
the event with topology data.
@NmosEventMap = "LinkDownIfIndex.910"
Event Gateway
Populate the config.precedence table using the insert defined in the Event Gateway configuration file,
EventGatewaySchema.cfg. For an example, see “Event map selection using the Event Gateway” on
page 542.
The eventPrecedence inserts configured in the Event Gateway override eventPrecedence inserts
configured in the Tivoli Netcool/OMNIbus probe rules files. This enables you to locally override any
eventPrecedence inserts configured in the network.
genericip-event LookupMainNode Processes events that do not match any other event
map.
Note: This event map is intended as a catch-all. Plug-
ins should not register interest in this eventMap.
Instead, events of interest should be passed to the
EntityFailure event map.
Expected input field: LocalNodeAlias, where this
field contains one of the following:
• IP address
• Entity name
• DNS name
• sysName
• entityId
NbrFail LookupNbrFailure Handles OSPF, LDP and BGP adjacency change events.
In addition to performing the requisite lookup, the
LookupNbrFailure stitcher also adds a
RemoteNodeEntityId value, used by the RCA plug-
in.
Expected input fields:
• LocalNodeAlias , where this field contains one of
the following:
– IP address
– Entity name
– DNS name
– sysName
– entityId
• RemoteNodeAlias , where this field contains the
neighboring node IP address or DNS name.
• LocalPriObj , where this field contains an
ifDescr value in the format ifEntry.ifDescr,
where ifDescr is the value of ifDescr; for example,
ifEntry.ifFastEthernet0/1.
PrecisionMonitorEvent LookupEntityId Used to handle events raised by the ITNM poller, for
which root-cause analysis must be performed.
Expected input fields: NmosEntityId, where this field
contains the NCIM entityId for the entity.
Reconfiguration LookupMainNode Events assigned to this event map are used by the
Disco plug-in to rediscover the device associated with
them. By default, reboot events (events with event ID
of NmosSnmpReboot) are assigned to this event map,
based on the assumption that following reconfiguration
of a device (for example, addition of a new card), the
device will be rebooted, and then needs to be
immediately discovered, so that the changes in
configuration can be rapidly stored in the topology
model.
Expected input field: LocalNodeAlias, where this
field contains one of the following:
• IP address
• Entity name
• DNS name
• sysName
• entityId
The part of the code that is relevant to configuration of event maps to select specific Event Gateway
stitchers is listed in the following lines from the example. The following table describes the relevant lines
from this example. This code refers to the config.eventMaps table.
Note: The code fragment shown below might be interspersed with other inserts in the actual code.
LookupIfEntry.stch Looks up the index entry for an interface None. Returns one of the following
on a device based on field values in the Called values:
event. This stitcher is used by events that from event
• 1: An entity is found in the
occur on interfaces. Performs default map.
NCIM cache. Pass the
event enrichment based on the results of
enriched event data to
the lookup.
subscribing plug-ins.
• 0: No entity is found in the
NCIM cache. Do not pass
the enriched event data to
subscribing plug-ins.
LookupIp.stch Looks up an entity using an IP address or None. Returns one of the following
DNS name. Note that the entity that the Called values:
stitcher finds can be an interface or a from event
• 1: An entity is found in the
main node. Performs default event map.
NCIM cache. Pass the
enrichment based on the results of the
enriched event data to
lookup.
subscribing plug-ins.
• 0: No entity is found in the
NCIM cache. Do not pass
the enriched event data to
subscribing plug-ins.
LookupMainNode.stch Looks up a main node device. If a value is None. Returns one of the following
present in the NmosEntityId field of the Called values:
event, then that value is used to from event
• 1: An entity is found in the
determine the entity ID of the main node. map.
NCIM cache. Pass the
Otherwise, fall back to the value in the
enriched event data to
LocalNodeAlias field. Performs default
subscribing plug-ins.
event enrichment based on the results of
the lookup. • 0: No entity is found in the
NCIM cache. Do not pass
the enriched event data to
subscribing plug-ins.
LookupProbeSource Looks up source entity for a Probe. Called None. • 1: An entity is found in the
Entity by the rttMonNotifications Event Called NCIM cache. Pass the
Map. from event enriched event data to
map. subscribing plug-ins.
• 0: No entity is found in the
NCIM cache. Do not pass
the enriched event data to
subscribing plug-ins.
UserDefinedStitcher
{
StitcherTrigger
{
// There is no trigger, as the eventMaps will automatically
// call this with the event as the in-scope record
}
StitcherRules
{
Record entity;
if ( entity == NULL )
{
entity = GwIpLookupUsing( "LocalNodeAlias" );
}
int foundEntity = 0;
if ( entity <> NULL )
{ ExecuteStitcher( "StandardEventEnrichment", entity );
foundEntity = 1;
}
UserDefinedStitcher
{
StitcherTrigger
{
//
// Called from another stitcher using the syntax:
//
// text ifString = "";
// ifString = ExecuteStitcher( 'ExtractIfString', myStringField );
//
}
StitcherRules
{
text ifString = "";
SetReturnValue( ifString );
}
}
Example: EntityFromIfString.stch
Use this topic to understand how entity retrieval stitchers work.
The EntityFromIfString.stch stitcher looks up an interface based on a main node entityName and a string,
which is expected to be the ifName, ifDescr or ifAlias of the interface. This returns the interface entity, if
found in NCIM cache.
UserDefinedStitcher
{
StitcherTrigger
{
// There is no trigger, as this is explicitly called from
// other stitchers.
}
StitcherRules
{
text mainNodeEntityName = ARG_1;
text ifString = ARG_2;
Record entity;
text ifStringQuery =
"select * from ncimCache.entityData
where
ENTITYTYPE = 2
and
BASENAME = eval(text, '$mainNodeEntityName')
and
( interface->IFNAME = eval(text, '$ifString')
or
interface->IFDESCR = eval(text, '$ifString')
or
interface->IFALIAS = eval(text, '$ifString') );";
SetReturnValue( entity );
}
}
Example: StandardEventEnrichment.stch
Use this topic to understand how event enrichment stitchers work.
The StandardEventEnrichment.stch performs standard event enrichment. It populates event fields that
plug-ins expect to be able to use (for example, entityType) as well as fields that are fed directly back from
the Event Gateway to update the event in the ObjectServer. The only fields which are permitted to update
the ObjectServer alerts.status table are those fields that are listed in the outgoing field filter, as defined in
the in the FieldFilter section of the nco2ncp table within the EventGatewaySchema.cfg configuration file.
For example, the entityType and entityName fields are added to the event for use by plug-ins, but do not
actually enrich the event in the ObjectServer as these fields do not pass the outgoing field filter.
UserDefinedStitcher
{
StitcherTrigger
{
// There is no trigger. This is called from other stitchers
// with the event as the in-scope record, and the entity as
// the single argument.
}
StitcherRules
{
Record entity = ARG_1;
Record enrichedFields;
@enrichedFields.EntityType = entityType;
@enrichedFields.EntityName = entityName;
@enrichedFields.NmosDomainName = eval(text, '$DOMAIN_NAME');
@enrichedFields.NmosEntityId = entityId;
@enrichedFields.NmosManagedStatus = managedStatus;
@enrichedFields.NmosObjInst = mainNodeId;
GwEnrichEvent( enrichedFields );
}
}
Related tasks
Example: Enriching an event with main node device location
You can configure event enrichment so that the location of the main node device associated with an event
is added to a field in the event.
Example: Enriching an event with interface name
You can configure event enrichment so that for all interface events, the name of the interface on which the
event occurred is added to a field in the event.
This insert instructs the Event Gateway to perform the following actions:
• Use the stitcher LookupIfEntry to perform the topology lookup.
The LookupIfEntry looks up the index entry for an interface on a device based on the field values in
the event. Based on the value of the interface index extracted from the fields in the event, the
stitcher retrieves a row from the NCIM cache consisting of entity and interface data. Another
stitcher is called to perform event enrichment.
• Set the EventCanFlap flag to 1 to inform the RCA plug-in that the related device or interface might
be continuing to go up and down.
9. If the Event Gateway finds a matching entity in the network topology, the enriched event data is
filtered by the outgoing field filter and placed on the Event Gateway queue. The event is also passed
on to plugins that have registered interest.
10. Because the RCA plugin has registered interest, it receives the event for processing and performs
RCA, using the precedence of 910 from the NmosEventMap field.
11. The event is enriched with the results of RCA and placed on the Event Gateway queue.
Related concepts
Quick reference for event enrichment
Use this information to understand how an event is processed as it passes through the Event Gateway.
1. An event is received from the Event Gateway. The RCA plug-in checks that this Root Cause Analysis (RCA)
event meets its event maps and event state subscription requirements. In RCA plugin in the IBM Tivoli
terms this is known as a trigger event because it triggers RCA plug-in activity. Network Manager IP
Edition Administration
Guide
Event Gateway plugins in
the IBM Tivoli Network
Manager IP Edition
Administration Guide
2. The event is inserted into the RCA plug-in mojo.events database from where it mojo.events events
can be retrieved for processing by the RCA stitchers. database table in the IBM
Tivoli Network Manager IP
Edition Administration
Guide
Related tasks
Modifying event map subscriptions
You can change the event maps that a plug-in subscribes to. For example, if you add a new event map and
want the system to perform RCA on events handled by that event map, then you must add that event map
to the subscription list for the RCA plug-in.
Precedence value
At the same time that an event map is selected to handle the event, a numerical precedence value is
associated with an event. This precedence value is used by the RCA plugin in cases where there are
multiple events on the same entity. The event with the highest precedence value on the entity is used to
suppress other events.
A precedence value is configured for an event ID using the Event Gateway config.precedence table. The
config.precedence table is configured in the EventGatewaySchema.cfg configuration file. This file is
located at: $NCHOME/etc/precision/EventGatewaySchema.cfg.
The following example shows how the config.precedence table is configured in the
EventGatewaySchema.cfg configuration file.
Poller entity
Use this information to understand what the poller entity is and how to configure it.
The poller entity, also known as the polling station, is the server from which Network Manager polls
devices. If the polling station, usually the Network Manager server, is not within the scope of your network
domain, then, to enable the RCA plug-in to perform isolated suppression, the IP address or DNS name of
the ingress interface must be specified as the poller entity. This is the interface within the discovery scope
from which network packets are transmitted to and from the polling station.
The poller entity is the name of a server to use to represent the local Network Manager server, and is
stored in the config.defaults table in the field NcpServerEntity. A value is required in the NcpServerEntity
field if the Network Manager server is not within the scope of the discovery.
The NcpServerEntity field must be configured as follows:
The following diagram shows the ingress interface (circled) when the Network Manager server is outside
discovery scope.
Note: You must have run at least one discovery in order for the Event Gateway to find the poller entity in
the NCIM database.
Related tasks
Configuring the poller entity
When the Network Manager server is not within the scope of your network domain, or you have several
domains, specify the IP address or DNS name of the poller entity.
RCA stitchers
RCA stitchers process a trigger event as it passes through the RCA plug-in.
RCA plug-in stitchers are stored in the following location: $NCHOME/precision/eventGateway/
stitchers/RCA.
For information on stitcher language, see the IBM Tivoli Network Manager Reference.
Occurred ProcessProblemEvent.stch
ReAwakened,
ReOccurred
Resync
Updated
3. Two triggers are called by the ProcessProblemEvent.stch stitcher to attempt to suppress the
trigger event. These triggers are as follows:
• The SuppressTrigger.stch stitcher determines whether the trigger event can be suppressed by
an existing event.
• For OSPF or BGP events, the PeerEntitySuppression.stch stitcher determines whether the
trigger event can be suppressed by another event on the peer entity.
If the SuppressTrigger.stch or the PeerEntitySuppression.stch stitchers cannot suppress
the trigger event, the trigger event becomes root cause.
4. The RCA plug-in checks whether the trigger event is suppressed by another event on the same entity.
That is, the check assesses if the trigger event is not the master event for the entity. If the trigger event
is not the master event, it is prevented from suppressing other events, because the master event for
the entity performs event suppression. In the subsequent steps, the ProcessProblemEvent.stch
calls other stitchers, which attempt to use the trigger event to suppress other events. Each of the
stitchers is run in turn.
5. The EntitySuppression.stch stitcher uses the trigger event to suppress other events on the exact
same entity. The event that has the highest precedence on the entity suppresses all the other events
on that entity.
6. The ContainedEntitySuppression.stch stitcher uses the trigger event to attempt to suppress
other events by using contained entity principles. The event on the containing entity suppresses events
on all contained entities.
7. The IsolatedEntitySuppression.stch stitcher uses the trigger event to attempt to suppress
other events by using downstream entity principles.
8. The ConnectedEntitySuppression.stch stitcher uses the trigger event to attempt to suppress
other events using by connected entity principles. For example, when two interfaces are connected
and there is an event on both, the event on one of the interfaces suppresses the event on the other
interface.
ProcessProblemEvent.stch Handles problem events, that is, events with event states
Occurred, ReAwakened, ReOccurred, Resync, and
Updated.
This stitcher calls the SuppressTrigger stitcher and the
PeerEntitySuppression to try to suppress the trigger
event by using other events. It then calls the
EntitySuppression, ContainedEntitySuppression,
ConnectedEntitySuppression, and
IsolatedEntitySuppression stitchers, in that order, to
try to suppress other events by using the trigger event.
Starting in version 4.2, events are not sent back to the
ObjectServer if there is no change in the RCA status.
ProcessResolutionEvent.stch Handles resolution events, that is, events with event states
Cleared and Deleted.
SuppressTrigger.stch Determines whether the trigger event can be suppressed by
an existing event.
TimedClearEventProcessing.stch A timed stitcher that runs every 30 seconds. This
interval is defined by the m_IntervalSeconds property in
the stitcher. It calls the
AmosTimedClearEventProcessing() stitcher, which
reprocesses the events that are suppressed by a clear event.
The AmosTimedClearEventProcessing() stitcher
processes the suppressed events only if the clear event
occurred more than 30 seconds ago. This time threshold is
defined by the Age property in the stitcher.
Related concepts
Event states
The Event Gateway assigns a state to the event based on the type of event, and based on the Severity and
Tally fields in the event. The event state is one of the parameters used by event plug-ins when subscribing
to events.
Definition of terms
The terms downstream and upstream are used with reference to the poller entity.
Downstream
Specifies a location on the network topologically more distant from the polling station but on the same
physical path as a second location.
Upstream
Specifies a location on the network topologically closer to the polling station but on the same physical
path as a second location.
In complex networks, the distance of devices from the polling station changes as devices are deactivated.
This change in distance has an impact on which devices are upstream or downstream.
Example
The figure below shows an example of upstream and downstream locations. In this example, device B is
downstream of device A; therefore, device A is upstream of device B.
Contained interfaces
A chassis failure suppresses all failures on interfaces contained within that chassis.
In the figure below, a failure on chassis device A suppresses failures on interfaces b, c and d. Interfaces b,
c and d are all contained within chassis device A.
Connected interfaces
A chassis failure suppresses all failures on interfaces connected to that chassis device. Failures are
suppressed on both upstream and downstream interfaces.
In the figure below, device A suppresses failures on interfaces b, c, and d.
Related reference
Definition of downstream and upstream within RCA
Use this information to understand how the terms downstream and upstream are applied within the RCA
plug-in.
Interfaces
If an interface is isolating downstream failures, then the interface failure can suppress the downstream
failures.
Connected interfaces
An interface failure A can suppress a subsequent interface failure B if the two interfaces are directly
connected. The interface whose suppression rule fires first, suppresses the other interface. Suppression
of an interface failure B by an earlier failure A on a connected interface can only occur if the following
conditions hold:
• Interface failure B is not already being contained-suppressed.
• Interface failure A is not already being isolated-suppressed.
• Interface failure A is not already being connected-suppressed.
Figure 16. Interface failure suppresses more recent failure on directly connected neighbor interface
Related reference
Definition of downstream and upstream within RCA
Use this information to understand how the terms downstream and upstream are applied within the RCA
plug-in.
Contained suppression
Because the interfaces are in the same domain as the chassis that contains them, contained RCA is
unaffected by a cross-domain environment.
Isolated suppression
Devices on the edge of the network, which have fewer connections, can become unreachable (isolated)
from the poller entity if a device between them and the poller entity fails. Events on these isolated devices
are suppressed, as long as all isolated devices are in the same domain. When you partition your network,
ensure that groups of devices that are isolated are kept within the same domain.
SAE RCA
If a service, for example a VPN, consists of devices in two domains, then two SAE events can be created
for the same VPN, one in each domain.
Related concepts
About cross-domain discovery
Cross-domain discovery can be configured to join two or more discovered domains together.
Related tasks
Configuring cross-domain discoveries
To enable links between devices in different domains to be shown in the network and topology views, you
must configure and run cross-domain discoveries on the different domains.
Configuring the poller entity
When the Network Manager server is not within the scope of your network domain, or you have several
domains, specify the IP address or DNS name of the poller entity.
Related reference
Examples of root cause analysis
These examples show how the RCA process performs root cause analysis based on consideration of
different types of network devices and interfaces. The examples are for illustrative purposes only and are
meant to show only the principles that RCA uses. RCA in larger networks is more complex.
Example of usage
The RCA path tool uses the OQL Service Provider, ncp_oql, to execute queries.For more information on the
OQL Service Provider, see the IBM Tivoli Network Manager IP Edition Administration Guide.
The following example command queries the full path between a source device with an entityId field
value of 6 and a target device with an entityId field value of 137.
{
ENTITYID=6;
ENTITYNAME='router4';
}
{
ENTITYID=385;
ENTITYNAME='VLAN_OBJECT_router4_VLAN_37';
}
{ ENTITYID=137;
ENTITYNAME='router4[ Fa0/3/3 ]';
}
2. Show the full path from the entity named 'rod' to the entity named 'freddy'.
3. Show the current path from entityId 102 to the entity with IP address 172.21.226.3.
4. Show the current path from the interface named 'rod[ 0 [ 1 ] ]' to entityId 105.
5. Show the full path from entityId 102 to the entity with IP address 172.21.226.3. If no path is found,
try to find a path from anything contained by the container of entityId 102. In other words, go up one
level in the container hierarchy to get the container identifier, and then try to construct the path using
as source entity each one of the entities contained in that container.
If there is no path, the output will look something like the following:
{
EntityId=0;
EntityName='No path found from A to Z';
}
( 1 record(s) : Transaction complete )
Related tasks
Querying management databases from the command line
Network Manager polls device D from the poller entity. In the following diagram the poller entity is shown
as entity X.
X
\
\
\
\
A ------------ B ------------- C ------------- D
If a PingFail alert is injected onto device B, this alert makes node B inactive and breaks the path from A to
D and causes the RCA path tool to return the following results:
• Full path (atoz.full): this displays the shortest path between nodes A and D, regardless of the current
state of the network. Consequently, atoz.full displays the path from A to D.
• Current path (atoz.current): this displays the shortest path between nodes A and D, taking into account
the current state of the network. As node B is inactive, there is no path from A to D, therefore no path
returned.
In the corresponding production environment, if a PingFail alert were to occur on node D, this alert would
be suppressed, and the alert on node B would be highlighted as the root cause.
Related concepts
Poller entity
Use this information to understand what the poller entity is and how to configure it.
If a PingFail alert is injected onto device B, this alert makes node B inactive, and breaks the path from X to
D via A. However, there is an alternative path from X to D, via E, and this causes the RCA path tool to
return the following results:
• Full path (atoz.full): this displays the shortest path between nodes X and D, regardless of the current
state of the network. Consequently, this displays the path from X to D, via A, as this is the shortest path.
Adaptive polling Writes a subset of related event and entity data to the ncmonitor.activeEvent table.
This enables network views to be created based on event data (alert views). Poll
policies are scoped based on network views and therefore polls can be defined based
on network alerts. These are known as adaptive polls because polling is initiated based
on network problem conditions.
Compatibility Check Attempts to update the ObjectServer tables with any values that are needed by
Network Manager.
Disco Receives certain reboot events from the Event Gateway and triggers partial rediscovery
based on these events. By default, this plug-in is only interested in events that indicate
that a reboot has taken place.
Failover Receives Network Manager health check (ItnmHealthChk) events from the Event
Gateway and passes these events to the Virtual Domain process, which decides
whether or not to initiate failover based on the event.
PostNcimProcessing Triggers the stitching of multiple domains into a single aggregation domain when a
topology update event is received. It does this by running any stitchers that are
necessary after the NCIM database has been updated.
Root cause analysis Based on data in the event and based on the discovered topology, rules coded in RCA
(RCA) stitchers attempt to identify events that are caused by or cause other events.
SAE Aggregated Link Generates a Service Affected Event (SAE) if any port that participates in a Link
Aggregation Group has an alert of severity 5 or higher. Such ports are of Collection
entity type 170, aggregatedLink.
SAE ITNM Service Generic Network Manager service: can be configured to generated synthetic events
when a an event occurs on a device associated with a custom service.
zNetView Populates additional custom alerts.status fields that are used by IBM Tivoli NetView for
z/OS®.
Note: You must first add the following custom fields to the alerts.status table:
• NmosClassName
• NmosEntityType
The individual topics on each plugin describe the operation of each plugin in more detail. To check which
event maps are registered with each plugin, run the following command:
$NCHOME/precision/scripts/perl/scripts/ncp_gwplugins.pl
-domain DOMAIN -plugin Plugin name
Related concepts
Root Cause Analysis (RCA) plugin
The root-cause analysis (RCA) plugin receives a subset of enriched events from the Event Gateway and
determines which of the events are root cause and which events are symptoms. RCA only receives events
that affect the routing of traffic through the network.
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• Acknowledged
• AlertGroup
• EventId
• FirstOccurrence
• LastOccurrence
• LocalPriObj
• NmosCauseType
• NmosSerial
• NmosEntityId
• Serial
• Severity
• SuppressEscl
• Tally
Table 127. Fields in the activeEvent table populated by the adaptive polling plug-in
Plug-in Description
Acknowledged Indicates whether the event has been acknowledged by the operator.
SuppressEscl Used to suppress or escalate the alert. The suppression level is manually selected by
operators from the Event Viewer.
Tally A count of the number of occurrences of the event. This enables sporadic events such as
one-off ping failures to be filtered out.
Related tasks
Setting plug-in configuration parameters
You can set optional configuration parameters for the Event Gateway plug-ins using the
ncp_gwplugins.pl script.
Managing adaptive polling
Adaptive polls dynamically react to events on the network. You can create adaptive polls that manage a
wide range of network problem scenarios.
Related information
Tivoli Netcool/OMNIbus documentationWithin the IBM Knowledge Center for Tivoli Netcool/OMNIbus,
refer to the topic 'Specifying the IDUC port '. By default, when an ObjectServer starts, an available port
number is chosen for the IDUC connection. You can also specify the IDUC port to use. You must specify
the IDUC port when accessing an ObjectServer protected by a firewall.
Required fields
This plug-in does not have any required fields. The plug-in runs when Network Manager connects to a
Tivoli Netcool/OMNIbus ObjectServer.
The following plug-in configuration parameters can optionally be set using the ncp_gwplugins.pl
script.
Disco plug-in
Use this information to understand some basic information about how this plug-in operates, plug-in
prerequisites, and configuration details associated with the plug-in.
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosObjInst
Related tasks
Setting plug-in configuration parameters
You can set optional configuration parameters for the Event Gateway plug-ins using the
ncp_gwplugins.pl script.
Enabling and disabling polls
To activate Network Manager polling, you must enable the poll policies.
Configuring the Disco plug-in
By default the Disco plug-in triggers rediscovery of devices associated with reboot events from the Tivoli
Netcool/OMNIbus ObjectServer. You can configure the Disco plug-in to trigger rediscovery based on the
receipt of any event.
Related information
Tivoli Netcool/OMNIbus documentationWithin the IBM Knowledge Center for Tivoli Netcool/OMNIbus,
refer to the topic 'Specifying the IDUC port '. By default, when an ObjectServer starts, an available port
number is chosen for the IDUC connection. You can also specify the IDUC port to use. You must specify
the IDUC port when accessing an ObjectServer protected by a firewall.
Required fields
This plug-in expects events supplied by the Event Gateway to have the Node field populated with the
name of the affected Network Manager domain.
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosObjInst
The following plug-in configuration parameters can optionally be set using the ncp_gwplugins.pl
script.
Related tasks
Setting plug-in configuration parameters
You can set optional configuration parameters for the Event Gateway plug-ins using the
ncp_gwplugins.pl script.
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosEntityId
• Severity
• NmosCauseType
• NmosDomainName
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosEntityId
• Severity
• NmosCauseType
• NmosDomainName
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosEntityId
• Severity
• NmosCauseType
• NmosDomainName
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• NmosEntityId
• Severity
• NmosCauseType
• NmosDomainName
zNetView plug-in
Use this information to understand plug-in prerequisites as well as configuration details associated with
the plug-in.
Required fields
This plug-in expects events supplied by the Event Gateway to be with populated with the following fields:
• Acknowledged
The plug-in requires the following custom fields to exist in the alerts.status table.
NmosClassName 64-character string Class of the device the event was raised against. This value is
retrieved from the NCIM topology database chassis table.
NmosEntityType 32-bit integer Type of entity the event is raised against. This value is
specified in the NmosEntityId field.
Related tasks
Setting plug-in configuration parameters
Procedure
1. Edit the Event Gateway schema file, $NCHOME/etc/precision/EventGatewaySchema.cfg, to
allow the Event Gateway to update the new field. To do this, add the text in bold to the outgoing event
filter. Remember to add a comma at the end of the line containing the NmosSerial field, before the
line containing the new Location field.
Note: Fields that are added to the outgoing event filter are automatically added to the incoming field
filter, config.nco2ncp, thus ensuring that the current value of the field is retrieved. This allows the
StandardEventEnrichment stitcher in the next step to check the value of the InterfaceName field
before updating it. This technique ensures that the Event Gateway does not keep updating the same
value.
2. Edit the Event Gateway stitchers to retrieve the location information from the topology database and to
populate the Location field.
One way to do this is to add the following code to the StandardEventEnrichment stitcher. Adding this
code ensures that this procedure is performed for all topology events that are matched to an entity.
Add this code to the stitcher immediately before the final line, the call to
GwEnrichEvent( enrichedFields ). For more information on the GwEnrichEvent() stitcher
rule, see the IBM Tivoli Network Manager Reference.
Table 136. Lines of code relevant to the main node device location example
Line numbers Description
1 Call the GwMainNodeLookupUsing() rule to ensure that chassis data is available
for the current event. The event might have been raised on an interface, in which
case the chassis data would not normally be available at this point. For more
information on the GwMainNodeLookupUsing() stitcher rule, see the IBM Tivoli
Network Manager Reference.
5 Retrieve the sysLocation data from the chassis table.
Note: Whenever you retrieve data from NCIM cache, the field within the entity data
must be specified in uppercase; for example,
@mainNode.chassis.SYSLOCATION.
7-9 If the Location field is not already set then add the sysLocation data to the other
fields to be enriched.
Related concepts
Outgoing field filter
The outgoing field filter defines the set of ObjectServer fields that may be updated by the Event Gateway.
Related reference
Example: StandardEventEnrichment.stch
Use this topic to understand how event enrichment stitchers work.
Procedure
1. Edit the Event Gateway schema file, $NCHOME/etc/precision/EventGatewaySchema.cfg, to
allow the Event Gateway to update the new field. To do this, add the text in bold to the outgoing event
filter. Remember to add a comma at the end of the line containing the NmosSerial field, before the
line containing the new InterfaceName field.
Note: Fields that are added to the outgoing event filter are automatically added to the incoming field
filter, config.nco2ncp, thus ensuring that the current value of the field is retrieved. This allows the
StandardEventEnrichment stitcher in the next step to check the value of the InterfaceName field
5-8 Only populate the InterfaceName field if the interface name value is not already
present in the in-scope event.
if ( entityType == 2 )
{
text interfaceName = @entity.networkInterface.IFNAME;
Related concepts
Outgoing field filter
The outgoing field filter defines the set of ObjectServer fields that may be updated by the Event Gateway.
Related reference
Example: StandardEventEnrichment.stch
Use this topic to understand how event enrichment stitchers work.
Procedure
1. Open the EventGatewaySchema.cfg configuration file.
2. Identify the insert statement into the config.defaults table.
By default this insert statement has the following form:
Related concepts
Outgoing Event Gateway queue
The outgoing Event Gateway queue receives enriched events from the Event Gateway stitchers (main
event enrichment) and from the plug-ins. In order to minimize the number of updates and hence minimize
the load on the ObjectServer, updates to the Object Server are placed in a queue, aggregated, and sent to
the ObjectServer at a specified interval. The default is 5 seconds.
User authentication for the OQL Service Provider is off by default. If authentication has been turned on,
type a valid username and password at the prompt.
User authentication for the OQL Service Provider is off by default. If authentication has been turned on,
type a valid username and password at the prompt.
Note: The -server argument is optional. If this argument is not specified then the server configured in
the $NCHOME/etc/precision/ConfigItnm.cfg file is used.
User authentication for the OQL Service Provider is off by default. If authentication has been turned on,
type a valid username and password at the prompt.
Note: The -dbId argument is optional.
Procedure
1. Back up the NCP_G_EVENT.props properties file that was installed in the $NCHOME/etc/precision
directory.
2. Open the NCP_G_EVENT.props properties file in a text editor.
3. Locate, uncomment, and update the property you want to change.
You can edit the following properties:
Ipc.Timeout
The Ipc.Timeout property specifies the time period (in seconds) that the client waits for the
server to respond. If this time is exceeded, an error is logged. The default is 60 seconds.
SSLCommonNames
If you are connecting to a remote ObjectServer that is part of a failover pair using SSL, you must
configure the names of the primary and backup ObjectServers. If you do not configure this value
correctly, the Event Gateway does not connect to the ObjectServer failover pair.
4. Save the NCP_G_EVENT.props properties file.
Example
The following example configures a timeout of 20 seconds and specifies primary and backup
ObjectServer names.
Related reference
Default event maps
Network Manager provides a default set of event maps. Use this information to understand which default
event maps are available and what each event map does, and to understand how legacy event maps
delegate to current event maps.
Note: For the configuration changes to take effect and enable the events, the ncp_model process
must be restarted. The process reads the configuration settings at start-up.
ItnmEntityDeletion
If configured in the $NCHOME/etc/precision/ModelSchema.cfg file, this type of information
event is generated by ncp_model, for each chassis or IP interface entity (EntityType = 1) that is
deleted from the NCIM database.
You can configure ModelSchema.cfg by setting the value of the RaiseEntityEvent column to 1 in the
INSERT statement for the model.config table, as shown in the preceding description for the
ItnmEntityCreation EventId.
ItnmFailover
This type of event is generated by ncp_virtualdomain when a Network Manager domain within a
failover pair fails over or fails back.
A problem event is generated when failover occurs and a resolution event is generated on failback.
In the alerts.status table, the Summary field description indicates whether the domain is the primary
or backup, and whether it is in an active or a standby mode.
ItnmFailoverConnection
This type of event is generated by ncp_virtualdomain to indicate when the backup domain in a
failover pair connects to, or disconnects from, the primary domain.
When Network Manager runs in failover mode, a resolution event is generated when the primary and
backup domains set up their TCP socket connection. This socket connection is required to transfer the
topology updates from the primary domain because the discovery process (ncp_disco) does not run
in the backup domain. If the connection is subsequently lost, a problem event is generated.
Note: The status of the connection does not determine whether failover is triggered. Failover is
triggered only when health check events are transferred (via the ObjectServer) across domains, and
provided a socket connection has, at some point, been established.
ItnmGwPluginInitialization
This type event identifies whether each enabled Event Gateway plugin has been successfully
initialized. If this is a Problem event, consult the Event Gateway log file
(ncp_g_event.domain_name.log) for details.
ItnmHealthChk
Health check events govern Network Manager failover. Each domain in the failover pair generates
health check resolution events while that domain is healthy.
Health check problem events for a domain can be generated in two ways:
• By the local domain: The local domain detects a failure of one of its processes, as configured in the
$NCHOME/etc/precision/VirtualDomainSchema.cfg file.
• By the remote domain: One domain detects that the other domain has not generated a health check
resolution event in the configured amount of time, and generates a synthetic health check problem
event on behalf of the remote domain.
This query looks for any subnets that the Ping finder is still pinging. If there are no outstanding ping
sweeps and the discovery is in phase 0, this means that the discovery is complete.
Related tasks
Monitoring process status messages
You can view status messages from Network Manager to understand the health and status of the product.
$NCHOME/precision/bin/ncp_perl $NCHOME/precision/scripts/perl/scripts/
ncp_gwplugins.pl -domain NCOMS -plugin zNetView -enable -global
Command-line options
The following table describes the command-line options for the ncp_gwplugins.pl script used in this
example. For help, run the script as follows:
• For a brief list of the available options, run the command without any options.
• For a full set of command line options, run the script with the -help option.
$NCHOME/precision/bin/ncp_perl
$NCHOME/precision/scripts/perl/scripts/ncp_gwplugins.pl -domain NCOMS -plugin Disco
Command-line options
The following table describes the command-line options for the ncp_gwplugins.pl script used in this
example. For help, run the script as follows:
• For a brief list of the available options, run the command without any options.
• For a full set of command line options, run the script with the -help option.
$NCHOME/precision/perl/bin/ncp_perl $NCHOME/precision/scripts/
perl/scripts/ncp_gwplugins.pl -domain NCOMS -plugin RCA -add -eventMap PnniIfState
Command-line options
The following table describes the command-line options for the ncp_gwplugins.pl script used in this
example. For help, run the script as follows:
Related concepts
Quick reference for event enrichment
Use this information to understand how an event is processed as it passes through the Event Gateway.
Quick reference for RCA
Use this information to understand how an event is processed as it passes through the RCA plug-in.
Outgoing Event Gateway queue
The outgoing Event Gateway queue receives enriched events from the Event Gateway stitchers (main
event enrichment) and from the plug-ins. In order to minimize the number of updates and hence minimize
$NCHOME/precision/perl/bin/ncp_perl
$NCHOME/precision/scripts/perl/scripts/ncp_gwplugins.pl -domain NCOMS [ -global ]
-plugin "Adaptive Polling" -set -name ActiveEventUpdateInterval -value 10
Command-line options
The following table describes the command-line options for the ncp_gwplugins.pl script used in this
example. For help, run the script as follows:
• For a brief list of the available options, run the command without any options.
• For a full set of command line options, run the script with the -help option.
Related concepts
Adaptive polling plug-in
Use this information to understand plug-in prerequisites, how the adaptive polling plug-in populates fields
in the activeEvent table, as well as configuration details associated with the plug-in. The activeEvent table
is in the NCMONITOR schema.
Disco plug-in
Use this information to understand some basic information about how this plug-in operates, plug-in
prerequisites, and configuration details associated with the plug-in.
Failover plug-in
Use this information to understand plug-in operation as well as configuration details associated with the
plug-in.
PostNCIMProcessing plug-in
The PostNCIMProcessing plug-in runs any stitchers that are necessary after the NCIM database has been
updated. By default, the plug-in triggers the stitching of multiple domains into a single aggregation
domain when a topology update event is received.
zNetView plug-in
Procedure
1. Open the SaeMplsVpn.cfg configuration file.
2. Modify the insert statement by adding the text in bold to insert data from a relevant field in the service
record in NCIM cache into the CustomerNameField field.
For example, the following statement will insert the content of the entityData->DESCRIPTION field (if
this field exists) into the CustomerNameField, and into the Summary field of any MPLS VPN edge
service SAE generated.
Note: When you add a field to the insert, you must add a comma to the preceding line.
Example
In this example the existing configuration file SaeMplsVpn.cfg is customized to add an extra MPLS VPN
SAE service types to the config.serviceTypes table. The new service type is called MPLS VPN Core Service,
and generates SAEs when a Severity 5 (critical) fault event occurs on any router in the core network. You
can also create new SAE service types by creating a brand new configuration file and specifying the
relevant inserts there.
3. Add a new insert after the existing insert. The new insert should read as follows:
Note: You can have two or more SAE service types for a given table such as networkVpn (17), as
described in this example. In this case, the SAE service types must be mutually exclusive sets,
otherwise one will win over the other where they overlap. For example, the service types described in
this example do not overlap because they have complementary ConstraintFilter settings as
follows:
• networkVpn->VPNTYPE <> 'MPLS Core'
• networkVpn->VPNTYPE = 'MPLS Core'
2. Associate the event type with the new event map by configuring the relevant probe rules file to
populate the field NmosEventMap with the name of the new event map, NewEventMap.
Note: Configuring the probe rules file is the preferred way of associating the event with the new event
map, as this method updates the event at source, and therefore the change to the event map is
automatically detected by the Netcool/OMNIbus Knowledge Library and by all Network Manager
installations that connect to the Tivoli Netcool/OMNIbus ObjectServer to which the probe is
connected. Where EventId is the event identifer for the event type to be handled by the new event
map.
a. On the server where the Netcool/OMNIbus Knowledge Library is installed, locate the rules file that
corresponds to the eventID of the type of events that you want to customize. For vendor-specific
rules, the rules files are placed under the vendor directory, for example, include-snmptrap/
cisco.
b. Locate the appropriate rules file with the suffix user.include.rules. For example, /include-
snmptrap/adtran/adtran-ADTRAN-ACTDAXL3-MIB.user.include.snmptrap.rules.
Putting your customizations in a separate file makes it easier to identify and back them up later.
c. Edit the file and locate the section that corresponds to the type of trap that you want to customize.
d. Set the @NmosEventMap field using the following format: event map name.precedence value. For
example:
@NmosEventMap = "NewEventMap.0"
3. Alternatively if you are unable to make changes to the probe rules file, then you can associate the
event with the new event map by add a config.precedence insert to the EventGatewaySchema.cfg file,
as in the following example:
4. Configure the Disco and RCA plug-ins to subscribe to the new event map by running the following
commands. This ensures that the event type of interest is considered as a candidate for suppression in
RCA and is used to trigger rediscovery of the entity associated with the event.
The responses to each of these commands should show that the plug-in subscribes to the
NewEventMap event map.
• Verify the event map configuration by running the following command:
The responses to this commands should show that the NewEventMap event map is subscribed to by
the Disco and RCA plug-ins.
Related concepts
Disco plug-in
Use this information to understand some basic information about how this plug-in operates, plug-in
prerequisites, and configuration details associated with the plug-in.
Event map selection methods
The event map and precedence can be assigned directly from the Tivoli Netcool/OMNIbus probe rules file,
or in the Event Gateway configuration file.
Related tasks
Modifying event map subscriptions
You can change the event maps that a plug-in subscribes to. For example, if you add a new event map and
want the system to perform RCA on events handled by that event map, then you must add that event map
to the subscription list for the RCA plug-in.
Procedure
1. Open the EventGatewaySchema.DOMAIN.cfg configuration file.
2. Identify the insert statement into the config.defaults table.
By default this insert statement has the following form:
By default the NcpServerEntity field is empty. In this case, the Event Gateway searches the topology
using the IP address or the addresses of the local host it is running on.
3. Modify this statement to set the NcpServerEntity field to the value of the IP address or DNS name of
the ingress interface, for example:
4. If you are using RCA across multiple domains, repeat these steps for each domain, using a different
poller for each domain.
Related concepts
Poller entity
Use this information to understand what the poller entity is and how to configure it.
Related reference
RCA considerations in a cross-domain network
In a cross-domain environment, the ncp_g_event process in each discovery domain performs RCA on
the devices in the same discovery domain. Within each domain, RCA operates in the same way as it does
when there is only a single domain. Root Cause can also be analyzed across multiple domains when they
are visualized together using a cross-domain discovery.
Procedure
1. Open the RCASchema.cfg configuration file.
2. Identify the insert statement into the config.defaults table.
By default this insert statement has the following form:
// MaxAgeDifference is in minutes
insert into config.defaults
(
RequeueableEventIds,
MaxAgeDifference,
HonourManagedStatus,
TopologyChangesThreshold,
GraphTopologyNames
)
values
(
[
'NmosPingFail',
'NmosSnmpPollFail'
],
0,
1,
100,
[
'Layer2Topology',
'LocalVlanTopology'
]
);
By default the value for MaxAgeDifference is 0. This means that the feature is turned off.
3. Modify this statement to set the MaxAgeDifference field to a desired value in minutes.
Buffering : 1
BufferSize : 15
For troubleshooting purposes, you can alternatively configure probe properties from the command line by
running the nco_p_ncpmonitor command with the relevant command-line options.
Note: The following properties have standard default values:
Server
Defaults to the ObjectServer identified in the ConfigItnm schema, thereby ensuring consistency
with the Network Manager gateway.
PropsFile
Defaults to $NCHOME/probes/platform/nco_p_ncpmonitor.props.
RulesFile
Defaults to $NCHOME/probes/platform/nco_p_ncpmonitor.rules.
@Summary=$Description
In this example, @Summary identifies the alerts.status field, and $Description identifies the Network
Manager input field.
Where the Network Manager ExtraInfo field is used with nested fields to store additional data on entities
(for example, ExtraInfo->ifIndex), these fields are available in the following format in the rules file:
$ExtraInfo_variable
Where variable represents a Management Information Base (MIB) variable (for example, ifIndex), or other
data (for example, column names in NCIM tables). MIB variables are specified in mixed case characters,
and other data, in uppercase characters. For example:
$ExtraInfo_ifIndex
$ExtraInfo_MONITOREDENTITYID
To configure the rules file for the Probe for Tivoli Netcool/OMNIbus, it is necessary to have an
understanding of:
• The Network Manager event source data that is available for use in the probe rules file
• The set of alerts.status fields that can be populated with event data from Network Manager
• The data mapping between the Network Manager and alerts.status fields
For information about the syntax used in probe rules files, see the IBM Tivoli Netcool/OMNIbus Probe and
Gateway Guide in the Tivoli Netcool/OMNIbus information centre at http://www.ibm.com/support/
knowledgecenter/SSSHTQ/landingpage/NetcoolOMNIbus.html.
{
EventName='ItnmServiceState';
Severity=1;
EntityName='BACKUP';
Description='ncp_store process [15299] has started';
ExtraInfo={
EVENTTYPE=2;
SOURCE='ncp_ctrl';
ALERTGROUP='ITNM Status';
EVENTMAP='ItnmStatus';
SERVICE='ncp_store';
PID=15299;
};
}
The following excerpt from the probe rules file shows the syntax used to process and map these input
fields to alerts.status fields:
...
#
# populate some standard fields
#
@Severity = $Severity
@Summary = $Description
@EventId = $EventName
@Type = $ExtraInfo_EVENTTYPE
@AlertGroup = $ExtraInfo_ALERTGROUP
@NmosEventMap = $ExtraInfo_EVENTMAP
@Agent = $ExtraInfo_SOURCE
if (exists($ExtraInfo_ACCESSIPADDRESS))
{
@Node = $ExtraInfo_ACCESSIPADDRESS
}
else
{
@Node = $EntityName
}
#
# Stamp the event with the name of its originating domain
#
@NmosDomainName = $Domain
@Manager = "ITNM"
@Class = 8000
#
# populate fields for RCA
#
@LocalNodeAlias = @Node
...
#
# Now set the AlertKey and Identifier
#
if (match(@AlertGroup, "ITNM Status"))
{
switch ($EventName)
{
case ...
...
case "ItnmServiceState":
@LocalPriObj = $ExtraInfo_SERVICE
...
case ...
....
}
#
# Both the Identifier and the AlertKey contain the domain name. This ensures
# that in a multi-domain setup, events are handled on a per-domain basis
#
#
# Include the LocalPriObj in the AlertKey or the link-downs on
# all interfaces will cleared by a link-up on any interface
#
@AlertKey = $EntityName + @LocalPriObj + "->" + $EventName + @NmosDomainName
#
# Set up deduplication identifier and include the LocalPriObj
# so we can correctly handle de-duplication of events raised on interfaces
#
@Identifier = $EntityName + @LocalPriObj + "->" + $EventName + @Type + @NmosDomainName
}
When rules file processing is complete, the output data that is forwarded to the ObjectServer takes the
following form:
CMonitorProbeApp::ProcessStatusEvent
{
AlertGroup='ITNM Status';
EventId='ItnmServiceState';
Type=2;
Severity=1;
Summary='ncp_store process [15299] has started';
Node='BACKUP';
NmosDomainName='PRIMARY';
LocalNodeAlias='BACKUP';
LocalPriObj='ncp_store';
LocalRootObj='';
RemoteNodeAlias='';
AlertKey='BACKUPncp_store->ItnmServiceStateVIRTUAL';
Identifier='BACKUPncp_store->ItnmServiceState2VIRTUAL';
Class=8000;
Agent='ncp_ctrl';
LastOccurrence=1267122089;
}
Based on the rules file processing in this example, it can be seen that the Network Manager input fields
map to the alerts.status fields as follows:
Note: The full input to and output from the probe rules can be seen in the probe trace file. Set the trace to
debug 4. The probe trace file can be found at: $NCHOME/log/precision. For more information on
setting log levels, see IBM Tivoli Network Manager IP Edition Administration Guide.
For more information about the alerts.status table, see the IBM Tivoli Netcool/OMNIbus
Administration Guide in the Tivoli Netcool/OMNIbus information at IBM Tivoli Netcool/OMNIbus product
information.
IBM Corporation
Trademarks
The terms in Table 144 on page 651 are trademarks of International Business Machines Corporation in
the United States, other countries, or both:
Adobe, Acrobat, Portable Document Format (PDF), PostScript, and all Adobe-based trademarks are either
registered trademarks or trademarks of Adobe Systems Incorporated in the United States, other
countries, or both.
Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon,
Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or
its subsidiaries in the United States and other countries.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or
its affiliates.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the
United States, other countries, or both.
Notices 651
652 IBM Tivoli Network Manager IP Edition: Administration Guide
IBM®
Part Number:
(1P) P/N:
2021-4213-01