Beruflich Dokumente
Kultur Dokumente
2
and 10.2.1
Customizing
Date: 03-Apr-2017
CA Spectrum - 10.2 and 10.2.1
This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as
the Documentation) is for your informational purposes only and is subject to change or withdrawal by CA at any time. This
Documentation is proprietary information of CA and may not be copied, transferred, reproduced, disclosed, modified or
duplicated, in whole or in part, without the prior written consent of CA.
If you are a licensed user of the software product(s) addressed in the Documentation, you may print or otherwise make
available a reasonable number of copies of the Documentation for internal use by you and your employees in connection with
that software, provided that all CA copyright notices and legends are affixed to each reproduced copy.
The right to print or otherwise make available copies of the Documentation is limited to the period during which the applicable
license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to
certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed.
TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION AS IS WITHOUT WARRANTY OF ANY
KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE,
DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST
INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE
POSSIBILITY OF SUCH LOSS OR DAMAGE.
The use of any software product referenced in the Documentation is governed by the applicable license agreement and such
license agreement is not modified in any way by the terms of this notice.
Provided with Restricted Rights. Use, duplication or disclosure by the United States Government is subject to the restrictions
set forth in FAR Sections 12.212, 52.227-14, and 52.227-19(c)(1) - (2) and DFARS Section 252.227-7014(b)(3), as applicable, or
their successors.
Copyright 2017 CA. All rights reserved. All trademarks, trade names, service marks, and logos referenced herein belong to
their respective companies.
03-Apr-2017 3/311
Table of Contents
Customizing 4
GenericView_Container ...................................................................................................................... 51
GlobalCollection .................................................................................................................................. 52
Syntax ........................................................................................................................................ 52
Import .................................................................................................................................................. 53
Left_Model ........................................................................................................................................... 54
List_Value ........................................................................................................................................... 54
Location ............................................................................................................................................... 55
Location_Container ............................................................................................................................. 55
Model_Attr ........................................................................................................................................... 57
Model 1 ............................................................................................................................................... 57
MonitorPolicy_Attr ............................................................................................................................... 58
Port ...................................................................................................................................................... 58
Right_Model ........................................................................................................................................ 60
RTM_Test ........................................................................................................................................... 60
Schedule ............................................................................................................................................. 61
SM_AttrMonitor ................................................................................................................................... 64
SM_Customer ..................................................................................................................................... 64
SM_CustomerGroup ........................................................................................................................... 66
SM_Guarantee .................................................................................................................................... 66
SM_LatencyMon ................................................................................................................................. 67
SM_Service ......................................................................................................................................... 68
SM_Service_Mgt ................................................................................................................................. 69
SM_ServiceMgr ................................................................................................................................... 70
SM_SLA .............................................................................................................................................. 70
SM_SLA_Mgr ...................................................................................................................................... 71
Topology ............................................................................................................................................. 71
Topology_Container ............................................................................................................................ 72
Update ................................................................................................................................................. 74
Appendix B: Document Type Definition File .............................................................................................. 75
Appendix C: XML Examples ...................................................................................................................... 90
Example 1 Importing into the Topology View ...................................................................................... 91
Example 2 Creating Connections ........................................................................................................ 92
Example 3 Updating and Destroying ................................................................................................... 93
Example 4 Creating, Updating, and Destroying .................................................................................. 94
Appendix D: .modelinggatewayresource.xml ............................................................................................ 98
Customizing 5
Models ............................................................................................................................................... 111
Relations and Meta-Rules ................................................................................................................. 112
Model Type Inheritance ..................................................................................................................... 114
Attribute Descriptors ................................................................................................................. 114
Standard Hierarchy .................................................................................................................. 116
Specialized Hierarchy .............................................................................................................. 117
Model Type Precedence .......................................................................................................... 119
Attribute Collapsing .................................................................................................................. 122
Getting Started with the Model Type Editor ............................................................................................. 123
Using a Developer ID ........................................................................................................................ 124
Access Privileges With Developer ID ....................................................................................... 125
SpectroSERVER Database Protection ............................................................................................. 126
Considerations on Database Migration ............................................................................................. 127
About Starting the Model Type Editor ............................................................................................... 127
Start Model Type Editor from the Control Panel ...................................................................... 127
Start Model Type Editor from the Command Line .................................................................... 128
Overview of the User Interface .......................................................................................................... 128
Commit Changes to the SpectroSERVER Database ........................................................................ 129
Sorting and Filtering Lists .................................................................................................................. 130
Add and Remove Columns from Tables ........................................................................................... 131
Exit the Model Type Editor ................................................................................................................ 131
Creating and Modifying Model Types ...................................................................................................... 132
Creating and Modifying Model Types ................................................................................................ 132
Attributes of Model Types ........................................................................................................................ 132
Developer ID ..................................................................................................................................... 133
Model Type Name ............................................................................................................................. 133
Model Type ID (Handle) .................................................................................................................... 133
Base Model Types ............................................................................................................................ 134
Derived Model Types ........................................................................................................................ 134
Model Type Flags .............................................................................................................................. 134
Custom Attributes .............................................................................................................................. 136
Standard Attribute Descriptors ................................................................................................................ 137
Standard Attribute Descriptors .......................................................................................................... 137
Developer ID ..................................................................................................................................... 138
Attribute Name .................................................................................................................................. 138
Attribute ID (Handle) ......................................................................................................................... 138
Type .................................................................................................................................................. 139
Flags ................................................................................................................................................. 139
Group Name and Group ID ............................................................................................................... 141
Special Attribute Descriptors ................................................................................................................... 141
Special Attribute Descriptors ............................................................................................................. 141
Default Value ..................................................................................................................................... 142
Customizing 6
Extended Flags ................................................................................................................................. 142
OID Prefix and OID Reference .......................................................................................................... 144
Polling Group .................................................................................................................................... 145
Search for and Display Model Types ...................................................................................................... 146
Search for and Display Attributes ............................................................................................................ 146
Create a Model Type ............................................................................................................................... 147
Delete a Model Type ............................................................................................................................... 148
Working with Base Model Types ............................................................................................................. 150
How to Determine the Base Model Types for a New Model Type .................................................... 150
Add a Base Model Type to a Model Type ......................................................................................... 151
Remove a Base Model Type from a Model Type .............................................................................. 152
Import MIBs ............................................................................................................................................. 153
Using the Model Type Editor to import a MIB into a model type. ...................................................... 154
Set Model Type Flags ............................................................................................................................. 155
Working with Attributes ............................................................................................................................ 156
Add an Attribute to a Model Type ...................................................................................................... 156
Remove an Attribute from a Model Type .......................................................................................... 158
Edit an Attribute ................................................................................................................................. 159
Modify an Attribute's Default Value .......................................................................................... 159
Modify an Attribute's Descriptors ............................................................................................. 160
Working with Attribute Groups ................................................................................................................. 161
Working with Attribute Groups .......................................................................................................... 161
Creating an Attribute Group .............................................................................................................. 161
Modifying an Attribute Group ............................................................................................................ 162
Deleting an Attribute Group ............................................................................................................... 164
Working with Relations and Meta-Rules ................................................................................................. 164
About Working with Relations and Meta-Rules ................................................................................. 165
Search for and Display Relations ...................................................................................................... 165
Create Relations ...................................................................................................................... 167
Relation Meta - Rules ............................................................................................................... 168
Delete Relations ....................................................................................................................... 170
Delete Meta - Rules ................................................................................................................. 170
Importing and Exporting Model Types ..................................................................................................... 171
About Importing and Exporting Model Types .................................................................................... 171
Import Model Types Using the Model Type Editor ............................................................................ 171
Import Constraints .................................................................................................................... 172
Import Model Types ................................................................................................................. 172
Export Model Types Using the Model Type Editor ............................................................................ 173
Import and Export Model Types Using dbtool ................................................................................... 175
Send an Exported Catalog to a File or Printer .................................................................................. 175
Running Reports on Model Types and Relations .................................................................................... 175
Customizing 7
About Running Reports on Model Types and Relations ................................................................... 176
Customizing 8
Display Instanced Attribute Values in Separate Table Rows ............................................................ 214
Other Customizations in Tables ........................................................................................................ 215
Customize Alarm Table Row Colors ........................................................................................ 215
Set Up a Default Sort ............................................................................................................... 216
Customize the Port Name Column of the Interface Table ........................................................ 217
Sort Interfaces Table by ifIndex ............................................................................................... 218
Adding Support for Model Types or Model Classes ................................................................................ 220
Create a Registration ........................................................................................................................ 220
Register the Model Type or Model Class in custom-app-config.xml ........................................ 220
Define General OneClick Device Support Based on Model Class ........................................... 221
Define Specific OneClick Device Support Based on Model Type ............................................ 223
Define Model Appearance ........................................................................................................ 224
Configure Icons for OneClick Themes .............................................................................................. 225
Using the <theme-config> Element to Create Icon Appearance .............................................. 227
Design On-Page and Off-Page Reference Icons .............................................................................. 227
Use <on-page> and <off-page> Elements ............................................................................... 229
Define the Icon Shape .............................................................................................................. 230
Define Pipe Connection Location ............................................................................................. 233
Define Image Components ...................................................................................................... 234
Create an Icon Label ......................................................................................................................... 238
The default-iconlabel-config.xml File ........................................................................................ 239
Adjust Icon Label Background Width ....................................................................................... 241
Default Label Width Settings .................................................................................................... 241
Create Fixed Width Icon Labels ............................................................................................... 241
Define Text Components .................................................................................................................. 242
Define Selection Components ........................................................................................................... 242
Define Model Icon Tooltips ................................................................................................................ 245
Customizing a Model's Information View ................................................................................................. 247
Extend or Modify an Information View .............................................................................................. 249
Create an Information Configuration File .......................................................................................... 250
Define the Header .................................................................................................................... 251
Define the Subview .................................................................................................................. 252
Define a Subview Group .......................................................................................................... 261
Associate an Information Configuration File with a Model Class or Model Type .............................. 262
Creating a Model's Performance View .................................................................................................... 263
Create a New Performance View ...................................................................................................... 264
Create a Performance Data Configuration File ........................................................................ 265
Create a Performance View Configuration File ........................................................................ 267
Customize an Existing Performance View ........................................................................................ 269
Creating Custom Privileges ..................................................................................................................... 271
Define a Custom Privilege ................................................................................................................. 271
Restrict Access to Attribute Values in Model Subviews ........................................................... 274
Customizing 9
Group Privileges ....................................................................................................................... 274
Reference a Privilege When Defining a Menu Item, Column, or Subview ........................................ 275
XML Usage Common to All Customization Files ..................................................................................... 276
About Parameters ............................................................................................................................. 276
Acquire Data -- Render a Value ............................................................................................... 277
Customizing OneClick for CA Service Desk ............................................................................................ 289
Customizing 10
CA Spectrum - 10.2 and 10.2.1
Customizing
This section contains information about the following topics:
Modeling Gateway Toolkit (see page 12)
Model Type Editor (see page 107)
OneClick Customization (see page 177)
TL1 Gateway (see page 290)
03-Apr-2017 11/311
CA Spectrum - 10.2 and 10.2.1
The CA Spectrum Modeling Gateway toolkit lets integrators import and export network topology data
into and out of CA Spectrum. The toolkit includes a Document Type Definition (DTD) that defines XML
elements and attributes. The toolkit also includes a resource file that defines CA Spectrum syntax and
what information to import or export.
For a topology import, using the DTD elements, you can create an XML file that describes devices,
ports, and connections on your network. This XML file can create new topology data in CA Spectrum,
update existing data, or can destroy data that is no longer correct. Additionally, the elements and
attributes that are used in the XML syntax can be expanded and customized to suit the needs of most
integrations.
The toolkit also lets you use comma-delimited ASCII text files to import Frame Relay or ATM
connections. You can also import this connection information using the XML functionality that was
mentioned previously.
Once the network topology data exists in CA Spectrum, you can manage these devices like any other
models that are created manually or by Discovery. You can view the results of the import, as well as
any diagnostic information about each import.
The Modeling Gateway toolkit also lets you export topology information and configuration settings
from CA Spectrum using an XML file. The information can then be imported into a specified
SpectroSERVER through the Modeling Gateway.
Populating CA Spectrum with dynamic network topology information on an ongoing basis was
previously a difficult task. Discovery and manual modeling are not suited to the constant updates
necessary in a changing environment. Modeling connectivity using Discovery can also be a challenge
with various physical infrastructures, such as those found in these environments:
Frame Relay
Wireless Devices
03-Apr-2017 12/311
CA Spectrum - 10.2 and 10.2.1
1. Import the relevant comma-delimited ASCII text/ XML file, using the Modeling Gateway
Toolkit.
2. Navigate to Explorer View > WLC Manager > Information Tab > Configuration sub-view >
Access Point Discovery: and then click Run.
All existing access points (APs) will be created under their corresponding WLC Device(s).
03-Apr-2017 13/311
CA Spectrum - 10.2 and 10.2.1
Can use UNIX or Windows to navigate through the file system, copy and delete files, as well as,
create and edit text files.
Import Architecture
For an import, during the import integration process you take data from the third-party database and
create an input file. Depending on the content, this input file can be an XML file or a comma-
delimited ASCII file. The XML input file gives you the widest range of import options and is the main
focus of this section. The comma-delimited file lets you create connections for Frame Relay and ATM
circuits.
When creating an XML input file, work with the provided Document Type Definition (DTD) file and
the .modelinggatewayresource.xml file. The DTD defines the XML elements, attributes, and their
associated syntax rules. The .modelinggatewayresource.xml file shows which CA Spectrum model
types and attributes are available for use. This file relates the CA Spectrum model type names and
attribute names with the unique hexadecimal identifier that CA Spectrum uses for that model type or
attribute. The .modelinggatewayresource.xml file can be customized to suit the needs of your specific
integration.
Once you create the first input file, it can act as a template for multiple data sets representing the
same type of input. For example, you can create an XML file for importing devices and can use this
file repeatedly by substituting the device-specific topology data.
The modelinggateway tool is a command-line utility that reads the network topology information
from the input file and sends the data to the SpectroSERVER database. With the data from the XML
file, the import tool can create, destroy, and update connections, devices, and container models. The
tool can also be used to export data from CA Spectrum.
The CA Spectrum Modeling Gateway also provides mechanisms to verify the safety and accuracy of
each database import. For example, it can maintain an audit trail that includes a record of each
creation, deletion, association, and update made. You can view information about the import within
OneClick. CA Spectrum reports the error by generating an event when any type of critical failure
occurs during the import process. All errors and their possible causes are logged in an error log file.
You can also turn on a debug log which can help you locate the source of problems or inaccuracies.
The following illustration shows how the Modeling Gateway uses an XML file for importing data. The
data flows from the third-party database and is formatted in the XML file using the DTD and .
modelinggatewayresource.xml for syntax purposes. The import tool then interprets the XML file and
sends data into CA Spectrum through the CA Spectrum CORBA interface.
03-Apr-2017 14/311
CA Spectrum - 10.2 and 10.2.1
The following illustration shows how the Modeling Gateway uses a comma-delimited ASCII text file to
import Frame Relay and ATM connection information.
Modeling Gateway uses a comma-delimited ASCII text file to import Frame Relay and ATM connection
information
Export Architecture
For export, using the SpectroSERVER as a resource, Modeling Gateway can export topology and
configuration data into an XML file. This XML file can then be integrated with a third-party tool or
reimported into another SpectroSERVER. For example, the file can be reimported for a CA Spectrum
partition or landscape handle change.
Spectrum modelling gateway can export Global Collections and Services without any errors even if
they have any duplicate names, as the modelling gateway uses model handle to uniquely identify
them.
03-Apr-2017 15/311
CA Spectrum - 10.2 and 10.2.1
To import third-party topology data into CA Spectrum using Modeling Gateway, perform these tasks:
Note: Do not use Modeling Gateway to migrate models from one version of CA
Spectrum to another. The methodology that is used to identify and model an entity
can differ between CA Spectrum versions. Therefore, do not use Modeling Gateway
to import any XML files that are exported from a different version of CA Spectrum.
03-Apr-2017 16/311
CA Spectrum - 10.2 and 10.2.1
To understand the elements that create an XML input file, be familiar with the process CA Spectrum
uses to model a network infrastructure. The following section provides an overview of this process
and discusses how it applies to the XML elements used in an XML input file. If you are comfortable
with these concepts, you can skip this section and can go to XML Input File Syntax (see page 19):
Hierarchical Views
A view in CA Spectrum is a way to organize data so it can be displayed or manipulated. The
hierarchical views represent ways to structure your network data. When structuring your network
data in the XML file, you choose from elements that represent each of the hierarchical views. The
two types of hierarchical views are Topology and Location.
Topology View
The Topology view is really an abstraction of networking components. When working with this view,
you represent the physical or logical components of your network and group these components with
logical connectivity in mind. You can also choose to represent connections graphically using pipes
that show how devices are connected at the port or device level. In OneClick, this view appears as the
Universe topology.
Location View
The Location view organizes your network data by physical location. Using this view, you can depict
your network in terms of geography. You can start with your global offices. Then, go right to the
wiring closet on each floor of each building in each region where your offices are located. In OneClick,
this view appears as the World topology.
03-Apr-2017 17/311
CA Spectrum - 10.2 and 10.2.1
Note: For more information about the topology views available in OneClick, see the
Modeling and Managing Your IT Infrastructure (https://docops.ca.com/display/CASP102
/Modeling+and+Managing+Your+IT+Infrastructure).
Intelligent model types can be instantiated to represent actual devices that operate on the network.
They have IP and MAC addresses, and CA Spectrum can communicate directly with these devices
using SNMP. Container model types are instantiated into models that are primarily used to group
models together.
Models can be grouped based on the type of hierarchical view being used. For example, you can use
the Topology view to create a LAN model that groups certain devices on a segment of your network.
Or, you can use the Location view to create a Room model that groups the devices together in one
room of your building.
A container model can contain other container models, intelligent models, or both, depending on the
specific model type. For example, a network container model could contain an intelligent model to
represent a router. The network container model could also contain a LAN container model to
represent a range of IP addresses. On the other hand, a Building model can only contain container
models; for example, a Floor, a Section, or a Room.
The elements in the DTD let you depict your network topology using any of the hierarchical views and
their respective container model types. You can also use any of the instantiable intelligent model
types. Intelligent model types are not dependent on the type of hierarchical view used.
Note: You can specify the model handle rather than the model type to identify a model, if
desired. When specifying a model handle, Modeling Gateway ignores any other model
identifiers, and it uses only the model handle to identify the model.
Not all model types that are defined in the CA Spectrum knowledge base can actually be
used to create a model in OneClick. Some are used as base model types from which other
model types are derived.
03-Apr-2017 18/311
CA Spectrum - 10.2 and 10.2.1
Modeling Methods
Two methods are used to model devices in CA Spectrum. The first method is to use the IP address or
the DNS name of the device. With this information, CA Spectrum contacts the device and creates a
model using the model type that best represents the functionality of the device.
The second method is to provide a model type for the device model creation. You still must provide
an IP address or a DNS name so CA Spectrum can communicate with the device. However, your
chosen model type or model handle is instantiated regardless of the CA Spectrum assessment of the
device functionality.
To create a nondevice model, like a container model, a model type and model name must
be provided for the import.
CA Spectrum Attributes
Each model type has a set of associated attributes. Each attribute describes the model type in some
way. The attributes in an instantiated model take on values that reflect the device that the model
represents and describe the current state of the model. For example, the model type Host_Sun has
the attribute IPAddress. If a model of the type Host_Sun is instantiated, the value of this attribute
reflects the IP address of the device that the model represents.
XML syntax also uses the term attribute. The XML attributes describe more information about an
element. In CA Spectrum Modeling Gateway XML syntax, some XML attributes are used to give value
to CA Spectrum attributes.
Note: Attributes that CA Spectrum defines are referred to as CA Spectrum attributes; the
generic XML attributes are referred to simply as attributes.
Note: The following explanations and examples do not cover all the attributes of each
element. For a complete reference on each element and its attributes, see Document Type
Definition Elements.
03-Apr-2017 19/311
CA Spectrum - 10.2 and 10.2.1
Root Element
The elements that are defined in the DTD exist in a hierarchical structure that parallels the network
representation within CA Spectrum. The root element that must be used with each XML import file is
the Import element. XML syntax rules specify that the root element is the outermost element and
denotes the beginning and end of the XML file. Therefore, the Import element surrounds the rest of
the XML elements that are used in your document.
Model-Oriented Elements
The model-oriented elements define physical or logical components of your network. They are
container-type elements that are used to create models which define logical ways of grouping
network elements. Grouping is based on the type of CA Spectrum hierarchical view they are in. Each
of these container-type elements can exist in one of the specific hierarchical views.
Topology_Container
Location_Container
Device
Schedule
Port
Connection
GenericView_Container
03-Apr-2017 20/311
CA Spectrum - 10.2 and 10.2.1
Topology_Container
The Topology_Container element creates a model that groups other models according to physical
or logical topology. The Topology_Container element creates container models, so use the
model_type attribute or a model handle to identify the specific container you want to use. An
enumeration of possible model_type values is in the DTD. A LAN is an example of a
Topology_Container model_type value. You specify the name of the Topology_Container using
the name attribute. The name and model_type attributes uniquely identify the created model. If
you specify a model handle, the name and model_type attributes are ignored.
Topology_Containers can contain other Topology_Container elements, devices, or connections.
The Topology_Container models are always placed in the OneClick Topology view.
Note: By default, the name and model_type attributes give values to the CA Spectrum
attributes Model_Name and Modeltype_Name. However, you can change which CA
Spectrum attribute the name attribute gives value to by editing the .
modelinggatewayresource.xml file. Whatever new CA Spectrum attribute is chosen (along
with the model type) is used to identify uniquely the container. This change lets two
containers have the same model name.
Location_Container
The Location_Container element groups other models according to physical or geographical
location. A Building and a Room are both examples of Location_Container element model type
values. The Location_Container element creates container models, so use the model_type
attribute or a model handle to identify the specific container you want to use. An enumeration of
possible model_type values is in the DTD. You specify the name of the Location_Container using
the name attribute. The name and model_type attributes uniquely identify the created model. If
you specify a model handle, the name and model_type attributes are ignored.
Note: By default, the name and model_type attributes give values to the CA Spectrum
attributes Model_Name and Modeltype_Name. However, you can change which CA
Spectrum attribute the name attribute gives value to by editing the .
modelinggatewayresource.xml file. Whatever new CA Spectrum attribute is chosen (along
with the model type) is used to identify uniquely the container. This change lets two
containers have the same model name.
Device
The Device element defines a device on the network. This element is used with other elements to
create, update, or destroy an instance of a device model in CA Spectrum. When working with an
SNMP device, provide a valid and unique IP address or DNS name to identify uniquely the device
using the ip_dnsname attribute. This unique identification lets CA Spectrum communicate with
the device and select the most appropriate model type, which is based on the device
functionality. Set the ip_dnsname to a valid string. If ip_dnsname is invalid or not contactable, the
device model creation can fail. If model_type is provided with an invalid or noncontactable
ip_dnsname, a device model is still created with the specified model type. However, the device
model is not activated to provide any valid network information or status. Possible model_type
values for devices are enumerated in the .modelinggatewayresource.xml file.
03-Apr-2017 21/311
CA Spectrum - 10.2 and 10.2.1
Schedule
The Schedule element defines when a device model is put into maintenance mode. When a
device model is in maintenance mode, management traffic to the device and its components is
suspended. Suspending traffic prevents CA Spectrum from generating any events or alarms on the
device model while you are performing maintenance on the device.
Port
Ports are automatically created for a device when you create the device model. The Port element
lets you modify some CA Spectrum port attribute values, or specify a port-level connection. You
can specify different kinds of ports, including a Frame Relay or ATM circuit. To identify the port on
the device, provide the values for the identifier_name and identifier_value attributes. The
possible values for identifier_name are enumerated in the DTD. The identifier_value is the value
of the identifier that the identifier_name attribute chooses. A Port element must always be
specified as a child of a Device element.
Connection
The Connection element defines a physical or logical connection between two devices, including
WAN link connections, and therefore must contain two Device child elements. If a Port element is
specified in the Device element, the connection is resolved on the specified port for that device. If
the Device element does not specify a Port element, CA Spectrum Discovery tries to determine
the ports in the connection to be resolved.
GenericView_Container
To create a container model in a Generic view, use the GenericView_Container element. Both the
GenericView and GenericView_Container elements are used to create a customized view.
Therefore, as the integrator, you decide when or how to use this container.
Task-Oriented Elements
The rest of the elements that are defined in the DTD are task-oriented elements. These elements and
their attributes help define the type of action the input file generates. Using them, you can create
new topology information, update, overwrite, or delete existing topology information. An individual
input file can use zero or one of each of these elements, except for the Connection element. You can
use as many Connection elements as necessary.
Topology
Location
GenericView
Connection
Update
Destroy
03-Apr-2017 22/311
CA Spectrum - 10.2 and 10.2.1
The task-oriented elements define what action you would like to take with your XML file. Use the
Topology and Location elements when you would like to create new network topology data in CA
Spectrum. These elements define the hierarchical view where you would like to create the data. You
can then use the corresponding model elements as child elements to create models for the network
entities. To customize a view for your specific integration needs, use the GenericView element.
The following example creates a Site container in the Location view and a device within that
container.
The Import element is the root element and is always contained in the input file.
The Location element indicates that you are creating models in the Location view.
The Location_Container element creates a container model. This model is a logical component rather
than a physical component of the network. Therefore, CA Spectrum cannot contact it and cannot
define the model type using an IP address or a DNS name. To indicate the type of container model to
create, provide a value for the model_type attribute and name attribute. Possible model_type
attribute values are listed in the DTD and in the following section: Location_Container. The name
attribute is required and must specify a unique name for the model.
Note: When you specify a model handle, the model handle is used to identify the container
model. Therefore the name and model_type attributes are ignored, if provided.
The Device element creates a model inside the Site Location_Container model. The ip_dnsname
attribute is a required attribute for the Device element. If a device can be contacted, CA Spectrum
uses the IP Address or the DNS name to find the device.
For a complete reference of these elements and their possible attributes, see Document Type
Definition Elements.
03-Apr-2017 23/311
CA Spectrum - 10.2 and 10.2.1
Using the hierarchy and syntax rules that are outlined in the DTD, you can accurately express the
physical and logical connectivity of your network.
This example creates a LAN container in the Topology view and a device within that container.
The Import element is the root element and is always contained in the input file.
The Topology element indicates that you are going to create models in the Topology view.
The Topology_Container element creates a container model. This model is a logical component
rather than a physical component of the network. Therefore, CA Spectrum cannot contact it and
cannot define the model type using an IP address or a DNS name. To indicate the type of container
model to create, provide a value for the model_type attribute and name attribute. The possible
model_type attribute values are listed in the DTD and in the following section: Topology_Container.
The name attribute is required and must specify a unique name for the model. The other attributes
that are specified are optional.
Note: When you specify a model handle, the model handle is used to identify the container
model. Therefore the name and model_type attributes is ignored, if provided.
03-Apr-2017 24/311
CA Spectrum - 10.2 and 10.2.1
The Device element creates a model inside the LAN Topology_Container model. The ip_dnsname
attribute is a required attribute for the Device element. If CA Spectrum can contact the device, the IP
Address or the DNS name is used to find the device. When CA Spectrum locates the device, it
determines the appropriate model type to use to create the model.
Remember that some attributes have default values. For example, the default value of the attribute
community_string is public. Therefore, when you specify a Device element attribute and value to
represent device A, we recommended that you specify it in any other Device element that represents
device A. Doing so _helps ensure that a default value for that attribute is not used to override the
previously specified value.
In the following example, device 10.253.9.16 is created in the Topology and Location views. You can
see that the attributes and values that are used to describe the device is the same for both views.
03-Apr-2017 25/311
CA Spectrum - 10.2 and 10.2.1
Note: For more information about Discovery, see the Modeling and Managing Your IT
Infrastructure (https://docops.ca.com/display/CASP102
/Modeling+and+Managing+Your+IT+Infrastructure).
Specifying the connectivity between devices lets CA Spectrum isolate faults to the device, but
specifying port-level connections is preferred. The port-level connections are a finer grade of
connectivity, allowing CA Spectrum to resolve the connections and analyze faults at the port level. CA
Spectrum automatically attempts to determine the ports when you specify a connection between
two devices but you do not specify one or both ports that are used in the connection. If this process is
successful, CA Spectrum resolves the connection to the port level.
CA Spectrum generates an error indicating a connection failure when both of these conditions apply:
CA Spectrum is unable to determine both ports that are used in the connection.
If CA Spectrum can determine only one of the ports, then the connection is resolved only to the port
level on one side of the connection. The other side remains resolved to the device level.
If both devices are unmanageable devices, CA Spectrum establishes the connection at the device
level.
The following example creates a connection between two existing ports, each port belonging to a
03-Apr-2017 26/311
CA Spectrum - 10.2 and 10.2.1
The following example creates a connection between two existing ports, each port belonging to a
different device. The Connection element identifies both the Port and Device elements to be linked.
The connection is resolved at the port level for both devices because a Port element is specified
within each Device element.
The previous example specifies a connection between the DLCI ports. Because the value of the
identifier_name attribute is frCircuitTableInstance, the port is identified using the OID instance value
from the frCircuitTable object in the MIB. The OID instance value is specified using the
identifier_value attribute.
Important! Modeling Gateway does not report an error when you attempt to import an
XML file that contains multiple Connection elements using the same Port element. A single
port cannot have multiple connections. If the same port is specified in multiple Connection
elements, the last Connection element in the XML file overrides all the previous
Connection elements specifying that port.
<Connection>
<Device ip_dnsname=10.253.9.18/>
<Device ip_dnsmame=10.253.9.100 model_type="WA_Link">
</Connection>
Modeling Gateway automatically creates a WA_Segment. The link is created between the segment
and the device or devices. To specify a connection between a second device and the link, add a
second connection tag to the import file.
03-Apr-2017 27/311
CA Spectrum - 10.2 and 10.2.1
When CA Spectrum imports the XML file, models are sent to the Lost and Found under these
conditions:
The models exist either directly in the view you are importing into or in the subcontainer of that
view.
This behavior is useful when synchronizing the data in your third-party database with the data in CA
Spectrum.
In the following example, complete_topology is set to true within the Topology element. Except for
models that are specified in this input file, all existing models in the Topology view would be sent to
the Lost and Found. With this sample input file, only two models are specified:
If these models did not exist, they would be created. If they existed, CA Spectrum would update their
CA Spectrum attribute values using the attribute values in the input file. Any other model existing in
the Topology view (except for the VNM) would be sent to the Lost and Found.
03-Apr-2017 28/311
CA Spectrum - 10.2 and 10.2.1
If the complete_topology attribute was used in the Topology_Container element instead of the
Topology element, CA Spectrum would remove only unspecified models from that
Topology_Container down through the hierarchy.
Update Information
To update CA Spectrum attribute and association information for existing models, use the Update
element. The Update element can enclose Container elements, Device elements, and Association
elements. The value of Port attributes is updated using the appropriate Device element.
Example: Update Attributes for Two Different Models and Create an Association
The following example shows an Update input file. In this case, two attributes for two separate
models are updated and an association is created between the two models.
The first updated attribute is the model_name attribute of the LAN container model. The model
name is changed from Sample to newLAN. Note the use of the following attributes: name and
model_name. Both of these attributes exist to change the CA Spectrum attribute Model_Name. To
identify the container model and then specify the new name of the container model using the
model_name attribute, use the name attribute with the current name as the value.
Next, the example changes the value of the poll interval for the device from Test1 to 1108. Assigning
a new value to the poll_interval attribute overwrites the old value.
This example also creates an association of relation 0x10002 between container model "Net" of the
Network model type and device model 172.24.94.94, as long as both models exist on the
SpectroSERVER.
Destroy Information
Use the Destroy element to delete container models, device models, connections, and associations.
When you destroy a device, all port and application models that are associated with the device are
also destroyed.
03-Apr-2017 29/311
CA Spectrum - 10.2 and 10.2.1
In the following example, the LAN topology container named newLAN is destroyed. All models within
this container are sent to the Lost and Found, unless they are specified to be destroyed. This example
also destroys a connection between two devices, Test1 and Test2, which is specified at the port level.
If a Collects association exists between the container model "Net" of model type Network and device
172.24.94.94, it is destroyed.
Important! To destroy a model representing a device that has already been removed from
the network, use the IP address of the device rather than the DNS name when specifying
the ip_dnsname attribute of the Device in the Destroy element of an XML file. Once the
device has been removed from the network, the DNS entry for that device no longer exists.
And, the Modeling Gateway cannot identify the appropriate model to delete.
Many of the attributes that are defined in the DTD correspond to CA Spectrum attributes. CA
Spectrum attributes are uniquely identified in CA Spectrum using a hexadecimal number. The .
modelinggatewayresource.xml file does not use these hexadecimal values in the DTD or in the XML
file. Instead, the file pairs the hexadecimal identifiers of the CA Spectrum attributes with more
intuitive text-based names.
03-Apr-2017 30/311
CA Spectrum - 10.2 and 10.2.1
Both the ModelType element and the Attribute element of the .modelinggatewayresource.xml file
can be customized.
Note: The .modelinggatewayresource.xml file is also used for exporting topology data from
CA Spectrum. For more information, see Export Topology Data from CA Spectrum (see page
37).
The following example shows how you would modify the XML file to set the character encoding to
Greek:
You can specify that a live pipe is created in OneClick to represent the connection. Multiple
connections can be specified in the same input file.
03-Apr-2017 31/311
CA Spectrum - 10.2 and 10.2.1
Note: The device models that are involved in these connections must previously exist in CA
Spectrum.
Device_IP
Specifies the IP address of each device that is involved in the connection. Required.
OID
Specifies the OID instance of frCircuitTable, atmVclTable, or atmVplTable to specify the circuit link
on the device.
CircuitName
(Optional) Specifies the name of the circuit involved.
CircuitID
(Optional) Specifies the ID of the circuit involved.
Pipe
(Optional) Has two possible values: CREATE_PIPE or NO_CREATE_PIPE. If the value is set to
CREATE_PIPE, live pipes are created between the connections specified. If the value is set to
NO_CREATE_PIPE, live pipes are not created between the connections specified. If no value is
specified for this parameter, a default value of CREATE_PIPE is assumed.
The following example shows an input file that specifies the connection between two Frame Relay
circuits. A live pipe is created between these two ports.
Windows
03-Apr-2017 32/311
CA Spectrum - 10.2 and 10.2.1
Solaris/Linux
-vnm vnm_name
Specifies the SpectroSERVER host name.
- i import_file
Specifies the XML file name which contains the necessary input information (that is compiled with .
modelinggateway.dtd.)
Note: If you are importing from multiple files, specify the files names that are enclosed in
comma-separated {} brackets. For example, refer to the syntax sample for importing
multiple files.
-o outputfile
(Optional) Logs the error information to the file named in the outputfile parameter.
Note: If you don't specify the debug/output file names, the error information is logged to a
file named import_file.log;where, Import_file is the name of the XML file.In case of multiple
imports, the debug/output files are appended and you can see consolidated logs.
-debug debugfile
(Optional) Indicates that you would like to create a debugging output file during the import process.
When using the -debug option, you can provide your own debug file name for output. If you do not
supply a value for debugfile, the debug file name defaults to the import_file name suffixed with ".
debug."
Note: The -debug option requires disk space on the machine where Modeling Gateway is
run. For example, a large debugging output file can result when the number of models in
the import_file is large or when the device models have large interface densities.
To run the modelinggateway tool for importing multiple files, use the following syntax:
03-Apr-2017 33/311
CA Spectrum - 10.2 and 10.2.1
To run the modelinggateway tool for importing multiple files, use the following syntax:
ImportConfiguration Element
To control certain aspects of how Modeling Gateway imports data, use the ImportConfiguration
element.
<ImportConfiguration
do_not_process_pre_existing_devices_under_container_node = "false"
import_to_primary_ss_only = "false"
max_device_creation_threads = "50"
/>
do_not_process_pre_existing_devices_under_container_node
Specifies whether CA Spectrum processes devices that are found under a container element
which previously exist in CA Spectrum.
Default: false
import_to_primary_ss_only
Specifies whether Modeling Gateway connects to the secondary SpectroSERVER when the
primary SpectroSERVER is down.
Default: false
max_device_creation_threads
Specifies how many device models can be created and activated simultaneously.
Note: Setting this value to an amount higher than 50 can result in too much SNMP traffic.
Default: 50
03-Apr-2017 34/311
CA Spectrum - 10.2 and 10.2.1
4. Click Import, locate the comma-delimited file containing the data that you want to import into
CA Spectrum, and then click Open.
OneClick imports the data. The Import Results dialog appears, providing you with information
about the success of the import.
The CA Spectrum Modeling Gateway provides mechanisms to help ensure the safety and accuracy of
each database import. CA Spectrum Modeling Gateway maintains an audit trail that includes a record
of each creation, deletion, association, and update made. You can view data about the import within
OneClick and you can also track information about import problems in the error and debug logs.
4. Review the table in the Modeling Gateway section for information about recent imports. The
table contains the following information:
Import File
Displays the name of the import file.
Log File
Displays the name of the log file.
Start Time
Indicates when the topology import process began.
End Time
Indicates when the topology import process completed.
Progress
The progress field shows the status of a topology import that has not yet finished. The
possible values for this field are:
Initializing
Identifying Models
Creating Models
03-Apr-2017 35/311
CA Spectrum - 10.2 and 10.2.1
Creating Models
Activating Models
Mapping Connectivity
Placing Models
Creating Connections
Updating Models
Destroying Models
Complete
Disconnected
Errors
Displays the number of errors that are generated during the import process.
Models Created
Displays the number of models that are created during the import process.
Models Destroyed
Displays the number of models that are eliminated during the import process.
Models Updated
Displays the number of models that are updated during the import process.
Connections Created
Displays the number of connections that are created during the import process.
Connections Removed
Displays the number of connections that are removed during the import process.
5. Click the Max Records set link to modify the number of import files that are listed in the table.
6. Click any of the table column headers to sort the data as needed.
7. Enter text in the Filter field to restrict the import data to specific criteria.
Error Log
All errors and their possible causes are logged in an error log file. By default, the import tool creates
an error log named <nameofimportfile>.log where <nameofimportfile> is the name of your import
file. You can also specify a particular name for your log file using the syntax that is specified in the
section on the import tool. When the import is complete, the log file appears in the SS-Tools
03-Apr-2017 36/311
CA Spectrum - 10.2 and 10.2.1
section on the import tool. When the import is complete, the log file appears in the SS-Tools
directory. The log file records the number of successful creations, deletions, and updates of models
and connections. The log file also records each single failure that occurred during the importing
process.
Layout for each view in the Universe topology, including annotations and zoom information but
excluding background images.
User models and the entire user scheme such as user-related relations, attributes, and models
like LicenseRole, AccessGroup, PrivilegeRole, and UserGroup.
Discovery configurations.
Static and dynamic global collections including all the models in each global collection, all dynamic
collection criteria, zoomed list, grouped list, and topology layout.
03-Apr-2017 37/311
CA Spectrum - 10.2 and 10.2.1
Note: You do not need to use the DTD for exporting data; the DTD is used only for
importing data.
The attributes that are exported for devices, containers, and ports are defined in the following
elements respectively: DeviceExportAttributes, ContainerExportAttributes, and PortExportAttributes.
Add and subtract attributes from these elements as needed.
For example, the following element controls the attributes that are exported for the LostFound
model:
Important! The modeling information of the devices which are in the "LostFound" folder
are not exported.
ExportConfiguration Element
To control export behavior, use the ExportConfiguration element in the .modelinggatewayresource.
xml file.
<ExportConfiguration
export_devices = "true"
export_containers = "true"
03-Apr-2017 38/311
CA Spectrum - 10.2 and 10.2.1
export_port_attributes = "true"
export_links = "true"
export_topology_layout = "true"
export_annotation = "true"
export_WA_Link_models = "true"
export_spectrum_settings = "true"
export_user_models = "true"
export_service_modeling = "true"
export_schedules = "true"
export_global_collections = "true"
export_discovery_configs = "true"
export_from_primary_ss_only = "false"
export_policy_manager = "true"
/>
export_devices
Exports device models.
export_containers
Exports container models.
export_port_attributes
Exports port attributes.
export_links
Exports device links.
export_topology_layout
Exports device and container models' x,y coordinates in the topology.
export_annotation
Exports the annotations and model group information.
export_WA_Link_models
Exports WA_Link models. If you decide not to export WA_Link models, they are treated as
transparent. Wide area links between two device models are exported as a direct link.
export_spectrum_settings
Exports CA Spectrum settings such as the settings for fault isolation, Discovery, and VNM control.
export_user_models
Exports user models, user licenses, user privileges, user preferences, and all other user-related
relations attributes and models.
export_servicemodeling
Exports service management schemes and attributes.
Note: For more information about Service Manager, see Service Manager (https://docops.ca.
com/display/CASP102/Service+Manager).
03-Apr-2017 39/311
CA Spectrum - 10.2 and 10.2.1
export_schedules
Exports the schedules.
export_global_collections
Exports static and dynamic global collections including all the models in each global collection, all
dynamic collection criteria, zoomed list, grouped list, and topology layout.
export_discovery_configs
Exports the Discovery configurations.
export_from_primary_ss_only
Specifies whether Modeling Gateway connects to the secondary SpectroSERVER when the
primary SpectroSERVER is down.
export_policy_manager
Exports the Policy Manager policies. All related models, policies, rules, permissions, and
templates are included.
Example:
The following example exports everything except for port attribute information. This example also
tells Modeling Gateway not to connect to the secondary SpectroSERVER when the primary is down.
<ExportConfiguration
export_devices = "true"
export_containers = "true"
export_port_attributes = "false"
export_links = "true"
export_topology_layout = "true"
export_annotation = "true"
export_WA_Link_models = "true"
export_spectrum_settings = "true"
export_user_models = "true"
export_service_modeling = "true"
export_schedules = "true"
export_global_collections = "true"
export_discovery_configs = "true"
export_from_primary_ss_only = "true"
export_policy_manager = "true"
/>
Windows
03-Apr-2017 40/311
CA Spectrum - 10.2 and 10.2.1
Solaris/Linux
-vnm vnm_name
Specifies the name of the SpectroSERVER host.
-cmdb
(Optional) Exports the contents of your SpectroSERVER in a format that can be used when
integrating CA Spectrum with CA CMDB. For more information on implementing this integration,
contact CA Support.
-e export_file
Exports CA Spectrum topology data.
-o outputfile
(Optional) Logs the error information to the file named in the outputfile parameter. If this option
is not used, the error information is logged to a file named export_file.log. Export_file is the name
of the XML file.
-debug debugfile
(Optional) Indicates that you would like to create a debugging output file during the export
process. When using the -debug option, you can provide your own debug file name for output. If
you do not supply a value for debugfile, the debug file name defaults to the export_file name
suffixed with .debug.
Note: The -debug option requires disk space on the machine where Modeling Gateway is run. The
number of models in the export_file affects the size of the debugging output file: the greater the
number of models in the database, the larger the debug file produced.
Note: To run the modelinggateway tool on another server, move the modelinggateway
tool and all of its support files to that server. For more information, see the Distributed
SpectroSERVER Administration (https://docops.ca.com/display/CASP102
/Distributed+SpectroSERVER+Administration).
To export CA Spectrum topology data, use the -e flag. For example, running the following command
exports the data from the SpectroSERVER on NOC1_Spectrum into a Modeling Gateway formatted
xml file named NOC1_data.xml:
03-Apr-2017 41/311
CA Spectrum - 10.2 and 10.2.1
To import from a Modeling Gateway formatted XML file, use the -i flag. For example, running the
following command imports the data from NOC1_data.xml into the SpectroSERVER at
NOC2_Spectrum.
03-Apr-2017 42/311
CA Spectrum - 10.2 and 10.2.1
Association
Syntax
Parent Elements:
Update
Destroy
Child Elements:
Left_Model
Right_Model
Rules: The Association element must contain one Left_Model element and one Right_Model
element.
Usage
If the Association element is used as a child of the Destroy element, the association that is specified is
destroyed. If the Association element is used as a child of the Update element, the association that is
specified is created.
Attributes
relation
Specifies the name or handle of the CA Spectrum relation between the Left_Model and
Right_Model in this association.
Connection
Syntax
03-Apr-2017 43/311
CA Spectrum - 10.2 and 10.2.1
Parent Elements:
Topology
Topology_Container
Update
Destroy
Usage
The Connection element specifies a connection between two devices. The Connection element must
always contain two device elements and each of these Device elements can contain zero or one Port
element. If a port or ports are specified, the connection is resolved at the port level. If a port or ports
are not specified, Discovery is triggered to find the port or ports for the connection.
If the Connection element is used as a child of the Destroy element, the connection that is specified is
destroyed. If the connection is used in any other context, the connection is created.
Attributes
create_pipe
Indicates whether a graphical representation of the specified connection is shown in OneClick.
Default: True
Correlation
Syntax
Rule: The Correlation element can contain any number of child elements.
Usage
The Correlation element represents a Correlation Manager model and is used with the CA Spectrum
Service Manager. See Service Manager (https://docops.ca.com/display/CASP102/Service+Manager) for
usage details.
Attributes
None.
03-Apr-2017 44/311
CA Spectrum - 10.2 and 10.2.1
Correlation_Domain
Syntax
Child Elements:
Device
Port
Model_Attr
GenericView_Container
Rule: The Correlation_Domain element can contain any number of child elements.
Usage
The Correlation_Domain element is used with the CA Spectrum Service Manager. See Service
Manager (https://docops.ca.com/display/CASP102/Service+Manager) for usage details.
Attributes
CustomerManager
Syntax
Child Elements:
SM_Customer
SM_CustomerGroup
Rule: The CustomerManager element can contain any number of these child elements.
Usage
The CustomerManager element is used with the CA Spectrum Service Manager. See Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) for usage details.
Attributes
03-Apr-2017 45/311
CA Spectrum - 10.2 and 10.2.1
Attributes
Destroy
Syntax
Child Elements:
Topology_Container
Location_Container
GenericView_Container
Device
Model
Connection
EventModel
SM_Service
SM_AttrMonitor
SM_LatencyMon
SM_ConnectMon
SM_SLA
SM_Guarantee
SM_Customer
03-Apr-2017 46/311
CA Spectrum - 10.2 and 10.2.1
Association
Rule: The Destroy element can contain as many of each of these child elements as necessary.
Usage
Use the Destroy element to remove container models, device models, connections, and associations.
You cannot nest elements in the Destroy element to express hierarchies or destroy hierarchies. The
only hierarchy that is allowed in the Destroy element is the Connection-Device-Port hierarchy, which
specifies at the port level the connection to destroy. You could destroy a container model without
destroying the device models or other container models that are contained inside it. In this case, the
remaining models are placed in the CA Spectrum Lost and Found.
Attributes
Device
Syntax
Parent Elements:
Topology
Location
Topology_Container
Left_Model
Right_Model
Location_Container
GenericView
GenericView_Container
Connection
Update
Destroy
SM_Service
SM_AttrMonitor
Child Elements:
Port
03-Apr-2017 47/311
CA Spectrum - 10.2 and 10.2.1
Schedule
Rules:
Port: If a Device element is contained within a Connection element, only one port element is
allowed. If a Device element in contained within an Update element to update ports, more than
one port element is allowed. The ports are ignored when a Device element is contained in a View,
a Container, or a Destroy element.
Usage
To create, destroy, or update a device model, use the Device element. The Device element lets you
define the device model using ether an IP address or a DNS name.
Note: If community_string and agent_port attributes are not provided during the device
creation, CA Spectrum creates the device using the predefined SNMP credentials. These
credentials are configured in the Modeling and Protocol Options section of the
AutoDiscovery Control subview in the VNM model Information tab in OneClick.
Attributes
ip_dnsname
Specifies the IP address or DNS name of the device. If the device does not support SNMP
communication, you can use a unique string here with model_type specified.
secdomain_ipname
(Optional) Specifies the IP address of a host running an SDConnector in the secure domain where
the device is located.
Default: 0.0.0.0
model_handle
(Optional) Specifies the model_handle to identify an existing device model.
model_type
(Optional) The CA Spectrum model type that is used to model your device. This device model can
be any intelligent model type that is defined in the .modelinggatewayresource.xml file.
Note: If you have provided a valid IP address or DNS name, you do not need to specify a
value here.
community_string
03-Apr-2017 48/311
CA Spectrum - 10.2 and 10.2.1
community_string
(Optional) The community string of the device.
Note: If community_string is not included, CA Spectrum uses the first SNMP Community
Strings value to create the device. These values are specified in the VNM model
Information tab, AutoDiscovery Control subview, Modeling and Protocol Options subview
in OneClick.
agent_port
(Optional) Controls the port number that is used when communicating with the SNMP agent of a
device.
Note: If agent_port is not included, CA Spectrum uses the first SNMP Ports value to create
the device. These values are specified in the VNM model Information tab, AutoDiscovery
Control subview, Modeling and Protocol Options subview in OneClick.
is_managed
(Optional) Puts the device model in maintenance mode, when set to true.
Default: True
poll_interval
(Optional) Specifies the time interval, in seconds, that the SpectroSERVER reads all attributes of
the device model that are flagged as POLLED.
log_ration
(Optional) Specifies the number of SpectroSERVER polls of a device that occur before logging the
poll results in the database.
poll_status
(Optional) Lets you disable the SpectroSERVER polls of a device by setting the polling status to
false.
model_name
(Optional) Specifies the name of the model.
DeviceType
(Optional) Specifies the device type of the model.
reconfig
03-Apr-2017 49/311
CA Spectrum - 10.2 and 10.2.1
discover_connections
(Optional) Runs Discovery on any newly created device models to map automatically the model
connectivity, when set to true.
EventModel
Syntax
Parent Element:
Topology_Container
Left_Model
Right_Model
Rule: N/A
Usage
To import the EventModel models for use with a Southbound Gateway integration, use the
EventModel element. For more information about Southbound Gateway, see the Southbound
Gateway Toolkit (https://docops.ca.com/display/CASP102/Southbound+Gateway+Toolkit).
Attributes
model_name
Specifies the unique name of the model that is instantiated or identified.
unique_id
Specifies the identifier that is used to define uniquely the event source that this EventModel
model represents. For more information, see the Southbound Gateway Toolkit (https://docops.ca.
com/display/CASP102/Southbound+Gateway+Toolkit).
model_handle
(Optional) Specifies the model_handle to identify an existing device model.
Security_String
(Optional) Specifies the security string for the EventModel.
Default: public
manager_name
(Optional) Specifies the name of the third-party application that is using the Southbound Gateway.
Note: Use the default value for any application that is not listed here.
Default: 0
1
NetMentor
03-Apr-2017 50/311
CA Spectrum - 10.2 and 10.2.1
2
SSM
3
Omni2000
GenericView
Syntax
Child Elements:
GenericView_Container
Device
Rule: The GenericView element can contain any number of these child elements.
Usage
To create a customized hierarchical view other than the Topology view and Location view, use the
GenericView element. You can modify this element to meet the needs of your integration.
Attributes
containment_relation
Specifies a relation handle that defines which CA Spectrum relation defines the containment
relationship within this view.
Limits: Must be a CA Spectrum containment relation.
model_type
Specifies a model type that represents the top container model that is defined for this view. This
model_type must be specified with its model handle in the .modelinggatewayresource.xml file.
name
Specifies the unique name of the instantiated container model highest in the GenericView
hierarchy.
complete_topology
(Optional) Destroys any unspecified, existing container and device model in the GenericView view
when set to true. Also, destroys these models in the subcontainers of that view.
GenericView_Container
Syntax
03-Apr-2017 51/311
CA Spectrum - 10.2 and 10.2.1
Child Elements:
GenericView_Container
Device
Rule: The GenericView_Container element can contain any number of child elements.
Usage
To create a container model in the Generic view, use the GenericView_Container element. Both the
GenericView and GenericView_Container elements are used to create a customized view. Therefore,
as the integrator, you decide when or how to use this container.
Attributes
name
Specifies the name of the model that is instantiated or identified. The model_type and the name
attribute are required to identify uniquely the GenericView_Container. By default, this attribute is
used to set the value of the CA Spectrum model name attribute (attr id 0x1006e). However, this
attribute can be changed to any other attribute in the .modelinggatewayresource.xml file. You
can change the .modelinggatewayresource.xml so that the name maps to a different attribute. In
this case, that new attribute (along with the model type) is used to identify the container. This
behavior lets two containers have the same model name.
model_type
Specifies the CA Spectrum model type that is used to create the model. This model_type must be
specified with its model handle in the .modelinggatewayresource.xml file. The model_type and
the name attribute are required to identify uniquely the GenericView_Container.
containment_relation
(Optional) The name of the CA Spectrum relation that exists between the Generic_Container and
the models within the container. If no value for this attribute is specified, the containment
relationship of the parent model is inherited.
GlobalCollection
Syntax
Parent Element: Import
Child Elements:
Device
Topology_Container
Location_Container
Usage
03-Apr-2017 52/311
CA Spectrum - 10.2 and 10.2.1
Attributes
name
Specifies a name for this global collection.
containment_relation
Specifies a relation handle that defines which CA Spectrum relation defines the containment
relationship within this view.
Default: "GlobalCollect"
collectionDescription
(Optional) Describes the global collection.
Security_String
(Optional) Specifies the security string for the global collection.
Import
Syntax
Child Elements:
Topology
Location
GenericView
Update
Destroy
SM_Service_Mgt
Correlation
GlobalCollection
Rule: The Import element can contain one of each of these child elements.
Usage
The Import element is the root element, and it must be included in each input file.
Attributes
03-Apr-2017 53/311
CA Spectrum - 10.2 and 10.2.1
model_activation_time
Specifies the maximum number of minutes that are allowed for each device model activation.
Data Type: Character
Default: 5 minutes
Left_Model
Syntax
Child Elements:
Device
Port
Topology_Container
Location_Container
EventModel
Model
Rules: The Left_Model element can contain only one child element.
Usage
Attributes
None.
List_Value
Syntax
Rule: N/A
Usage
Attributes
03-Apr-2017 54/311
CA Spectrum - 10.2 and 10.2.1
Attributes
None.
Location
Syntax
Child Elements:
Location_Container
Device
Rule: The Location element can contain any number of child elements.
Usage
To specify that you would like to create models in the Location view (World topology) of OneClick,
use the Location element.
Attributes
complete_topology
(Optional) When set to true, any unspecified, existing containers and device models in the
Location view, or any subcontainers, are destroyed during the import.
Default: False
Data Type: Boolean
Location_Container
Syntax
Parent Elements:
Location
Location_Container
Left_Model
Right_Model
GlobalCollection
Child Elements:
Location_Container
03-Apr-2017 55/311
CA Spectrum - 10.2 and 10.2.1
Device
Rule: The Location_Container element can contain any number of child elements.
Usage
To create or specify a Location_Container model that is used to group models and other location
containers in the Location view, use the Location_Container element.
Attributes
name
The name of the model that is instantiated or identified. The model_type and the name attribute
are required to identify uniquely the Location_Container.
By default, this attribute is used to set the value of the CA Spectrum model name attribute (attr id
0x1006e). However, this attribute can be changed to any other attribute in the .
modelinggatewayresource.xml file. You can change the .modelinggatewayresource.xml so that
the name maps to a different attribute. In this case, that new attribute (along with the model
type) is used to identify the container. This behavior lets two containers have the same model
name.
model_type
Indicates the type of model you want to create. The model_type and the name attribute are
required to identify uniquely the Location_Container. Possible values include:
Country
Region
Site
Building
Floor
Section
Room
model_handle
(Optional) Can be used to identify models. If you provide a model_handle, the values of name and
model_type are ignored.
Security_String
(Optional) Defines the requirements for access to a model by CA Spectrum users. Each security
string consists of one or more Security Community entries and is assigned to models.
model_name
(Optional) To change the name of the model, use the name and the model_name attributes. The
name attribute specifies the old name and the model_name attribute specifies the new name.
model_modify_author
(Optional) Writes data to the CA Spectrum attribute mdl_modfy_athr.
03-Apr-2017 56/311
CA Spectrum - 10.2 and 10.2.1
complete_topology
(Optional) When set to true, any unspecified, existing containers and device models in the
Location view, or any subcontainers, are destroyed during the import.
Default: False
Model_Attr
Syntax
Rule: The Model_Attr element can contain any number of child elements.
Usage
To specify CA Spectrum attributes whose values contain multiple lines of text or a list of values, use
the Model_Attr element.
Attributes
attr_id
Indicates the CA Spectrum attribute ID of the attribute you are specifying.
Data Type: Character
Model 1
Syntax
Parent Elements:
Left_Model
Right_Model
Usage
Attributes
name
Specifies a name for this model.
model_type
Specifies the model type of this model.
model_handle
03-Apr-2017 57/311
CA Spectrum - 10.2 and 10.2.1
model_handle
(Optional) Specifies a model_handle for this model. If a model_handle value is specified, the
name and model_type values are ignored.
MonitorPolicy_Attr
Syntax
Parent Element:
SM_Service
SM_AttrMonitor
Rule: N/A
Usage
The MonitorPolicy_Attr element is used with the CA Spectrum Service Manager. See Service Manager
(https://docops.ca.com/display/CASP102/Service+Manager) for usage details.
Attributes
None.
Port
Syntax
Parent Elements:
Device
Left_Model
Right_Model
Correlation_Domain
SM_Service
SM_AttrMonitor
Rule: N/A
Usage
03-Apr-2017 58/311
CA Spectrum - 10.2 and 10.2.1
The Port element is used to specify connections at the port level or to update port attributes. When
updating, the parent Device element is contained within an Update element. When specifying a
connection, the parent device element is contained within a Connection element.
Attributes
identifier_name
Works with the identifier_value attribute to identify uniquely the port. The identifier_name can
be any one of the MIB OID names that are listed in the Possible Values column. The portID value
can be used to identify a port by its Component_OID attribute (0x1006a). If the Port element
represents a Frame Relay virtual circuit, use frCircuitTableInstance. If the Port element represents
an ATM virtual channel or path link, use atmVclTableInstance.
The portID value can be used to identify a port by its Component_OID attribute (0x1006a). If the
Port element represents a Frame Relay virtual circuit, use frCircuitTableInstance.If the Port
element represents an ATM virtual channel or path link, use atmVclTableInstance. Possible values
include:
ifIndex
ipAddress
ifPhysAddress
ifName
ifAlias
model_name
portDescription
portID
frCircuitTableInstance
atmVclTableInstance
atmVplTableInstance
identifier_value
Specifies the value of the identifier_name selection.
model_handle
(Optional) Specifies the model_handle to identify an existing model.
Note: If you provide a model_handle, the values for identifier_name and identifier_value are
ignored.
ip_dnsname
(Optional) Specifies the IP address or DNS name of the port model. If the port model does not
support SNMP communication, you can use a unique string here with model_type specified.
model_name
(Optional) Specifies the name of the model you are updating.
03-Apr-2017 59/311
CA Spectrum - 10.2 and 10.2.1
circuit_id
(Optional) Identifies the circuit that is involved in an ATM or Frame Relay connection by ID.
circuit_name
(Optional) Identifies the circuit that is involved in an ATM or Frame Relay connection by name.
log_ratio
(Optional) Specifies the number of port model polls that occur before logging the poll results in
the database.
poll_interval
(Optional) Specifies the time interval, in seconds, that the SpectroSERVER reads all attributes of
the port model that is flagged as POLLED.
poll_status
(Optional) Lets an administrator disable port model polls by setting polling status to False.
Right_Model
Syntax
Child Elements:
Device
Port
Topology_Container
Location_Container
EventModel
Model
Rules: The Right_Model element can contain only one child element.
Usage
Attributes
None.
RTM_Test
Syntax
03-Apr-2017 60/311
CA Spectrum - 10.2 and 10.2.1
Syntax
Parent Elements:
SM_Service
SM_AttrMonitor
Rule: N/A
Usage
The RTM_Test element is used with the CA Spectrum Service Manager. See the Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
Schedule
Syntax
Usage
To create a maintenance mode schedule for a particular device model, use the Schedule element.
Attributes
name
Specifies the name of the schedule.
SCHED_Recurrence
Specifies how often the device model is put into maintenance mode.
1
Always (24x7)
03-Apr-2017 61/311
CA Spectrum - 10.2 and 10.2.1
2
Daily
3
Weekly
4
Monthly
5
Yearly
Default: 1
SCHED_Start_Hour
(Optional) Specifies the hour that the device goes into maintenance mode.
Limits: 0-23
SCHED_Start_Minute
(Optional) Specifies the minute the device goes into maintenance mode.
Limits: 0-59
SCHED_Start_DoW
(Optional) Specifies the day of the week the device goes into maintenance mode.
0
Sunday
1
Monday
2
Tuesday
3
Wednesday
4
Thursday
5
Friday
6
Saturday
SCHED_Start_DoM
(Optional) Specifies the day of the month the device goes into maintenance mode.
Limits: 1-31
SCHED_Start_Month
(Optional) Specifies the month that the device goes into maintenance mode.
03-Apr-2017 62/311
CA Spectrum - 10.2 and 10.2.1
0
January
1
February
2
March
3
April
4
May
5
June
6
July
7
August
8
September
9
October
10
November
11
December
SCHED_Duration
(Optional) Specifies the length of time the device is in maintenance mode, which is defined in
seconds.
Default: 0
SCHED_Recurrence_Multiplier
(Optional) Specifies the number of recurrence units (days, weeks, months, years) that determine
the length of time between the start of each scheduled maintenance mode.
Default: 1
SCHED_Daily_Repeat_Limit
(Optional) Specifies the number of consecutive days to repeat the scheduled maintenance
(specified by SCHED_Start_Hour and SCHED_Start_Minute) during each recurrence period. This
attribute is only applicable to a weekly, monthly, or yearly recurrence.
03-Apr-2017 63/311
CA Spectrum - 10.2 and 10.2.1
SM_AttrMonitor
Syntax
Rules: N/A
Usage
The SM_AttrMonitor element is used with the CA Spectrum Service Manager. See the Service
Manager (https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
SM_Customer
Syntax
Parent Elements:
SM_CustomerGroup
CustomerManager
Rule: N/A
Usage
03-Apr-2017 64/311
CA Spectrum - 10.2 and 10.2.1
Usage
The SM_Customer element is used with the CA Spectrum Service Manager. See the Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
03-Apr-2017 65/311
CA Spectrum - 10.2 and 10.2.1
SM_CustomerGroup
Syntax
Parent Elements:
CustomerManager
SM_CustomerGroup
Child Elements:
SM_CustomerGroup
SM_Customer
Rule: The SM_CustomerGroup element can contain any number of these child elements.
Usage
The SM_CustomerGroup element is used with the CA Spectrum Service Manager. See the Service
Manager (https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
SM_Guarantee
Syntax
03-Apr-2017 66/311
CA Spectrum - 10.2 and 10.2.1
Rule: N/A
Usage
The SM_Guarantee element is used with the CA Spectrum Service Manager. See the Service Manager
(https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
SM_LatencyMon
Syntax
Parent Elements:
SM_Guarantee
SM_AttrMonitor
SM_Service
Child Elements:
Topology_Container
MonitorPolicy_Attr
03-Apr-2017 67/311
CA Spectrum - 10.2 and 10.2.1
MonitorPolicy_Attr
Rule: The SM_LatencyMon element can contain any number of these child elements.
Usage
The SM_LatencyMon element is used with the CA Spectrum Service Manager. See the Service
Manager (https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
SM_Service
Syntax
Parent Elements:
SM_Service
SM_ServiceMgr
Child Elements:
SM_Service
SM_AttrMonitor
Rule: The SM_Service element can contain any number of these child elements.
Usage
The SM_Service element is used with the CA Spectrum Service Manager. See the Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
03-Apr-2017 68/311
CA Spectrum - 10.2 and 10.2.1
Attributes
SM_Service_Mgt
Syntax
Child Elements:
SM_ServiceMgr
CustomerManager
SM_SLA_Mgr
Rule: Only a single instance of each of these child elements can exist in SM_Service_Mgt.
Usage
The SM_Service_Mgt element is used with the CA Spectrum Service Manager. See the Service
Manager (https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
03-Apr-2017 69/311
CA Spectrum - 10.2 and 10.2.1
SM_ServiceMgr
Syntax
Rule: The SM_ServiceMgr element can contain any number of this child element.
Usage
The SM_ServiceMgr element is used with the CA Spectrum Service Manager. See the Service Manager
(https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
SM_SLA
Syntax
Rule: The SM_SLA element can contain any number of this child element.
Usage
The SM_SLA element is used with the CA Spectrum Service Manager. See the Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
03-Apr-2017 70/311
CA Spectrum - 10.2 and 10.2.1
Attributes
SM_SLA_Mgr
Syntax
Rule: The SM_SLA_Mgr element can contain any number of this child element.
Usage
The SM_SLA_Mgr element is used with the CA Spectrum Service Manager. See the Service Manager (
https://docops.ca.com/display/CASP102/Service+Manager) section for usage details.
Attributes
Topology
Syntax
Child Elements:
03-Apr-2017 71/311
CA Spectrum - 10.2 and 10.2.1
Child Elements:
Topology_Container
Device
Connection
Rule: The Topology element can contain any number of these child elements.
Usage
To create models in the OneClick Topology view (Universe topology), use the Topology element.
Attributes
complete_topology
Destroys any unspecified, existing container and device model in the Topology view during the
import when set to true. Also, destroys any subcontainers of that view.
Default: False
discover_connections
When set to true, Discovery runs on any newly created device models to map automatically the
connectivity of the model.
Default: False
Topology_Container
Syntax
Parent Elements:
Topology
Topology_Container
SM_Service
SM_AttrMonitor
Child Elements:
Topology_Container
Device
EventModel
Connection
Rule: The Topology_Container element can contain any number of these child elements.
Usage
03-Apr-2017 72/311
CA Spectrum - 10.2 and 10.2.1
Usage
To create or specify a Topology_Container model that is used to group models and other topology
containers in the Topology view, use the Topology_Container element. Possible model types are
listed in the following table in the model_type section.
Attributes
model_type
Indicates the type of model you want to create. The model_type and the name attribute are
required to identify uniquely the Topology_Container.
Network
LAN
IPClassA
IPClassB
IPClassC
LAN_802_3
LAN_803_5
EventAdmin
ATM_Network
model_handle
(Optional) Can be used to identify existing models. If you provide a model_handle, the
values of model_type and model_name are ignored.
Security_String
(Optional) Specifies the assigned CA Spectrum security level for the model.
subnet_address
(Optional) Specifies the subnet address of the device.
subnet_mask
(Optional) Specifies the mask that determines what subnet the device IP address belongs to.
model_name
(Optional) Specifies a model name for the container model.
trapIPAddress
(Optional) For the EventAdmin models only.
03-Apr-2017 73/311
CA Spectrum - 10.2 and 10.2.1
x_coordinate
(Optional) Specifies the x coordinate of the model in the topology.
y_coordinate
(Optional) Specifies the y coordinate of the model in the topology.
complete_topology
(Optional) When set to True, any unspecified, existing container and device model in this
Topology_Container and, any subcontainers, are destroyed during the import.
Default: False
discover_connections
(Optional) Specifies whether CA Spectrum discovers and models devices that are connected to
this model.
Update
Syntax
Child Elements:
Topology_Container
Location_Container
GenericView_Container
Connection
Device
Model
EventModel
SM_Service
SM_AttrMonitor
SM_LatencyMon
SM_ConnectMon
SM_SLA
SM_Guarantee
SM_Customer
Association
03-Apr-2017 74/311
CA Spectrum - 10.2 and 10.2.1
Association
Rule: The Update element can contain any number these child elements.
Usage
To update attributes for any device, container, or port subelements, use the Update element.
Note: The hierarchical specifications are not allowed when using this element, except for
using the Port element within the Device element.
Attributes
None.
Note: The following code might not be the latest version of this file. For the latest version
of the DTD, use the actual file that shipped with your Modeling Gateway toolkit. The file is
located in the SS-Tools directory and is named .modelinggateway.dtd.
03-Apr-2017 75/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 76/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 77/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 78/311
CA Spectrum - 10.2 and 10.2.1
ifIndex |
ipAddress |
ifPhysAddress |
ifName |
ifAlias |
portID |
frCircuitTableInstance |
atmVclTableInstance |
atmVplTableInstance ) #REQUIRED
identifier_value CDATA #REQUIRED
model_handle CDATA #IMPLIED
ip_dnsname CDATA #IMPLIED
model_type CDATA #IMPLIED
model_name CDATA #IMPLIED
circuit_id CDATA #IMPLIED
circuit_name CDATA #IMPLIED
log_ratio CDATA #IMPLIED
poll_interval CDATA #IMPLIED
poll_status (false | true) #IMPLIED >
<!-- ********************************************************************** -->
<!-- Represents a Schedule model -->
<!-- -->
<!-- SCHED_Recurrence can have the following values -->
<!-- -->
<!-- 1 = Always (24 x 7) -->
<!-- 2 = Daily -->
<!-- 3 = Weekly -->
<!-- 4 = Monthly -->
<!-- 5 = Yearly -->
<!-- 6 = Once -->
<!-- -->
<!-- SCHED_Start_Hour: value range 0-23 -->
<!-- SCHED_Start_Minute: value range 0-59 -->
<!-- SCHED_Start_DoW: Day of the week (range 0-6 where Sunday is 0) for -->
<!-- Weekly recurrence -->
<!-- SCHED_Start_DoM: Day of the month (range 1-31) for Monthly and Yearly -->
<!-- recurrence -->
<!-- SCHED_Start_Month: range 0-11 where January is 0 for Yearly -->
<!-- recurrence -->
<!-- SCHED_Duration: active period duration in seconds. May be 0 (default) -->
<!-- SCHED_Recurrence_Multiplier: number of recurrence units that -->
<!-- determine the length of time between the -->
<!-- start of each active period. -->
<!-- Default is 1. -->
<!-- SCHED_Daily_Repeat_Limit: number of consecutive days to repeat a -->
<!-- daily schedule (specified by -->
<!-- SCHED_Start_Hour and SCHED_Start_Minute) -->
<!-- at the start of each recurrence period. -->
<!-- Only applicable tp Weekly, Monthly or -->
<!-- Yearly recurrence. -->
<!-- SCHED_DayBitMask: The days of the week on which a WEEKLY Schedule -->
<!-- should be ACTIVE. Values are: -->
<!-- Sunday = 1, -->
03-Apr-2017 79/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 80/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 81/311
CA Spectrum - 10.2 and 10.2.1
SM_AttrMonitor |
SM_LatencyMon |
SM_ConnectMon |
SM_SLA |
SM_Guarantee |
SM_Customer |
Association
)* ) >
03-Apr-2017 82/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 83/311
CA Spectrum - 10.2 and 10.2.1
<!ATTLIST Model_Attr
attr_id CDATA #REQUIRED >
<!-- *********************************************************** -->
<!-- List_Value is used for SPECTRUM list attribute values. -->
<!-- -->
<!-- Each List_Value conatins a PCDATA and serves for one -->
<!-- instance value for the list attribute. -->
<!-- *********************************************************** -->
<!ELEMENT List_Value ( #PCDATA ) >
<!-- ********************************************************** -->
<!-- Service Level Management topology elements. -->
<!-- ********************************************************** -->
<!ELEMENT CustomerManager ( SM_Customer |
SM_CustomerGroup
)*>
<!ATTLIST CustomerManager
name CDATA #IMPLIED
containment_relation ( Groups_Customers ) #IMPLIED
model_type ( CustomerManager ) #IMPLIED
>
<!ELEMENT SM_ServiceMgr ( SM_Service )*>
<!ATTLIST SM_ServiceMgr
name CDATA #IMPLIED
containment_relation ( SlmContains ) #IMPLIED
model_type ( SM_ServiceMgr ) #IMPLIED
>
<!ELEMENT SM_SLA_Mgr ( SM_SLA )*>
<!ATTLIST SM_SLA_Mgr
name CDATA #IMPLIED
containment_relation ( SlmContainsSLAs ) #IMPLIED
model_type ( SM_SLA_Mgr ) #IMPLIED
>
<!ELEMENT SM_Service_Mgt ( CustomerManager |
SM_ServiceMgr |
SM_SLA_Mgr
)*>
<!ATTLIST SM_Service_Mgt
name CDATA #IMPLIED
containment_relation ( SlmHasServiceComponent ) #IMPLIED
model_type ( SM_Service_Mgt ) #IMPLIED
>
<!-- The Correlation element represents the root model Correlation_Manager -->
<!-- (0x10469). It can only contain Correlation_Domain elements, and has -->
<!-- no attributes. All Correlation_Domains will be related to the -->
<!-- Correlation Manager by the CORRELATES relation. -->
<!-- Since Correlation_Manager is a unique model, this element does not -->
<!-- actually cause the SpectroSERVER to create a model. It represents -->
<!-- a pre-existing model. -->
<!ELEMENT Correlation ( Correlation_Domain )*>
<!-- The Correlation_Domain can contain any number of Devices, Ports, -->
<!-- Model_Attrs, or GenericView_Containers. They will all be related -->
<!-- to the Correlation_Domain by the CORRELATES relation. Correlation_ -->
<!-- Domains also have no attributes. -->
03-Apr-2017 84/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 85/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 86/311
CA Spectrum - 10.2 and 10.2.1
<!ATTLIST SM_AttrMonitor
name CDATA #REQUIRED
containment_relation ( SlmMonitors |
SlmWatchesContainer ) #IMPLIED
is_managed (true | false) #IMPLIED
AttrToWatch CDATA #IMPLIED
MonitorPolicy_ID CDATA #IMPLIED
Generate_Service_Alarms (true | false) #IMPLIED
model_type ( SM_AttrMonitor ) #IMPLIED
>
<!ELEMENT MonitorPolicy_Attr ( #PCDATA ) >
<!ELEMENT SM_SLA ( SM_Service |
SM_Guarantee |
Schedule
03-Apr-2017 87/311
CA Spectrum - 10.2 and 10.2.1
)*>
<!-- ********************************************************************** -->
<!-- Represents a SM_Guarantee model -->
<!-- -->
<!-- SLAControl can have the following values -->
<!-- -->
<!-- 0 = Inactive -->
<!-- 1 = Active -->
<!-- -->
<!-- ********************************************************************** -->
<!ATTLIST SM_SLA
name CDATA #REQUIRED
containment_relation ( SlmHasGuarantee |
SlmGuarantees |
SlaPeriod ) #IMPLIED
is_managed (true | false) #IMPLIED
SLA_Control ( 0 | 1 ) #IMPLIED
SLA_ExpirationDate CDATA #IMPLIED
SLA_Notes CDATA #IMPLIED
SLA_Description CDATA #IMPLIED
Security_String CDATA #IMPLIED
model_type ( SM_SLA ) #IMPLIED
>
<!ELEMENT SM_Guarantee ( SM_Service |
SM_AttrMonitor |
SM_LatencyMon |
SM_ConnectMon |
Schedule
)*>
<!-- ********************************************************************** -->
<!-- Represents a SM_Guarantee model -->
<!-- -->
<!-- GuaranteeControl can have the following values -->
<!-- -->
<!-- 0 = Inactive -->
<!-- 1 = Active -->
<!-- -->
<!-- GuranteeType can have the following values -->
<!-- -->
<!-- 0 = Availability -->
<!-- 1 = Performance -->
<!-- 2 = Mean Time To Repair -->
<!-- 3 = Maximum Outage Time -->
<!-- -->
<!-- ServiceHealthType can have the following values -->
<!-- -->
<!-- 1 - Down -->
<!-- 2 - Degraded -->
<!-- -->
<!-- ********************************************************************** -->
<!ATTLIST SM_Guarantee
name CDATA #REQUIRED
containment_relation ( SlmIsMeasuredBy |
03-Apr-2017 88/311
CA Spectrum - 10.2 and 10.2.1
SlmSchedulesGuarantee ) #IMPLIED
is_managed (true | false) #IMPLIED
GuaranteeControl ( 0 | 1 ) #IMPLIED
GuaranteeType ( 0 | 1 | 2 | 3 ) #REQUIRED
ServiceHealthType ( 1 | 2 ) #IMPLIED
WarningThreshold CDATA #IMPLIED
WarningThresholdPercent CDATA #IMPLIED
ViolationThreshold CDATA #IMPLIED
ViolationThresholdPercent CDATA #IMPLIED
GuaranteeNotes CDATA #IMPLIED
GuaranteeDescription CDATA #IMPLIED
model_type ( SM_Guarantee ) #IMPLIED
MOT_Threshold CDATA #IMPLIED
MTTR_Threshold CDATA #IMPLIED
MTBF_Threshold CDATA #IMPLIED
>
<!ELEMENT SM_LatencyMon ( Topology_Container |
MonitorPolicy_Attr )*>
<!ATTLIST SM_LatencyMon
name CDATA #REQUIRED
containment_relation ( SlmMonitors |
SlmWatchesContainer ) #IMPLIED
is_managed ( true | false ) #IMPLIED
DefaultMaxRTT CDATA #IMPLIED
DefaultMeasureInterval CDATA #IMPLIED
model_type ( SM_LatencyMon ) #IMPLIED
>
<!ELEMENT SM_CustomerGroup ( SM_CustomerGroup |
SM_Customer
)*>
<!ATTLIST SM_CustomerGroup
name CDATA #REQUIRED
containment_relation ( Groups_Customers ) #IMPLIED
model_type ( SM_CustomerGroup ) #IMPLIED
>
<!ELEMENT SM_Customer ( SM_Service |
SM_SLA |
)*>
<!-- ********************************************************************** -->
<!-- Represents a SM_Customer model -->
<!-- -->
<!-- Criticality can be one of the following -->
<!-- -->
<!-- 10 - Low -->
<!-- 15 - Medium Low -->
<!-- 20 - Medium -->
<!-- 25 - Medium High -->
<!-- 10 - High -->
<!-- -->
<!-- ********************************************************************** -->
<!ATTLIST SM_Customer
name CDATA #REQUIRED
containment_relation ( SlmAgreesTo |
03-Apr-2017 89/311
CA Spectrum - 10.2 and 10.2.1
SlmUses ) #IMPLIED
Security_String CDATA #IMPLIED
CustomerID CDATA #IMPLIED
Criticality CDATA #IMPLIED
CustomerField4 CDATA #IMPLIED
CustomerField5 CDATA #IMPLIED
CustomerField6 CDATA #IMPLIED
CustomerField7 CDATA #IMPLIED
Contact_Name CDATA #IMPLIED
Contact_Title CDATA #IMPLIED
Contact_Location CDATA #IMPLIED
Email_Address CDATA #IMPLIED
Phone_Number CDATA #IMPLIED
Mobile_Phone_Number CDATA #IMPLIED
Pager_Number CDATA #IMPLIED
Fax_Number CDATA #IMPLIED
User_Defined_1 CDATA #IMPLIED
User_Defined_2 CDATA #IMPLIED
User_Defined_3 CDATA #IMPLIED
User_Defined_4 CDATA #IMPLIED
Secondary_Contact_Name CDATA #IMPLIED
Secondary_Contact_Title CDATA #IMPLIED
Secondary_Contact_Location CDATA #IMPLIED
Secondary_Email_Address CDATA #IMPLIED
Secondary_Phone_Number CDATA #IMPLIED
Secondary_Mobile_Phone_Number CDATA #IMPLIED
Secondary_Pager_Number CDATA #IMPLIED
Secondary_Fax_Number CDATA #IMPLIED
Secondary_User_Defined_1 CDATA #IMPLIED
Secondary_User_Defined_2 CDATA #IMPLIED
Secondary_User_Defined_3 CDATA #IMPLIED
Secondary_User_Defined_4 CDATA #IMPLIED
model_type ( SM_Customer ) #IMPLIED
>
<!-- ********************************************************************** -->
<!-- Represents a GlobalCollection model -->
<!-- -->
<!-- ********************************************************************** -->
<!ELEMENT GlobalCollection (( Device |
Topology_Container |
Location_Container )*) >
<!ATTLIST GlobalCollection
name CDATA #REQUIRED
containment_relation CDATA "GlobalCollect"
collectionDescription CDATA #IMPLIED
Security_String CDATA #IMPLIED >
03-Apr-2017 90/311
CA Spectrum - 10.2 and 10.2.1
Note: The element names in each example are highlighted in bold. Making the names bold
makes the examples easier to read; it is not intended to imply formatting necessary for the
XML input file.
The complete_topology attribute of the Topology element is set to False. In this case, CA Spectrum
respects other models that previously exist in the Topology view. Consequently, this file only looks to
create models for entries that are listed in the XML file that are not already modeled. The models
that are created are placed in the Topology hierarchy as specified in the file. Models that previously
exist in the Topology hierarchy are not rediscovered but are moved to the container specified in the
file.
Note: When complete_topology is set to false, existing models that are in the container but
not listed in the import file are not sent to the Lost and Found. These models are sent to
Lost and Found when complete_topology is set to true.
03-Apr-2017 91/311
CA Spectrum - 10.2 and 10.2.1
subnet_mask="255.255.255.0">
<Device ip_dnsname="deadlock" />
<Device ip_dnsname="10.253.9.18" poll_interval="333" />
</Topology_Container>
</Topology_Container>
</Topology>
</Import>
03-Apr-2017 92/311
CA Spectrum - 10.2 and 10.2.1
<Port identifier_name="atmVclTableInstance"
identifier_value="5.0.17"/>
</Device>
</Connection>
<Connection>
<Device ip_dnsname="nmcss52-5">
<Port identifier_name="ifIndex" identifier_value="3"/>
</Device>
<Device ip_dnsname="10.253.9.17">
<Port identifier_name="ifPhysAddress"
identifier_value="0:4:27:C:91:C0"/>
</Device>
</Connection>
<Topology>
</Import>
The Update element contains a Location_Container element. This example updates the model name
by using the name and model_name attributes of the Location_Container element. The name
attribute is set equal to the current name and identifies the model to be updated. The model_name
attribute updates the value of the name attribute to Peace2.
The Update element also contains a Device element and Port element. The attributes identifer_name
and identifier_value are used to identify the port to be updated. The other attributes that are
specified are those attributes whose values are updated. The port model name is changed to port 2
and the poll_status is changed to False.
The Destroy element eliminates the device model deadlock. Any connections or ports that are
associated with deadlock are automatically destroyed. The Building container model Durham is also
eliminated. Any models that are contained within the Durham building container are sent to the Lost
and Found.
The Destroy element also removes the connection between the specified port on device nmcss52-5
and the specified port on nmcss52-3.
03-Apr-2017 93/311
CA Spectrum - 10.2 and 10.2.1
The first section of the XML file creates models and connections between these models in the
Topology view. The section begins with the Topology element, <Topology...>. The container and
device models are created first and then connections are established. This section ends when the
Topology element closes, </Topology>.
After the Topology element is closed, there is a section where another connection is created. This
section illustrates that you can create connections without nesting the Connection element within
the Topology element.
The next section of the file begins with the Location element, <Location...>. This section
demonstrates creating a container and device models in the Location view. This section ends when
the Location element closes, </Location>.
The next section begins with the Update element, <Update>. In this section, attribute values of a
container, a device, and a port are modified. You cannot know the current attribute values of each of
the elements that are represented by looking at the XML file. Therefore, it is not easy to discern
which elements are being updated. In general, each element contains an attribute that uniquely
identifies the model or port to be updated. The rest of the attributes are specified to update their
values. For example, the first element is the Location_Container element. The name attribute
uniquely identifies the model. The model_type attribute is specified to update its value, perhaps from
Region to Building. The only hierarchy that can be defined in the Update element is the Device/Port
03-Apr-2017 94/311
CA Spectrum - 10.2 and 10.2.1
Region to Building. The only hierarchy that can be defined in the Update element is the Device/Port
hierarchy that specifies the port you would like to update. This section ends when the Update
element closes, </Update>.
The last section of this file uses the Destroy element. The Destroy element eliminates:
The connection between the specified ports on device nmcss52-5 and the device at 10.253.9.17
03-Apr-2017 95/311
CA Spectrum - 10.2 and 10.2.1
<Device ip_dnsname="192.168.125.161"
model_type="GnSNMPDev"/>
</Topology_Container>
<Device ip_dnsname="172.19.57.92" />
<Device ip_dnsname="172.19.57.93" />
<Device ip_dnsname="10.253.32.225" model_type="M46_04"/>
<Connection>
<Device ip_dnsname="172.19.57.93">
<Port identifier_name= "frCircuitTableInstance"
identifier_value="4.161"/>
</Device>
<Device ip_dnsname="192.168.125.161">
<Port identifier_name ="frCircuitTableInstance"
identifier_value="2.161"/>
</Device>
</Connection>
<Connection create_pipe="false">
<Device ip_dnsname="10.253.32.101">
<Port identifier_name ="atmVclTableInstance"
identifier_value="3.1.52"/>
</Device>
<Device ip_dnsname="10.253.32.225">
<Port identifier_name ="atmVclTableInstance"
identifier_value="5.0.68"
circuit_name="ATM 68"
circuit_id ="ATM ID 68"/>
</Device>
</Connection>
<Connection>
<Device ip_dnsname="nmcss52-5">
<Port identifier_name="ifIndex"
identifier_value="1"/>
</Device>
<Device ip_dnsname="10.253.9.17">
<Port identifier_name="ipAddress"
identifier_value="10.253.8.18"/>
</Device>
</Connection>
</Topology>
<Connection>
<Device ip_dnsname="172.19.57.92">
<Port identifier_name="ifPhysAddress"
identifier_value="0:E0:63:7C:19:61"/>
</Device>
<Device ip_dnsname="10.253.9.17">
<Port identifier_name="ipAddress"
identifier_value="10.253.8.65"/>
</Device>
</Connection>
<!-- ************************************* -->
<!-- This part is for Location view import -->
<!-- ************************************* -->
<Location complete_topology="true">
03-Apr-2017 96/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 97/311
CA Spectrum - 10.2 and 10.2.1
Appendix D: .modelinggatewayresource.xml
This section contains a copy of the .modelinggatewayresource.xml file. However, this copy might not
be the latest version of this file. For the latest version, use the actual file that shipped with your
Modeling Gateway Toolkit.
03-Apr-2017 98/311
CA Spectrum - 10.2 and 10.2.1
Value_When_Orange = "0x1000d"
Value_When_Red = "0x1000e"
Value_When_Yellow = "0x1000c"
LatestErrorStatus = "456008c"
Response_Time = "456008c"
AttrToWatch = "0x12a43"
MonitorPolicy = "0x12a3e"
MonitorPolicy_ID = "0x12a51"
Generate_Service_Alarms = "0x12a66"
Special_Cause_List = "0x12b47"
Cause_List_Control = "0x12d50"
Contact_Status = "0x10004"
Port_Status = "0x10f1b"
RM_Condition = "0x12a40"
Service_Health = "0x12a40"
Criticality = "0x1290c"
Condition = "0x1000a"
Condition_Value = "0x1000b"
AccumulationMethod = "0x4500007"
GuaranteeControl = "0x4500022"
GuaranteeNotes = "0x4500021"
GuaranteeDescription = "0x12a4b"
GuaranteeType = "0x4500018"
ServiceHealthType = "0x4500019"
ViolationThreshold = "0x450001e"
ViolationThresholdPercent = "0x4500024"
WarningThreshold = "0x450001d"
WarningThresholdPercent = "0x4500023"
SCHED_Daily_Repeat_Limit = "0x1299a"
SCHED_Duration = "0x12993"
SCHED_Recurrence_Multiplier = "0x1299b"
SCHED_Recurrence = "0x12994"
SCHED_Start_DoM = "0x12991"
SCHED_Start_DoW = "0x12990"
SCHED_Start_Hour = "0x1298f"
SCHED_Start_Minute = "0x1298e"
SCHED_Start_Month = "0x12992"
SCHED_Start_Day = "0x129e4"
SCHED_DayBitMask = "0x129da"
SCHED_Start_Year = "0x129e3"
SCHED_Start_MoY = "0x12b48"
SCHED_Description = "0x12bbc"
SLA_Control = "0x4500015"
SLA_Notes = "0x4500017"
SLA_ExpirationDate = "0x4500025"
SLA_Description = "0x12a4b"
DefaultMaxRTT = "0x4500001"
DefaultMeasureInterval = "0x4500002"
CustomerID = "0x12a44"
CustomerField4 = "0x12a39"
CustomerField5 = "0x12a3a"
CustomerField6 = "0x12a3b"
03-Apr-2017 99/311
CA Spectrum - 10.2 and 10.2.1
CustomerField7 = "0x12a3c"
Contact_Name = "0x12a20"
Contact_Title = "0x12a21"
Contact_Location = "0x12a22"
Email_Address = "0x12a27"
Phone_Number = "0x12a23"
Mobile_Phone_Number = "0x12a24"
Pager_Number = "0x12a25"
Fax_Number = "0x12a26"
User_Defined_1 = "0x12a28"
User_Defined_2 = "0x12a29"
User_Defined_3 = "0x12a2a"
User_Defined_4 = "0x12a2b"
Secondary_Contact_Name = "0x12a2c"
Secondary_Contact_Title = "0x12a2d"
Secondary_Contact_Location = "0x12a2e"
Secondary_Email_Address = "0x12a33"
Secondary_Phone_Number = "0x12a2f"
Secondary_Mobile_Phone_Number = "0x12a30"
Secondary_Pager_Number = "0x12a31"
Secondary_Fax_Number = "0x12a32"
Secondary_User_Defined_1 = "0x12a34"
Secondary_User_Defined_2 = "0x12a35"
Secondary_User_Defined_3 = "0x12a36"
Secondary_User_Defined_4 = "0x12a37"
MOT_Threhold = "0x450002c"
MTBF_Threshold = "0x4500032"
MTTR_Thresshold = "0x450002f"
Policy_Name_List = "0x12a4a"
collectionDescription = "0x12a67"
/>
<!-- ******************************************* -->
<!-- SPECTRUM model type names and handles that -->
<!-- can be used in topology import XML file. -->
<!-- ******************************************* -->
<ModelTypes
Universe = "0x10091"
Network = "0x1002e"
Lan = "0x1002d"
IPClassA = "0x103d5"
IPClassB = "0x103d6"
IPClassC = "0x103d7"
LAN_802_3 = "0x1003c"
LAN_802_5 = "0x1003d"
ATM_NETWORK = "0xaa000f"
EventAdmin = "0x3dc0000"
GlobalCollection = "0x10474"
World = "0x10040"
Country = "0x10041"
Region = "0x10042"
Site = "0x10043"
Sector = "0x10044"
Building = "0x10045"
03-Apr-2017 100/311
CA Spectrum - 10.2 and 10.2.1
Section = "0x10046"
Floor = "0x10047"
Room = "0x10048"
Top_Org = "0x102cf"
Enterprise = "0x102d0"
Subsidiary = "0x102d1"
Division = "0x102d2"
Department = "0x102d3"
Org_Section = "0x102d4"
Work_Group = "0x102d5"
Org_Owns = "0x102da"
Schedule = "0x10456"
GnSNMPDev = "0x3d0002"
Fanout = "0x100ae"
Pingable = "0x10290"
WA_Link = "0x102e2"
Unplaced = "0x103d8"
RTM_Test = "0x4560000"
SM_Service = "0x1046f"
SM_AttrMonitor = "0x1046e"
SM_LatencyMon = "0x4500001"
SM_SLA = "0x4500002"
SM_Guarantee = "0x4500003"
SM_Customer = "0x1046c"
SM_CustomerGroup = "0x10477"
SM_ConnectMon = "0x4500000"
SM_ServiceMgr = "0x4500006"
CustomerManager = "0x10478"
SM_Service_Mgt = "0x4500007"
SM_SLA_Mgr = "0x4500008"
Correlation_Domain = "0x10467"
Correlation_Manager = "0x10469"
/>
<Relations
Collects = "0x10002"
MaintenenceScheduledBy = "0x10034"
SlmAgreesTo = "0x4500000"
SlmGuarantees = "0x4500001"
SlmHasGuarantee = "0x4500002"
SlmIsMeasuredBy = "0x4500003"
SlmMonitors = "0x4500004"
SlmOwns = "0x4500005"
SlmUses = "0x4500006"
SlmWatchesContainer = "0x4500007"
SlmContains = "0x4500008"
SlaPeriod = "0x4500009"
SlmSchedulesGuarantee = "0x450000c"
SlmHasServiceComponent = "0x450000a"
SlmContainsSLAs = "0x450000b"
Groups_Customers = "0x1003e"
GlobalCollect = "0x1003b"
/>
<!-- When do_not_process_pre_existing_devices_under_container_node -->
03-Apr-2017 101/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 102/311
CA Spectrum - 10.2 and 10.2.1
export_containers = "true"
export_port_attributes = "true"
export_links = "true"
export_topology_layout = "true"
export_annotation = "true"
export_WA_Link_models = "true"
export_spectrum_settings = "true"
export_user_models = "true"
export_service_modeling = "true"
export_schedules = "true"
export_global_collections = "true"
export_discovery_configs = "true"
export_from_primary_ss_only = "false"
export_policy_manager = "true"
/>
<!-- ******************************************************** -->
<!-- -->
<!-- RootContainerToExport specifies the root container in -->
<!-- SPECTRUM to be exported. -->
<!-- -->
<!-- ******************************************************** -->
<RootContainerToExport model_type="Universe" model_name=""/>
<!-- ******************************************************** -->
<!-- -->
<!-- DeviceExportAttributes is a list of device attributes to -->
<!-- be exported. If the attribute ID has not been specified -->
<!-- above, "attribute_id" has to be assigned. -->
<!-- -->
<!-- ******************************************************** -->
<DeviceExportAttributes>
<name/>
<model_type attribute_id="0x10000"/>
<community_string/>
<agent_port/>
<poll_interval/>
<is_managed/>
<poll_status/>
<Security_String/>
<TimeOut/>
<TryCount/>
<Criticality/>
<Value_When_Orange/>
<Value_When_Red/>
<Value_When_Yellow/>
<Redundancy_Admin_Status attribute_id="0x11d2c" />
<Auto_Reconfigure_Interfaces attribute_id="0x11dd4" />
<Discover_Connection_After_Linkup_Trap attribute_id="0x11d25" />
<Device_Discovery_After_Reconfiguration attribute_id="0x11d27" />
<Generate_Redundancy_Alarms attribute_id="0x11dd6" />
<Create_Sub_Interfaces attribute_id="0x11f3c" />
<Topology_Relocate_Model attribute_id="0x11a80" />
<Disable_Trap_Events attribute_id="0x11cd0" />
<Enable_Spectrum_Management attribute_id="0x1295d" />
03-Apr-2017 103/311
CA Spectrum - 10.2 and 10.2.1
</DeviceExportAttributes>
<!-- ******************************************************** -->
<!-- -->
<!-- ContainerExportAttributes are the container attributes -->
<!-- to be exported. If an attribute ID has not been yet -->
<!-- specified above, "attribute_id" has to be assigned. -->
<!-- -->
<!-- ******************************************************** -->
<ContainerExportAttributes>
<name/>
<Security_String/>
<subnet_address/>
<subnet_mask/>
<subnet_list/>
<Value_When_Orange/>
<Value_When_Red/>
<Value_When_Yellow/>
<SelectMP_port attribute_id="0x118e4" />
</ContainerExportAttributes>
<!-- ******************************************************** -->
<!-- -->
<!-- PortExportAttributes are the port attributes to be -->
<!-- exported. If an attribute ID has not been specified -->
<!-- above, "attribute_id" has to be assigned. -->
<!-- -->
<!-- When export_changed_attribute_only = "true", only the -->
<!-- port attribute whose value is not equal to the default -->
<!-- value will be exported. Otherwise, all specified port -->
<!-- attributes will be exported. -->
<!-- -->
<!-- ******************************************************** -->
<PortExportAttributes export_changed_attribute_only="true" >
<poll_interval/>
<poll_status/>
<ok_to_poll attribute_id="0x11dd8" />
<PollPortStatus attribute_id="0x1280a" />
<LockConnection attribute_id="0x129f1" />
<TimeOut/>
<TryCount/>
<is_managed/>
<Enable_Event_Creation/>
<Criticality/>
<Alarm_On_Link_Down_Trap attribute_id="0x11fc2" />
03-Apr-2017 104/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 105/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 106/311
CA Spectrum - 10.2 and 10.2.1
The section also discusses model type inheritance, which is an important concept to understand
before creating and modifying model types.
Important! Before using the Model Type Editor, read Certification (https://docops.ca.com
/display/CASP102/Certification). The Certification space provides information on the
GnSNMPDev management module. You can use GnSNMPDev to represent a SNMP-
compliant network device that lacks a corresponding CA Spectrum management module.
You can also use GnSNMPDev as a toolkit to create new management modules that include
new, supporting device model types and application model types.
03-Apr-2017 107/311
CA Spectrum - 10.2 and 10.2.1
The SpectroSERVER provides intelligence and contains models of the actual network devices and their
relationships -- models that continuously collect data about the entities they represent and
collectively provide a comprehensive management perspective of the network. Through polling, the
CA Spectrum database gains extensive information about network devices, their relationships, and
their performance.
The OneClick client application provides a multi-dimensional picture of the SpectroSERVER database.
Users can retrieve and view the information maintained in the SpectroSERVER database, and they
can invoke the SpectroSERVER to control objects on the network. Network information can be
presented from various perspectives, including topological or geographical views.
CA Spectrum deploys model types, models, attributes, relations, and meta-rules to monitor network
infrastructure. Model types are the templates used to create models, and models are specific
instances of a model type. (The terms "model type" and "template" are used interchangeably in CA
Spectrum documentation.) Attributes are the characteristics of a specific model type, and relations
and meta-rules define how model types interact with each other. While models and associations are
defined using OneClick, the Model Type Editor lets you define model types, rules, relations, and
attributes.
The Model Type Editor is the Java-based application that you use to create, modify, and delete
modeling catalog objects. Because it is a thick-client application that accesses the SpectroSERVER
database, you must run it from the SpectroSERVER platform.
03-Apr-2017 108/311
CA Spectrum - 10.2 and 10.2.1
Complex model types are often derived by inheriting attributes from several, simpler model types.
The resulting combination constitutes a hierarchy of model types. Parent model types (model types
from which one or more other model types have been derived) are called base model types. Child
model types (model types that have been derived from one or more other types) are called derived
model types. The following illustration shows a sample model type hierarchy that illustrates model
type derivation.
In the illustration, Device is a base model type for three model types: PC Card, Hub, and Bridge. As
such, all three derived model types inherit the attributes of Device.
In turn, PC Card, Hub, and Bridge are each used as a base model type for another model type,
respectively, SNMP PC Card, SNMP MMAC, and SNMP Bridge. All of these derived model types inherit
the attributes of their immediate parent model type, and by extension, the attributes of the Device
model type. In addition, they also inherit the attributes of a model type named SNMP Protocol.
In the Model Type Editor, you can identify a model type's position in the model type hierarchy using
the Hierarchy tab. The tab shows the following for the current model type:
The base (parent) model types from which the current model type is derived
The derived (child) model types that are derived from the current model type
03-Apr-2017 109/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--hierarchytab_SCR
The Model Type Editor also provides an Attribute tab that shows the attributes of a model type and
their default values.
03-Apr-2017 110/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--attributestab_SCR
There are various rationales for attributes. Certain attributes, such as the name of a router or its IP
address, are necessary in order to uniquely identify a resulting model within the CA Spectrum
database. Other attributes relate a model to the SNMP object identifiers (OIDs) supported by the
model. Still others support CA Spectrum functionality. For example, Discovery_Precedence is used by
the Discovery program; Value_When_Red is used for alarm roll-up, and Polling_Interval is used to
determine how often CA Spectrum polls the given device for information.
Models
A model is an instantiation of a model type by the SpectroSERVER. All models instantiated from the
same model type have the same set of attributes and CA Spectrum intelligence. However, the values
for the attributes are unique to each model except in the case of Shared attributes (that is, attributes
for which the Shared flag is set).
As a simple example, the following illustration shows three models derived from a model type named
Building, which has three attributes: Modeltype_Name, Model_Name, and Floors. Because each
model is instantiated from the same model type, each model has the same value for
Modeltype_Name (a Shared attribute). However, the values for Model_Name and Floors vary.
03-Apr-2017 111/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--buildingdiagram_OTH
Note: A network administrator can add, edit, and delete models using OneClick. For more
information, see Modeling and Managing Your IT Infrastructure (https://docops.ca.com/display
/CASP102/Modeling+and+Managing+Your+IT+Infrastructure).
Contains
Collects
Executes
HASPART
Is_Adjacent_to
Monitors
Pings_Through
03-Apr-2017 112/311
CA Spectrum - 10.2 and 10.2.1
Pings_Through
Schedules
Each relation is defined by one or, more typically, several rules called meta-rules. The meta-rules for
a relation apply the relation to specific model types, thereby defining how the model types can
interact with one another. As an example, the following are several of the meta-rules defined for the
Contains relation:
Each meta-rule must have exactly one antecedent model type (the left-hand entry) and exactly one
predicate model type (the right-hand entry). Any model type can be an antecedent or a predicate for
any number of meta-rules.
OneClick uses the meta-rules for model types to establish the rules for interaction between specific
models instantiated from the model types. In CA Spectrum terms, instantiation of a meta-rule
between two models produces an association between the models, and each model can react to the
knowledge that it is associated with the other model. For example, consider the following meta-rule:
This might result in the following association between two specific models:
One-To-Many
A relation of this type defines how a single model of one model type relates to multiple models of
another model type. For example, Contains is a one-to-many type of relation. As such, it can have
one or more meta-rules that define one-to-many relationships between models. For example, it
includes a "Country contains Building" meta-rule, which specifies that a single model of the
Country model type can contain multiple models of the Building model type.
Many-To-Many
A relation of this type defines how multiple models of one model type relate to multiple models
of another model type. For example, Is_Adjacent_to is a many-to-many type of relation. As such,
it can have one or more meta-rules that define many-to-many relationships between models. For
example, it includes a "Device Is_Adjacent_to Device" meta-rule, which specifies that multiple
models of the Device model type can be adjacent to multiple models of the Device model type.
03-Apr-2017 113/311
CA Spectrum - 10.2 and 10.2.1
The Model Type Editor provides a Relation tab that shows the meta-rules defined for a specific
relation.
spec--mte--metarules_SCR
Most relations in the modeling catalog that comes with the basic CA Spectrum package have meta-
rules that specify the model types to which the relations can be applied.
This section provides information on important concepts related to inheritance, namely, attribute
descriptors, standard versus specialized hierarchies, model type precedence, and attribute collapsing.
Attribute Descriptors
Attribute descriptors are the characteristics that define the attribute, for example, its type (boolean,
integer, text string, and so on) and default value.
03-Apr-2017 114/311
CA Spectrum - 10.2 and 10.2.1
Standard descriptors: The values of these attribute descriptors are inherited by all model types
derived directly or indirectly from the base model type in which the attribute was first created
(referred to as the originating model type).
You can only modify the values of standard descriptors in the originating model type; you cannot
modify their values in derived model types.
Name, Attribute ID, and the Shared flag are three examples of standard descriptors.
Descriptors that can be specialized: Like standard attribute descriptors, the values of these
descriptors are inherited by all model types derived directly or indirectly from the base model
type in which the attribute was first created. However, unlike standard descriptors, you can
modify the values of these descriptors at any level in the model type hierarchy. This process is
called specialization.
When you modify a descriptor value in a derived model type, the new value overrides the
inherited value for that derived model type and any of its own derived (child) model types. Other
model types that are derived from the same base model type -- and that are unspecialized with
respect to the same attribute descriptor -- continue to inherit their descriptor values; this is also
the case for any of their derived (child) model types.
Important! The complete list of descriptors that you can specialize includes -- notably,
Default Value -- as well as the Extended Flags (Memory, Database, Polled, and Logged), OID
Prefix, OID Reference, and Polling Group, as identified in the following image.
03-Apr-2017 115/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--attributedescriptors_SCR
Standard Hierarchy
The following illustration shows a model type hierarchy whose attributes and their default values are
inherited through a standard hierarchical sequence.
03-Apr-2017 116/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--standardhierarchy_OTH
In the illustration, Model Type A is derived from Base Model Type, and, as a result, Model Type A
inherits attribute X and its default value of 1 from Base Model Type. In a similar manner, Model Type
B is derived from Model Type A, and, as a result, Model Type B inherits attribute X and its default
value of 1 from Model Type A.
This hierarchical relationship of inheritance is applied to all other model types derived from Model
Type A, Model Type B, or any of their descendants. Moreover, the relationship is maintained by the
database so that any change made to the value of the Default Value attribute descriptor in the
originating model type is immediately applied to all derived model types that inherit the descriptor
value.
As a simple example, assume you add a Technical_Assistance text string attribute to Base Model Type
with a telephone number as the default value. Model Type A, Model Type B, and all other model
types that derive from them would all inherit the Technical_Assistance attribute and, therefore, the
value of the Default Value attribute descriptor (the telephone number). If you then changed the
telephone number, all of the model types derived directly or indirectly from Base Model Type would
immediately inherit the new telephone number.
Specialized Hierarchy
In contrast to the standard hierarchy, the following illustration shows a model type hierarchy where
one derived model type inherits its default value but another does not.
03-Apr-2017 117/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--specializedhierarchy_OTH
In this illustration, the default value for attribute X (or, more specifically, the value of the Default
Value attribute descriptor for attribute X) in Model Type A is specified, not inherited. In other words,
the value inherited from Base Model Type is overridden and no longer used. As mentioned previously
in this section, this process is called specialization.
When you override a descriptor value that is inherited, you break the relationship to the base
(parent) model type for that attribute descriptor only. The inheritance relationship with respect to
the values of all other attribute descriptors is not affected. Furthermore, model types that are
derived from specialized model types behave exactly as if they were derived from unspecialized
model types. In the illustration, Model Type B inherits its default value for attribute X from Model
Type A just as it would if Model Type A were not specialized. If you were to change the default value
of attribute x in Model Type A, the default value of the same attribute in Model Type B would
immediately change as well. Because the inheritance relationship is in effect, this would be the case
even if you derived Model Type B before you made the change.
In reality, the attribute hierarchy often consists of a combination of inherited and specialized values,
particularly when multiple model types are derived from a common base model type. Moreover,
while specialization is most typical with respect to the Default Value attribute descriptor, it is possible
for any other descriptor that can be specialized. The following diagram illustrates a model type
hierarchy that uses both inheritance and specialization for an attribute (attribute X).
03-Apr-2017 118/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--specializedierarchy2_OTH
Note in the figure that Model Type C is specialized by introducing new attribute Y. Therefore, this
attribute is inherited by derived Model Type D.
When you first derive a model type from a base model type, that base model type is given a ranking
of 1. If you then add a second base model type to the derived model type, that second base model
type is given a ranking of 2. Subsequent base model types are assigned rankings in a similar manner.
03-Apr-2017 119/311
CA Spectrum - 10.2 and 10.2.1
1. You derive model type A and model type B from a common base model type.
spec--mte--precedence_diagram1_OTH
The base model type defines attribute X, which is inherited by both derived model types. The
base model type is assigned a ranking of 1 with respect to both derived model types.
spec--mte--precedence_diagram2_OTH
Model type C inherits attribute X from model type A, which, in turn, inherits the attribute
from the base model type. Because model type C was created based on model type A, model
type A is assigned a base model type ranking of 1 with respect to derived model type C.
03-Apr-2017 120/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--precedence_diagram3_OTH
Model type B is assigned a base model type ranking of 2 with respect to derived model type C.
Because model type A has a lower ranking as a base model type, model type C inherits
attribute X from model type A, not from model type B.
In the Model Type Editor, the base model types for a given model type are listed in ranked
order, so you can identify the order of precedence for attribute inheritance.
03-Apr-2017 121/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--tabhierarchyrankings_OTH
Note: You can change a base model type's ranking by removing it and then re-adding it as a
base model type in a specific location in the list.
Attribute Collapsing
To maintain an attribute hierarchy that is as simple as possible, the Model Type Editor includes a
feature that eliminates unnecessary specialization. That is, if you modify the Default Value descriptor
(or any other descriptor that can be specialized) in a derived model type so that its value matches the
value in the corresponding descriptor in the base model type from which it immediately inherits the
attribute (that is, from an immediate parent model type), the database discards the modification and
instead inherits the descriptor value from the base model type. This process is called "attribute
collapsing;" its goal is to simplify a specialized hierarchy as much as possible by removing unnecessary
customizations.
Once the descriptor value reverts to the inherited value, if you subsequently change the descriptor
value in the base model type, the derived model type also receives the change (which is normal
inheritance behavior).
03-Apr-2017 122/311
CA Spectrum - 10.2 and 10.2.1
You can identify the model type from which the current model type obtains its default value in the
Value Defined In field in the Component Detail panel, as shown in the following image.
Attribute Collapsing
Note: Attribute collapsing does not take place for default values if the attribute is Shared
(that is, the Shared flag is set).
03-Apr-2017 123/311
CA Spectrum - 10.2 and 10.2.1
Before using the Model Type Editor, we recommend that you also read Certification (https://docops.ca.
com/display/CASP102/Certification). The section provides information about the GnSNMPDev
management module provided with CA Spectrum. You can use GnSNMPDev to represent an SNMP-
compliant network device that does not have a corresponding CA Spectrum management module.
You can also customize GnSNMPDev to extend its support, or you can use it as a toolkit to create new
management modules that include new, supporting device model types and application model types.
Using a Developer ID
CA Spectrum uses developer IDs to help ensure that objects such as model types that are created by
users and application integrators have unique identifiers and, therefore, can be distributed to other
users without conflict.
Whenever you create a model type, attribute, or relation, the Model Type Editor uses the developer
ID that is currently active (loaded in the database) to create the ID or handle for the new object. This
ID is either your unique, registered developer ID or the default ID.
The Model Type Editor also uses developer IDs to determine the access privileges of users with
respect to creating, modifying, and destroying modeling catalog objects (model types, attributes,
relations, and meta-rules).
Any developer can use the Model Type Editor as the default developer. However, the modeling
catalog objects created using the default developer ID are not protected.
To be issued a developer ID, you must have purchased the Level 1 toolkit.
Note: For more information about the toolkit, see Spectrum Integrator (https://docops.ca.com
/display/CASP102/Spectrum+Integrator).
You can activate your developer ID by loading the developer information file that contains the ID into
the SpectroSERVER database. This is a one-time operation after you have initialized the database.
However, if you reinitialize the database, you must reload the information.
Note: Activate your developer ID using SSdbload with the -d option. For more information,
03-Apr-2017 124/311
CA Spectrum - 10.2 and 10.2.1
Note: Activate your developer ID using SSdbload with the -d option. For more information,
see the discussion about loading developer information in Database Management (
https://docops.ca.com/display/CASP102/Database+Management).
If you work in the Model Type Editor using the default developer ID, you can:
View, create, modify, delete, and export model types and attributes that were created with the
default developer ID. This includes modifying the derivation of model types by adding and
removing base model types.
Create, modify and delete relations and meta-rules that were created with the default developer
ID.
Export model types, attributes, relations, and meta-rules that were created with the default
developer ID.
Import model types, attributes, relations, and meta-rules from another compatible database.
If you work in the Model Type Editor using a registered developer ID, you can:
View, create, modify, or delete model types and attributes that were created with your registered
developer ID. This includes modifying the derivation of model types by adding and removing base
model types.
Create, modify, and delete relations and meta-rules that were created with your registered
developer ID.
Export model types, attributes, relations, and meta-rules that were created with your registered
developer ID.
Import model types, attributes, relations, and meta-rules from another compatible database.
03-Apr-2017 125/311
CA Spectrum - 10.2 and 10.2.1
A registered developer can export model types, attributes, relations, and meta-rules that were
created using a registered developer ID. This not only removes ID conflicts, but also protects the
objects from accidental or deliberate modification. As indicated previously, if you use the default
developer ID, you can export only the model types, attributes, relations, and meta-rules that were
created with the default developer ID. It is probable that the IDs (handles) of these objects will
conflict with those on another system to which you might want to export the objects. In addition, the
exchange of such objects between systems using the default developer ID means that the objects are
susceptible to modification or corruption on the receiving system.
While lock files are removed automatically during normal shutdown of a CA Spectrum application, an
abnormal shutdown can leave behind a lock file erroneously. In rare situations like this, you can
manually remove the database lock. For information about how to do this, see Database
Management (https://docops.ca.com/display/CASP102/Database+Management).
Use of the Model Type Editor involves several risks to the SpectroSERVER database, such as the
accidental destruction of necessary model types, the inappropriate setting of attribute flags, and the
creation of more than one database with different model type derivations. For this reason, it is
recommended that you adopt the following strategies to help preserve the database:
Avoid editing the database that you use to model your network until absolutely necessary. First
test your model type changes using a test database.
Restrict the use of the Model Type Editor to individuals who are familiar with the long-term plans
for your model type derivation scheme. This can help to prevent unnecessary modifications to the
database.
Do not permit editing across multiple databases by more than one user using the same developer
ID. This practice creates conflicts between the IDs of modeling catalog objects, which can only be
corrected by manually recreating the affected objects. If two separate databases are being used,
verify that the database files are being modified with different developer IDs.
Use the database management utilities provided with CA Spectrum namely SSdbload and
SSdbsave to initialize and copy the database. You may get unpredictable results if you use
another method.
Note: For information about using these utilities, see Database Management .
03-Apr-2017 126/311
CA Spectrum - 10.2 and 10.2.1
To preserve the default values of attributes, you can enable the Preserve Value attribute descriptor
flag on the relevant attributes. This flag prevents changed default values from being overwritten by
subsequent database updates. However, be aware that enabling this flag may prevent you from
receiving intended changes pertaining to the same attributes.
Important! Only one application or process can access the SpectroSERVER database at a
time. As a result, after you start the Model Type Editor, all other CA Spectrum applications,
including the SpectroSERVER, are denied access. While CA-developed applications
automatically deny access to other CA applications as needed, be aware that some third-
party applications do not. Database corruption can result.
In rare situations, the SpectroSERVER database is not closed properly by a process, for example,
during a power failure. In these situations, the database lock erroneously remains in effect and
prevents you from starting the Model Type Editor. To use the Model Type Editor, you must have read
and write permissions to the files in the <$SPECROOT>\SS directory.
Note: For information about removing a database lock, see the Database Management (
https://docops.ca.com/display/CASP102/Database+Management).
03-Apr-2017 127/311
CA Spectrum - 10.2 and 10.2.1
2. Verify that no other programs that can access the SpectroSERVER database are running.
3. Open the CA Spectrum Control Panel and click Configure, Model Type Editor.
The Model Type Editor opens. The Root model type is set as the current model type. The Root
model type is the model type at the highest point in the model type hierarchy.
2. Verify that no other programs that can access the SpectroSERVER database are running.
3. Log in to a shell environment if you are running on Unix or Linux, or open a command prompt
if you are running on Windows.
4. Change to the directory that contains the SpectroSERVER database that you want to modify
using the Model Type Editor.
Note: The executable file for the Model Type Editor is installed in <$SPECROOT>/SS-
Tools, but it must be called from the directory that contains the SpectroSERVER
database that you want to modify. Typically, this directory is CA Spectrum/SS. The
directory should contain the database files, which consist of paired *.db and *.ix
files, miscellaneous files, and supporting subdirectories.
../SS-Tools/mte
The Model Type Editor opens. The Root model type is set as the current model type. The Root
model type is the model type at the highest point in the model type hierarchy.
03-Apr-2017 128/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--ui_SCR
Use the Navigation panel on the left to search for and select a model type, attribute, or relation.
Information about a selected object appears in the Contents panel on the right. Use the Contents
panel to modify the object, delete the object, or create related objects (for example, to derive a new
model type from the current model type).
When you work with attributes, a Component Detail panel lets you view and modify the descriptor
values of the current attribute.
03-Apr-2017 129/311
CA Spectrum - 10.2 and 10.2.1
The Model Type Editor automatically saves any changes that you make to model types, attributes,
relations, and meta-rules to the working catalog. You can add them to the permanent catalog in the
SpectroSERVER database on demand, or you can add them when you exit the application. You are
prompted to add them when you exit the application to avoid losing your work.
2. Click OK.
Your changes are saved in the permanent catalog in the SpectroSERVER database. As a result,
subsequent calls to the database for the affected objects retrieve the updated versions of
those objects.
spec--mte--sortedattributes_SCR
You can also use the Filter and Search text boxes provided on the various tabs in the Model Type
Editor to display only the catalog objects whose names or IDs include a specific character string
regardless of case (uppercase or lowercase). In the Filter text boxes, this limits the list of already
displayed names. In the Search text box for attributes, this narrows the search criteria applied against
the working catalog.
Keep in mind the following as you filter and search for modeling catalog objects:
To filter lists by ID (for example, model type ID), the ID column must be displayed in the table.
The Search text box for attributes always searches using both the attribute name and attribute ID
as criteria.
In most cases, a filter or search criterion remains in effect until you clear it by deleting the
03-Apr-2017 130/311
CA Spectrum - 10.2 and 10.2.1
In most cases, a filter or search criterion remains in effect until you clear it by deleting the
character string. There are a few actions that automatically clear a filter, for example, when you
add a new attribute to a model type.
2. Click the Columns tab, and select the columns you want to display.
3. (Optional) Change the table sorting and font using the controls on the Sort and Font tabs.
4. Click OK.
Note: For information about the difference between the working catalog and the
permanent catalog, see Commit Changes to the SpectroSERVER Database (see page ).
2. Click OK.
If you have made changes to the working catalog that is stored in cache, you are prompted to
save the changes to the permanent catalog in the SpectroSERVER database.
The changes are saved, if appropriate, and the Model Type Editor is closed.
03-Apr-2017 131/311
CA Spectrum - 10.2 and 10.2.1
Extend and customize the default modeling catalog provided with CA Spectrum by creating and
modifying model types.
lmport MIBs.
Developer ID
Flags
Custom attributes
03-Apr-2017 132/311
CA Spectrum - 10.2 and 10.2.1
Developer ID
The developer ID that was active when the attribute was created. This can be a registered ID
obtained from CA or the default ID. Once a developer ID is assigned to an attribute, it cannot be
changed.
After you create an attribute, the access privileges of users for modifying, deleting, and exporting it
are determined based on whether the active developer ID matches the developer ID associated with
the attribute.
Note: A model type name does not need to be unique across the modeling catalog, but you
should help ensure it is unique across the model types created under a given developer ID.
CA Spectrum differentiates model types using both the model type name and the
developer ID component in the model type ID.
While you can rename a model type, be aware that this affects the AlertMap file that is specific to the
model type because the file is located in the following directory:
If you rename a model type, you will need to manually create a new directory based on the new
model type name and then move the AlertMap file.
Also be aware that it is possible -- although unusual and discouraged -- that an inference handler
depends on the name of a model type rather than its model type ID (handle).
03-Apr-2017 133/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--modeltypeID_OTH
Once a model type ID is assigned to a model type, it cannot be modified. Additionally, if the model
type is deleted, the ID is not reused.
Because a model type can inherit the same attribute from two or more inheritance paths that have a
common originating model type, the ranking of the base model types is used to determine the
inheritance path.
You cannot remove attributes inherited from a base model type, and you have limited capabilities to
edit them. To remove an inherited attribute, or to have full editing capabilities, you must use the
same developer ID that was active when the model type was created, and you must make the change
in the originating model type. The originating model type is the model type in which the attribute was
created.
03-Apr-2017 134/311
CA Spectrum - 10.2 and 10.2.1
You can only modify flag settings for a model type if you are using the developer ID that
was active when the model type was created.
Visible
If enabled (checked), the model type is exposed in the output when you run a report on the
modeling catalog using the reports database utility provided with CA Spectrum. If disabled (not
checked), the model type is only exposed in the output if the model type was creating using the
developer ID that is currently loaded in the database. The default value is enabled.
Note: The Visible flag does not affect what a user can view in the Model Type Editor or in
OneClick, nor does it affect the operation of the SpectroSERVER. However, future releases
of CA Spectrum may respect the flag and stops access to model types and models when
the flag is disabled. For more information about the reports utility, see Database
Management (https://docops.ca.com/display/CASP102/Database+Management).
Instantiable
If enabled (checked), models of the model type can be created in the SpectroSERVER database by
users and inference handlers. If disabled (not checked), models of the model type cannot be
created, and the model type is not available in OneClick when creating a model by model type.
The default value is disabled.
Changing the condition of the Instantiable flag for a model type does not affect existing models of
that type. For example, if you were to disable the flag after creating models A and B, models A
and B would be unaffected. However, you could not create additional models after disabling the
flag.
Derivable
If enabled (checked), the model type can be used as a base model type from which other model
types can be derived. If disabled (not checked), the model type cannot be used as a base model
type. The default value is enabled.
CA Spectrum checks the Derivable flag only as new model types are being created. In other
words, if you derive several model types from model type A and then disable the Derivable flag
for model type A, the newly derived model types are unaffected, but you are no longer able to
derive additional model types from model type A.
No Destroy
If enabled (checked), models of the model type cannot be deleted from the SpectroSERVER
database by users and inference handlers. If disabled (not checked), models of the model type
can be deleted. The default value is disabled.
Note: You can only enable this flag if you also enable the Instantiable flag.
03-Apr-2017 135/311
CA Spectrum - 10.2 and 10.2.1
Unique
If enabled (checked), only one model of the model type can exist in the SpectroSERVER database.
If disabled (not checked), additional models of the model type can exist. The default value is
disabled.
CA Spectrum checks the Unique flag only as models are being created. If you create several
models of a model type and then disable the Unique flag, the previously created models are
unaffected, but you are no longer able to create additional models of the model type.
Note: You can only enable this flag if you also enable the Instantiable flag.
Required
If enabled (checked), the SpectroSERVER creates a model of the model type at server startup if a
model does not already exist. If disabled (not checked), a model of the model type is created only
if requested by a user, inference handler, or application. The default value is disabled.
Note: You can only enable this flag if you also enable the Instantiable flag.
Custom Attributes
In addition to the model type attributes described earlier in this section (such as model type ID), a
model type has many other attributes that are inherited from base (parent) model types or that
originate in the model type itself. You can view this list of attributes on the Attributes tab in the
Contents panel, as shown in the following image.
03-Apr-2017 136/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--attributestab_SCR
You can click the Attribute Name column header to sort the attribute list alphabetically in ascending
or descending order.
The Originating Model Type column displays the model type in which each attribute was created.
You can click the Originating Model Type column header to sort the list alphabetically in ascending or
descending order. This lets you group together and, therefore, identify all of the attributes in the
current model type that originate in the model type itself or in a base (parent) model type.
The values for the attribute descriptors of the selected attribute are displayed in the Component
Detail panel.
03-Apr-2017 137/311
CA Spectrum - 10.2 and 10.2.1
As discussed earlier in this section, every attribute is described by a set of characteristics called
attribute descriptors. The following are attribute descriptors that you can only modify in the
originating model type (the model type in which the attribute was defined):
Standard Attribute Descriptors (see page 137)
Developer ID (see page 138)
Attribute Name (see page 138)
Attribute ID (Handle) (see page 138)
Type (see page 139)
Flags (see page 139)
Group Name and Group ID (see page 141)
Developer ID
The developer ID that was active when the attribute was created. This can be a registered ID
obtained from CA or the default ID. Once a developer ID is assigned to an attribute, it cannot be
changed.
After you create an attribute, the access privileges of users for modifying, deleting, and exporting it
are determined based on whether the active developer ID matches the developer ID associated with
the attribute.
Attribute Name
An attribute name is a descriptive identifier. Attribute names should be a maximum of 128 characters
and should only consist of letters, numbers, underscore (_) characters, and dashes (-). Spaces,
punctuation, or other symbols should not be used.
Note: An attribute name does not need to be unique across the modeling catalog, but it
should be unique across the attributes in the model type that were created using the same
developer ID. In other words, within a single model type, two attributes can have the same
name if they were created using different developer IDs.
Attribute ID (Handle)
A unique ID that is assigned to the attribute when the attribute is created. The ID is generated by
ORing together the value of the active developer ID and a unique sequence number (counter value),
as shown in the following illustration.
03-Apr-2017 138/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--attributeID_handle_OTH
Type
The attribute type defines the kind of data that the value of the attribute can hold. If the attribute
represents a managed object that is defined in the MIB, you should set the type to correspond to the
type defined in the MIB.
If an attribute requires a list of values, you must select the List check box.
Note: After you create an attribute, you cannot change its type or whether it stores a single
value or a list of values. You must delete the attribute and create a new one of the desired
type. There are two exceptions to this. First, you can change the type from Octet String to
Text String, and vice versa. Second, if the type is numeric (Integer, Counter, Enumeration,
Gauge, or Time Ticks), you can change from one of these numeric types to another.
Flags
Flags -- also referred to as descriptor flags -- inform the SpectroSERVER of the characteristics of the
attribute, for example, who can access the attribute's value. The following describes each flag.
External
Indicates the attribute value is maintained outside of the SpectroSERVER and that update of the
value is done either at a polling interval or upon user request.
03-Apr-2017 139/311
CA Spectrum - 10.2 and 10.2.1
Note: If you set this flag, you must supply an OID prefix, which specifies the location of the
managed variable in the MIB. Also note that if you set this flag, you cannot set the Shared
flag.
Readable
Informs the SpectroSERVER that a client or other application can read the attribute value from
the SpectroSERVER database.
If you set the External flag, you should set this flag in accordance with the MIB definition of the
Readable variable for the attribute. Otherwise, you can set this flag as desired.
Writable
Informs the SpectroSERVER that a client or other application can write the attribute value to the
SpectroSERVER database.
If you set the External flag, you should set this flag in accordance with the MIB definition of the
Writable variable for the attribute. Otherwise, you can set this flag as desired.
Shared
Declares that only one value exists for the attribute and that all models of the given model type
share the same value. The value is not duplicated for each model in memory or in the database.
Note: You can only set this flag if you also set the Database flag or the Memory flag. Also,
if you set the External flag or the Polled flag, you cannot set this flag.
Guaranteed
Guarantees that the attribute will continue to exist and can be used in future model type
derivations. Once set, this flag cannot be disabled except by the developer who created the
attribute.
Note: Setting this flag only guarantees the presence of the attribute, not its value or
values.
If this flag is disabled, any Model Type Editor user can enable (set) or disable the Extended flags of
the attribute. If this flag is enabled, users having developer IDs other than the one used to create
the attribute can only set the Extended flags; they cannot disable them. The user having the
developer ID used to create the attribute can set or disable the Extended flags at any time.
Global
Indicates that the attribute's value will be kept consistent across duplicate models in all
landscapes in a distributed SpectroSERVER (DSS) environment.
Global attributes are only maintained for models of the User and UserGroup model types. These
are duplicate model types, that is, across a distributed environment, multiple models of these
types effectively represent the same user or user group. As such, a change to a model in one
landscape should be propagated to all corresponding, duplicate models in all other landscapes.
Note: You can only set this flag if you also set the Memory flag or the Database flag.
03-Apr-2017 140/311
CA Spectrum - 10.2 and 10.2.1
Preserve Value
Indicates that imported files will not overwrite the attribute's default value currently stored in the
database.
If you customize the default values of one or more model types to meet specific requirements,
and then you set this flag, your customizations (the specialized default values) will remain in place
when the model types are updated by subsequent versions of CA Spectrum.
If you are the owner of the attribute (that is, the attribute was created using the developer ID that is
currently active), you can modify all of the flags described in this section in the originating model type
regardless of whether you are the owner of the associated model type.
If you are not the owner of the attribute, or if the attribute is inherited, you cannot modify these
flags. However, you can modify the attribute's extended flags.
Group Name specifies the name of the group to which the attribute is assigned, and Group ID
specifies the ID of that group.
Like for any standard descriptor, you can change the group to which an attribute is assigned if you are
modifying the model type in which the attribute was created, and if you are using the developer ID
that was used when the attribute was created (that is, you own the attribute).
By default, an attribute has a Group ID value of 0x00000000, which indicates the attribute is not
assigned to a group. If you assign an attribute to a group, and you subsequently decide it should not
be assigned to a group, you must reassign the attribute to the Root group. You cannot restore a
Group ID value of 0x00000000 in the Model Type Editor.
Note: If you set an attribute's Group Name to the name of another developer's attribute
group, and that developer's attribute group is not distributed with the next version of CA
Spectrum, the attribute's Group Name value is reset to <no group>, and its Group ID value
is reset to 0x00000000 to indicate it is not assigned to a group.
03-Apr-2017 141/311
CA Spectrum - 10.2 and 10.2.1
As discussed earlier in this section, every attribute is described by a set of characteristics called
attribute descriptors. The following are attribute descriptors that you can specialize; you can modify
them at any level of the inheritance hierarchy:
Special Attribute Descriptors (see page 141)
Default Value (see page 142)
Extended Flags (see page 142)
OID Prefix and OID Reference (see page 144)
Polling Group (see page 145)
Default Value
The initial value or values for the attribute. An attribute can inherit its default value from a base
model type or specify its own default value (a process called specialization). In the latter case, all
model types derived from the specialized model type inherit the changed attribute value.
Note: While you can specify a default value for an attribute using this attribute descriptor
of a model type, the actual value or values of the attribute are often different in models.
This is definitely the case for external attributes (attributes for which the External flag is
enabled), since these attributes maintain their values by polling devices at specified
intervals or making updates upon user request.
Extended Flags
Extended flags -- also referred to as extended descriptor flags -- inform the SpectroSERVER of
additional characteristics of the attribute, for example, whether the attribute should be polled.
You enable and disable an attribute's extended flags using the Model Type Editor, but the flags are
used by the SpectroSERVER.
If an attribute's Guaranteed flag is disabled, any Model Type Editor user can enable or disable the
extended flags. If the Guaranteed flag is enabled, users having developer IDs other than the one used
to create the attribute can only enable the Extended flags; they cannot disable them. The user having
the developer ID used to create the attribute can enable or disable the extended flags at any time.
Memory
Stores a copy of the attribute's value in memory. When the SpectroSERVER is restarted, the value
is reset to the default value; the value in memory is not preserved.
Note: You must set either this flag or the Database flag if you set either the Shared flag or
the Global flag.
Database
03-Apr-2017 142/311
CA Spectrum - 10.2 and 10.2.1
Database
Stores a copy of the attribute's value in the database so that it is preserved across SpectroSERVER
restarts.
Note: You must set either this flag or the Memory flag if you set either the Shared flag or
the Global flag.
Polled
Informs the SpectroSERVER that the attribute should be polled at the polling interval in order to
update its value. This is only meaningful if the External flag is also set. If the Memory flag is also
set for the attribute, the value retrieved by the poll is also stored in memory.
Note: You cannot set this flag if you set the Shared flag.
If you set this flag, you should assign the attribute to an appropriate polling group; all attributes
of a polling group are polled together. If you set both this flag and the Logged flag, you must
group the attribute with other attributes that also have both the Polled and Logged flags set.
Logged
Causes the value of the attribute to be recorded in the Distributed Data Manager (DDM)
database. If you enable this flag, you should assign the attribute to an appropriate polling group;
all attributes of a polling group are logged together. If you enable both this flag and the Polled
flag, you must group the attribute with other attributes that also have both the Polled and Logged
flags enabled.
External attributes that are set to be polled and logged may return "noSuchName" errors when a
management module is based on a more current firmware version than the managed device
supports. To reduce unnecessary network traffic, CA Spectrum automatically suspends normal polling
and logging for attributes that return this error, and moves the attribute to the unsupported polling
attribute group.
Once an attribute has been moved to the unsupported polling attribute group, CA Spectrum
generates an event (0x10970). By default, this event is not logged and does not generate an alarm.
However, you can change this event processing using the Event Configuration application in OneClick.
CA Spectrum attempts to read the attribute at the interval specified by the
03-Apr-2017 143/311
CA Spectrum - 10.2 and 10.2.1
When an attribute that had previously been reporting a "noSuchName" error reports a successful
poll, CA Spectrum generates an event (0x10971). By default, this event is not logged and does not
clear an alarm. However, you can also change this event processing using the Event Configuration
application.
Thus, the unsupported_attr_poll_interval lets normal polling and logging for an attribute to resume
automatically without requiring a SpectroSERVER restart or the destruction and recreation of the
models that have the attribute.
Note: For more information about the unsupported_attr_poll_interval, see the Distributed
SpectroSERVER Administration (https://docops.ca.com/display/CSP/Administrating) section. For
more information about the Event Configuration application, see the Event Configuration
User (https://docops.ca.com/display/CASP102/Event+Configuration)section.
The OID Prefix specifies the column within the MIB table that contains the variable. You must use
dotted-decimal notation when entering the OID prefix.
The OID Reference (instance ID) specifies the name of an attribute whose value serves as an index
used to define the instance of the variable within the column.
The OID prefix is concatenated with the OID reference to define a complete object identifier (OID) for
the variable being monitored. As an example, the following image shows the resulting OID formed
using the following:
An OID Reference set to the ID of an internal attribute, defining the instance ID.
03-Apr-2017 144/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--OIDPrefix_OID Reference_OTH
Note: A managed variable does not always require an OID reference. You can enter a
complete OID with instance ID in the OID Prefix field.
Polling Group
The polling group to which the attribute belongs. All of the attributes in a group are polled together
and logged together. The SpectroSERVER polls groups of pollable attributes by polling group, one at a
time beginning with the group with the lowest number.
Specify a number between 0 (zero) and 255 inclusive. If you do not specify a value for a new or
existing attribute, the attribute is automatically given a value of 0.
When attributes are polled but not logged (that is, the Polled flag is enabled, but the Logged flag is
disabled), the only limit to the number of attributes within a polling group is the transmission length
limits imposed by the following:
03-Apr-2017 145/311
CA Spectrum - 10.2 and 10.2.1
2. In the list, select the name of the model type that you want to examine.
To locate and select a specific model type, you can take the following steps:
Enter a text string in the Filter text box to filter the list to include only the model types
whose names or IDs contain the string. To filter the list by ID, the ID column must be
displayed in the table.
Click the Model Type bar at the top of the list to change the alphabetical sorting from
ascending to descending or vice versa.
The selected model type becomes the current model type, and information about it is
displayed in the Contents panel.
3. To navigate to a base (parent) or derived (child) model type of the current model type, take
the following steps:
b. Double-click a base or derived model type to make it the current model type.
Note: You can filter the list of base or derived model types using the Filter
text boxes.
c. Repeat the preceding step as many times as needed to navigate to the desired model
type in the model type hierarchy.
2.
03-Apr-2017 146/311
CA Spectrum - 10.2 and 10.2.1
2. In the Search text box, enter a text string to examine against the attribute names and IDs.
(You do not need to display the ID column in the table to search by ID.)
The attributes with names or IDs that include the string that you entered are displayed in the
list. In addition, the originating model type for each attribute is displayed. The originating
model type is the model type where the attribute was created. Use this model type to modify
all of the descriptors for an attribute.
3. Select the name of the attribute that you want to examine from the list.
The corresponding originating model type is made the current model type in the Contents
panel, and information about the attribute you selected is displayed in the Component Detail
panel.
1. Determine the attributes that are required for the new model type.
2. Identify the base model types from which the new model type can inherit its attributes or
inherit as many of them as possible.
3. Set the existing model type that has most of the attributes that you need for the new model
type as the current model type.
This is the model type from which you will directly derive the new model type.
Note: If you are not able to click the button, verify that the current model type has
its Derivable flag set. You cannot derive a model type from the model type unless
this is the case.
03-Apr-2017 147/311
CA Spectrum - 10.2 and 10.2.1
Important! A model type name is not required to be unique across the modeling catalog.
However, we recommend using unique names across the model types that were created
under the currently active developer ID. CA Spectrum differentiates model types using both
the model type name and the developer ID component in the model type ID. In addition,
reusing a model type name is not recommended.
1. Click OK.
The new model type is created and is set as the current model type.
If you click the Attributes tab, you can examine its attributes, which are those inherited from
the base model type that you selected in step 1.
2. If the new model type requires additional attributes that can be inherited from other base
model types, add those model types as base model types.
3. If the new model type requires additional attributes that cannot be inherited from other base
model types, add those attributes directly to the new model type.
4. Set the model type flags for the new model type as appropriate.
For example, if the new model type is a final model type (that is, it is meant to be instantiated
and used by models represented in OneClick), set the Instantiable flag.
1. In OneClick, use the Locater tab to find all of the models of the model type you intend to
delete, and delete the models.
Note: For more information, see Modeling and Managing Your IT Infrastructure (
https://docops.ca.com/display/CASP102/Modeling+and+Managing+Your+IT+Infrastructure).
2. Shut down OneClick and the SpectroSERVER, and start the Model Type Editor.
4.
03-Apr-2017 148/311
CA Spectrum - 10.2 and 10.2.1
4. Examine the hierarchy of the model type in order to identify the consequences of deleting it.
For example, check whether any attributes that originate in the model type are critical to any
derived model types that inherit them. Then resolve any predictable problems with
inheritance factors.
5. Remove all derived model types from the model type that you want to delete:
a. Make the first derived model type the current model type instead.
The model type you want to delete is now displayed in the list of base model types for
the new current model type.
b. In the list of base model types, select the model type that you want to delete, and click
Note: The tooltip displayed when you hover over the button indicates
whether this action will result in only the removal of the selected model
type as a base model type or also the deletion of the current model type. If
the current model type has no derived model types, it will also be deleted
when you remove the last of its base model types because this means it is
no longer a part of the model type hierarchy.
c. Click Yes.
d. Repeat the preceding three steps as many times as needed until the model type that
you want to delete is no longer being used as base model type for any model types.
6. Remove all base model types from the model type that you want to delete:
b. In the list of base model types, select the first model type, and click (Remove
selected base Model Type).
c. Click Yes.
d. Repeat the preceding two steps until the model type that you want to delete no longer
03-Apr-2017 149/311
CA Spectrum - 10.2 and 10.2.1
d. Repeat the preceding two steps until the model type that you want to delete no longer
has any base model types.
Note: Removing the last base model type will also delete the model type
that you want to delete. You can only remove the last base model type from
the current model type when the current model type has no derived model
types.
If a model type requires additional attributes above and beyond those inherited from the model type
from which it is first derived, you can add additional base model types. This can add attributes and
inference handlers to the model type.
While the addition of attributes typically does not cause any problem, you may add inference
handlers that lock attributes, which may make old inference handlers fail. Also, be aware that if a
model type has two or more base model types that share a common ancestor model type, the model
type has more than one way to inherit attributes and intelligence originating in that common
ancestor. As described in Model Type Precedence (see page 119), CA Spectrum resolves this type of
situation by assigning rankings to base model types. The base model type with the lower ranking
(that is, the base model type that is higher in the list of base model types) is the base model type
from which the derived model type inherits the shared attribute.
Note: You can change a base model type's ranking by removing the base model type and re-
adding it in a specific location in the ranked list of base model types.
The existing model type that contains most of the attributes needed for the new model type. You
should derive the new model type directly from this model type.
The other model types that can provide some or all of the other attributes needed for the new
03-Apr-2017 150/311
CA Spectrum - 10.2 and 10.2.1
The other model types that can provide some or all of the other attributes needed for the new
model type.
As you identify the base model types for the new model type, keep the following guidelines in mind:
You can only use derivable model types as base model types, that is, model types that have the
Derivable flag set.
Use as few base model types as possible in order to keep the hierarchy simple.
Avoid adding base model types that do not contribute significantly to the model type being
created. And avoid base model types that contain a significant number of unnecessary attributes.
Because you cannot remove inherited attributes, ignoring this guideline can quickly add an
excessive number of attributes, wasting storage space and perhaps affecting performance.
You might want to add one or more base model types that provide access to specialized MIB
attributes and intelligence. We recommend creating a set of MIB-specific model types, each one
containing the intelligence and attributes related to a specific MIB. Create a new model type
based on GnSNMPMibDerPt and give it a name that identifies associated MIB. Then import the
MIB into the model type. This approach lets you add the MIB-specific model type as a base model
type to multiple model types. The associated attribute IDs remain the same across all derived
model types.
Important! For new device model types, the GnSNMPDev model type is often the best
starting point. This model type contains the basic attributes and intelligence that are
typically required for integration with core CA Spectrum functionality. For new application
model types, select from several possible starting points, such as GnSNMPMibDerPt and
GnSNMPAppDerPt. For more information, see the Certification (https://docops.ca.com/display
/CASP102/Certification).
1. Set current the model type for which you want to add a base model type.
To give the new base model type the highest ranking of all of the listed base model types
(that is, place the base model type last in the list), proceed to the next step.
To give the new base model type a lower ranking (that is, place the base model type
higher in the list), select the base model type directly beneath the location where you
want to insert the new base model type. This step adds the new base model type in that
location.
03-Apr-2017 151/311
CA Spectrum - 10.2 and 10.2.1
Note: When a derived model type can inherit the same attribute from two or more
inheritance paths that have a common originating model type, the derived model
type inherits the attribute from the base model type with the lowest ranking.
Note: To rapidly locate and select a specific model type, enter a text string in the
Filter text box to filter the list.
5. Click OK.
The selected model type is added as a base model type of the current model type.
You can remove base model types from the current model type if the current model type was
creating using the developer ID that is currently active.
You cannot remove the last base model type from the current model type if the current model type
has derived model types. In order to break such a connection, you must first navigate to the derived
model types and use the following procedure to remove the model type of interest as a base model
type with respect to the derived model types. You can then navigate back to the model type of
interest and remove its last remaining base model type.
Note: Inference handlers are code segments that define the behavior and intelligence of a
model type. Problems can occur if you remove a base model type from a derived model
type, and the derived model type has associated inference handlers that refer to attributes
that used to be inherited from the removed base model type. This sort of dependency can
be difficult to detect. Also be aware that removing a base model type also may remove
inference handlers that were inherited from that base model type. This may cause
anomalies if the removed inference handlers performed some vital function for the model
type or for other model types derived from it.
03-Apr-2017 152/311
CA Spectrum - 10.2 and 10.2.1
1. Set current the model type for which you want to remove a base model type.
2. Click the Hierarchy tab, and under Base Model Types, select the model type that you want to
Note: The tooltip for the button indicates whether this action only removes the
selected model type as a base model type or also deletes the current model type. If
the current model type has no derived model types, it is also deleted when you
remove the last of its base model types because it is no longer a part of the model
type hierarchy.
Import MIBs
CA Spectrum manages devices according to the requirements and values that are specified in their
MIB documents. A MIB (Management Information Base) is a database that resides on a network
device and represents that device as a hierarchical collection of objects. A MIB object represents an
individual element of information, such as the uptime of a device. MIBs themselves are text files with
special syntax. A device MIB defines all of the objects that can be managed on the associated device.
The MIB organizes this information in a tree structure with branches that organize the managed
objects into logical groups.
You can use the Model Type Editor to import both SMIv1 and SMIv2 MIBs. However, when you
import a SMIv2 MIB, the Model Type Editor maps the MIB data type to the corresponding data type
that is defined in SMIv1. The Model Type Editor also supports most standard text conventions and
associated enumerations that can be used in a MIB.
When you create a model type, you typically want to add base model types that provide access to
specialized MIB attributes and intelligence. We recommend creating a set of MIB-specific model
types, each one containing the intelligence and attributes of a specific MIB. Create a model type from
GnSNMPMibDerPt and assign it a name that identifies the associated MIB. Then import the MIB into
the model type. This approach lets you add the MIB-specific model type as a base model type to
multiple model types and keep the associated attribute IDs consistent across all derived model types.
Note: You can only import a MIB into a model type that was created by the currently active
developer ID. This rule prevents you from importing the MIB into a model type that you
cannot subsequently export.
03-Apr-2017 153/311
CA Spectrum - 10.2 and 10.2.1
1. Select the model type from which you plan to derive a model type for the MIB import.
Typically, the starting point is some developer-specific (vendor-specific) model type that is
derived from the Manufacturer model type, as illustrated in the following figure:
spec--mte--importmibs_OTH
However, it can also be a model type that was derived from EntityTypes, MMDeveloper, or
another model type in the modeling catalog. Another alternative is GnSNMPMibDerPt, which
was designed specifically for importing MIBs into the CA Spectrum database. That model type
already contains many needed attributes and relations. Regardless of your selection, you can
create device model types at appropriate places in the model type hierarchy later for each
device receiving the attributes of the MIB.
Note: For more information about designing a new model type, see Certification (
https://docops.ca.com/display/CASP102/Certification).
2. Click the Hierarchy tab, and create a model type into which to import the MIB information:
03-Apr-2017 154/311
CA Spectrum - 10.2 and 10.2.1
c. Click OK.
The derived model type is created and is set as the current model type.
Note: Sometimes a single file contains multiple MIBs that are delineated with
BEGIN and END statements. Include only a single MIB in the file that you import.
4. Click Browse, navigate to the MIB file to import, select the file, and click Open.
Important! When you create a model type, typically you also add support for traps, events,
and alarms. You can use the MIB Tools utility in OneClick to add trap support and perform
initial event configuration. For more information, see Certification (https://docops.ca.com
/display/CASP102/Certification). You can then fully configure the events and alarms using the
Event Configuration application in OneClick, as described in Event Configuration (
https://docops.ca.com/display/CASP102/Event+Configuration). For more information about
creating a management module (including creating model types), see Certification (
https://docops.ca.com/display/CASP102/Certification).
03-Apr-2017 155/311
CA Spectrum - 10.2 and 10.2.1
1. Select the model type whose model type flags you want to set.
2. Click the Flags tab and click (Edit) in the top, left corner.
The Edit Flags dialog opens.
4. Click OK.
You can add or remove attributes from a model type directly and indirectly:
To add or remove attributes indirectly, add or remove base model types, as described in Working
with Base Model Types (see page 150).
To add or remove attributes directly, create or delete the attributes from the model type itself, as
described in the topics in this section.
While you can also add attributes to model types that you do not own, you cannot export these
model types or their attributes. Typically, exporting model types that you do not own is only required
for storing information in the related models when no available attribute is suitable.
Important! We recommend recording all changes that you make with the Model Type
Editor. Some changes are not migrated when the database is updated to a later version of
CA Spectrum Specifically, if you modify attributes (such as flag settings), the model type
hierarchy, or relations and the associated meta-rules in the model types supplied by CA or
another vendor, the changes are typically not migrated on database upgrade. You will have
to reapply these changes manually. For more information, see Migrate Changes to a New
Version of CA Spectrum.
03-Apr-2017 156/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--createattributedialog--SCR
Note: An attribute name does not need to be unique across the modeling catalog,
but you should enter a name that is unique across the attributes in the model type
that were created using the same developer ID. In other words, within a single
model type, two attributes can have the same name if they were created using
03-Apr-2017 157/311
CA Spectrum - 10.2 and 10.2.1
model type, two attributes can have the same name if they were created using
different developer IDs. In addition, while it is allowed, reusing an attribute name is
not recommended.
4. Click OK.
The attribute is created and added to the working catalog, and it is displayed in the list of
attributes on the Attributes tab.
When you a remove an attribute from a model type, it is also removed from all derived model types
that inherit it.
Important! We recommend recording all changes that you make with the Model Type
Editor. Some changes are not migrated when the database is updated to a later version of
CA Spectrum Specifically, if you modify attributes (such as flag settings), the model type
hierarchy, or relations and the associated meta-rules in the model types supplied by CA or
another vendor, the changes are typically not migrated on database upgrade. You will have
to reapply these changes manually. For more information, see Migrate Changes to a New
Version of CA Spectrum.
Note: If necessary, you can provide an alternate path via a different base model
type, or you can recreate the attribute at the derived model type level.
2. Select the model type for which you want to remove an attribute.
3. Click the Attributes tab, select the attribute you want to remove, and click (Delete
selected Attribute).
A confirmation dialog opens.
4. Click Yes.
The attribute is deleted from the working catalog.
03-Apr-2017 158/311
CA Spectrum - 10.2 and 10.2.1
Edit an Attribute
Typically, you will want to modify the attributes of the model types that you own, that is, that were
created using the developer ID that is currently active. Because you own the model types, you can
subsequently export them and their attributes.
While you can also modify the attributes of model types that you do not own, you cannot export
these model types or the changes to their attributes.
However, before editing an attribute's characteristics, you should verify that derived model types
that inherit the attribute will not be adversely affected by the changes.
Important! We recommend recording all changes that you make with the Model Type
Editor. Some changes are not migrated when the database is updated to a later version of
CA Spectrum Specifically, if you modify attributes (such as flag settings), the model type
hierarchy, or relations and the associated meta-rules in the model types supplied by CA or
another vendor, the changes are typically not migrated on database upgrade. You will have
to reapply these changes manually. For more information, see Migrate Changes to a New
Version of CA Spectrum.
1. Set current the model type that has the attribute with the default value you want to change.
2. Click the Hierarchy tab, note any derived model types, and verify that they will not be
adversely affected by the change you want to make.
3. Click the Attributes tab, select the attribute from the displayed list, and click (Edit).
The Edit an Attribute dialog opens.
03-Apr-2017 159/311
4.
If the attribute requires a list of values, click Edit, and modify the values as desired in the
Edit List Values dialog. To add a value, click (Add), enter an appropriate Object ID
index value (typically, an SNMP object identifier) and enter the value to associate with
that index entry.
The Object ID value is optional, and, if you specify the first one, the Model Type Editor
uses that Object ID to generate a default, modifiable Object ID for each subsequent value
that you add.
Note: If the Default Value field does not have scroll bars, you can enter a value that
fits in the provided area. If there are scroll bars, the field automatically enlarges as
needed, and the only limitation is the impact on system performance.
5. Click OK twice.
If you are the owner of the attribute (that is, the attribute was created using the developer ID that is
currently active), you can modify all of an attribute's descriptors in the originating model type
regardless of whether you are the owner of the model type.
If you are not the owner of the attribute, or if the attribute is inherited, you can specialize a subset of
the attribute descriptors. That is, you can modify the values of some of the descriptors at any level of
the inheritance hierarchy; you are not limited to modifying the values in the originating model type.
1. Set current the model type that has the attribute with the descriptor values you want to
change.
2. Click the Hierarchy tab, note any derived model types, and verify that the model types will not
be adversely affected by the changes you want to make.
03-Apr-2017 3. 160/311
CA Spectrum - 10.2 and 10.2.1
3. Click the Attributes tab, select the attribute from the displayed list, and click (Edit
selected Attribute).
The Edit an Attribute dialog opens.
Note: All changes that you make to flag settings are subject to the relationships
described in Flags (see page 139).
5. Click OK.
Note: When you add an attribute group, you add it to a specific model type, and the group
is inherited by derived model types in the same way that other attributes of a model type
are inherited. Like for other attributes, if you add an attribute group to a model type that
you do not own (its developer ID does not match the one that is currently active), you will
not be able to export the group.
03-Apr-2017 161/311
CA Spectrum - 10.2 and 10.2.1
1. Set current the model type in which you want to create the attribute group.
2. Click the Attributes tab, and double-click any attribute that was created using the developer
ID that is current active.
The Edit an Attribute dialog opens.
3. Under Group, click Edit beside the value for Group ID.
The Select Group dialog opens displaying a table view and a tree view of all of the attribute
groups inherited from base model types or originating in the current model type.
The Model Type column displays the originating model type for each group (that is, the model
type in which the group was created).
If you do not want the attribute group to have a parent group, do nothing. This is the
default behavior.
If you want the attribute group to have a parent group, select the group using either of
the following methods:
Click the Table View tab, and use the table to select the desired parent group.
To help you find the group, for Filter, you can enter a text string to filter the list to
include only the groups whose names include the string. You can also click any column
heading to change the sort order from ascending to descending and vice versa.
Click the Tree View tab, and navigate the hierarchical tree of parent groups and child
groups to select the desired parent group.
5. Click (Add).
The Create Group dialog opens.
Note: Do not enter a name that is being used by another attribute group created
using the same developer ID. In addition, use a maximum of 128 characters, and
use only numbers, letters, and underscore characters (_).
7. Click OK.
The new attribute group is created.
03-Apr-2017 162/311
CA Spectrum - 10.2 and 10.2.1
In addition, to modify an attribute group, you must be the owner of the model type in which the
group was created. In other words, the active developer ID is the one that was used to create the
model type.
1. Set current the model type in which the attribute group was created.
2. Click the Attributes tab, and double-click any attribute that was created using the developer
ID that is currently active.
The Edit an Attribute dialog opens.
3. Under Group, click Edit beside the value for Group ID.
The Select Group dialog opens. The dialog displays a table view and a tree view of all of the
attribute groups inherited from base model types or originating in the current model type.
The Model Type column displays the originating model type for each group (that is, the model
type in which the group was created).
4. Select the attribute group to modify using either of the following methods:
Click the Table View tab, and use the table to select the desired group.
To help you find the group, for Filter, you can enter a text string to filter the list to include
only the groups whose names include the string. You can also click any column heading to
change the sort order from ascending to descending and vice versa.
Click the Tree View tab, and navigate the hierarchical tree of parent groups and child
groups to select the desired group.
5. Click (Edit).
The Edit Group dialog opens.
6. If you want to change the group name, enter a new name for Group Name.
Note: Do not enter a name that is being used by another attribute group created
under the same developer ID. In addition, use a maximum of 128 characters, and
use only numbers, letters, and underscore characters (_).
b. In the Select Parent Group dialog, select a new parent attribute group using the Table
View tab or the Tree View tab, and click OK.
8. Click OK.
Your changes are saved and the Edit Group dialog closes.
03-Apr-2017 163/311
CA Spectrum - 10.2 and 10.2.1
The group has no assigned attributes. If this is not the case, you can delete the group after you
have reassigned the attributes.
The group has no subgroups. If this is not the case, you can delete the group after you have
reassigned or deleted the subgroups.
1. Set current the model type in which the attribute group was created.
2. Click the Attributes tab, and double-click any attribute that was created using the developer
ID that is currently active.
The Edit an Attribute dialog opens.
3. Under Group, click Edit beside the value for Group ID.
The Select Group dialog opens. The dialog displays a table view and a tree view of all of the
attribute groups inherited from base model types or originating in the current model type.
The Model Type column displays the originating model type for each group (that is, the model
type in which the group was created).
5. Click Yes.
The attribute group is deleted.
03-Apr-2017 164/311
CA Spectrum - 10.2 and 10.2.1
Create meta-rules in <met> that implement the new relation for specific model types.
Add intelligence to the model types so that models of those types react appropriately when they
are associated based on the new meta-rules. You must implement the intelligence
programmatically using the CORBA API.
As an example, assume that you create the following meta-rule:
When the meta-rule is instantiated (for example, when one User model sends mail to a second
User model), the first model may need to react to the fact that it (the user that it represents) has
sent mail, and the second model may need to react to the fact that it has received mail. In this
case, you must add intelligence to the User model type to implement these reactions.
Note: For information about using the CORBA API, see the Development API Reference (https://docops.
ca.com/display/CASP102/Development+API+Reference) section .
2. In the list, select the name of the relation that you want to examine.
To locate and select a specific relation, you can take the following steps:
Enter a text string in the Filter text box in order to filter the list to include only the
relations whose names or IDs contain the string. To filter the list by ID, the ID column must
be displayed in the table.
Click the Relation bar at the top of the list to change the alphabetical sorting from
ascending to descending or vice versa.
03-Apr-2017 165/311
CA Spectrum - 10.2 and 10.2.1
The selected relation becomes the current relation. The following information about the
relation is displayed in the Contents panel:
Developer ID
Specifies the developer ID that was active when the relation was created.
Relation Name
Specifies the name of the relation.
Relation ID
Specifies the ID (handle) that is assigned to the relation.
Relation Type
Specifies the type of relation, either One-to-Many or Many-to-Many.
Meta-Rules
Specifies the list of meta-rules that apply the relation to specific model types, thereby
defining how the model types can interact with one another.
3. To filter the list of meta-rules to include only those for a specific model type, enter the full or
partial name of the model type in the Filter text box:
03-Apr-2017 166/311
CA Spectrum - 10.2 and 10.2.1
spec--mte--metarules_SCR
Create Relations
You can create relations.
To create a relation
1. Click the Relations tab and click (Create Relation) in the Navigation panel.
The Create Relation dialog opens.
Important! The relation name does not need to be unique across the modeling
catalog, but you should enter a name that is unique across the relations created
under a given developer ID. In addition, while it is allowed, reusing a relation name
is not recommended.
03-Apr-2017 167/311
CA Spectrum - 10.2 and 10.2.1
3.
One-to-Many
Relations of this type relate one model type to many model types.
Many-to-Many
Relations of this type relate many model types to many model types.
Note: Once you create the relation, you cannot change the relation type. To specify
a different relation type, you must delete the relation and create a new one.
4. Click OK.
The relation is created and assigned a relation ID, and its information is displayed in the
Contents panel.
6. Add intelligence to the relevant model types so that models of those types react appropriately
when they are associated based on the new meta-rules. You must implement the intelligence
programmatically using the CORBA API.
Note: For information on using the CORBA API, see the Development API Reference (
https://docops.ca.com/display/CASP102/Development+API+Reference) section.
When a new model type is derived from one that is specified as a member of a meta-rule in
a relation, the meta-rule automatically applies to the derived model type. For example, the
modeling catalog provided with the basic CA Spectrum package has a relation called
Contains and two model types named Room and Device. One of the meta-rules for the
Contains relation is the following:
The modeling catalog also contains a Workstation model type that is derived from Device. As a result,
03-Apr-2017 168/311
CA Spectrum - 10.2 and 10.2.1
The modeling catalog also contains a Workstation model type that is derived from Device. As a result,
the "Room Contains Device" also applies to the Workstation model type in the form of "Room
Contains Workstation." You do not have to explicitly create a meta-rule that includes the Workstation
model type.
As an example, the Device model type is a general model type that is used in the following meta-rule
for the Is_Adjacent_to relation:
Consequently, any model type derived from Device or one of its descendants can be adjacent to any
other model type derived from Device or one of its descendants.
If the relation was created using a different developer ID, you can still create a meta-rule for it if at
least one of the model types used in the rule was created using the developer ID that is currently
active.
To create a meta-rule
1. Search for and display the relation for which to create the meta-rule.
The relation is displayed in the Contents panel.
2. On the Relation tab in the Contents panel, click (Create a new Meta-Rule).
The Create Meta Rule dialog opens.
3. In the list of model types on the left, select the antecedent (left) model type to include in the
meta-rule.
Note: To help you locate and select a specific model type, you can enter a text string in the
corresponding Filter text box in order to filter the list accordingly.
4. In the list of model types on the right, select the predicate (right) model type to include in the
meta-rule, and click OK.
The new meta-rule is added to the list of meta-rules for the current relation; it is inserted into
the list alphabetically according to the antecedent model type.
03-Apr-2017 169/311
CA Spectrum - 10.2 and 10.2.1
Note: You now need to add intelligence to the model types so that models of those
types react appropriately when they are associated based on the new meta-rule.
You must implement the intelligence programmatically using the CORBA API. For
more information, see the Development API Reference (https://docops.ca.com/display
/CASP102/Development+API+Reference)section .
Delete Relations
You can delete a relation if the following two conditions are met:
The relation was created using the developer ID that is currently active.
The relation does not have any associated meta-rules. If this is not the case, first delete the meta-
rules.
To delete a relation
2. On the Relations tab in the Navigation panel, select the relation, and click (Delete
selected relation).
A confirmation dialog opens.
3. Click Yes.
The relation is deleted.
If the relation was created using a different developer ID, you can still delete the meta-rule if at least
one of the model types used in the rule was created using the developer ID that is currently active.
To delete a meta-rule
1. Search for and display the relation that contains the meta-rule to delete.
2. On the Relation tab in the Contents panel, select the meta-rule and click (Delete
selected meta-rule).
A confirmation dialog opens.
3. Click Yes.
The meta-rule is deleted.
03-Apr-2017 170/311
CA Spectrum - 10.2 and 10.2.1
Import and export commands in the Model Type Editor: These commands let you import and
export model types from the working catalog for the current session. Because the commands do
not operate on the permanent catalog in the SpectroSERVER database, you can make an explicit
decision after an import as to whether to commit or discard the changes. Since you can only
import or export one catalog file at a time, use these commands when you have only one or a few
files to process.
A command-line utility named dbtool: This command-line utility program lets you import and
export model types from the permanent catalog in the SpectroSERVER database. Because you can
specify multiple files as command-line arguments, use this utility to batch process a set of files.
In both cases, the transfer vehicle is a binary export file that has a .e extension. These files are
referred to as catalogs.
03-Apr-2017 171/311
CA Spectrum - 10.2 and 10.2.1
Import Constraints
Important! You can only import modeling catalog objects that are stored in a compatible
CA Spectrum database (a database that is running the same version of CA Spectrum as the
destination database). For information about updating a CA Spectrum database, see the
Installation section.
New model types are imported into the modeling catalog according to the following constraints:
If the catalog file to import contains a model type that does not exist in the destination database,
the model type is imported according to the rest of the constraints described in this section.
All of the base model types for a new model type must already exist in the destination database.
If they do not, you must import them before importing the new model type. Typically, the "core
catalog" contains these prerequisite model types, and documentation accompanying any new
catalog informs you of any such dependencies.
If a base model type for a new model type does not exist, the import process is terminated. In this
situation, you can identify the missing model type in the CA Spectrum Control Panel. You must
then import a catalog file that contains the missing base model type, and then reinitiate the
import process that was terminated.
If the catalog file to import contains a model type that already exists in the destination database,
the existing version is modified to match the version to import, for example:
Attributes in the existing model type that have the same developer ID as the existing model
type are deleted if they originate in the existing model type but are not included in the
version being imported
If an error occurs due to an inability to write to the destination database or due to insufficient
memory or system resources, the import process is terminated, and you are notified with an
appropriate error message. Because this situation can leave the database in an incomplete or
corrupted state, you should always back up the database before beginning an import operation.
1. Back up the SpectroSERVER database into which you are importing a catalog.
03-Apr-2017 172/311
CA Spectrum - 10.2 and 10.2.1
1.
Note: For information about how to back up the database using the database
utilities provided with CA Spectrum, see the Database Management (https://docops.
ca.com/display/CASP102/Database+Management) section.
3. Navigate to the catalog file (.e file) you want to import, select the file, and click Open.
The modeling catalog information in the selected file is imported into the working catalog for
the current session. At this point, you can manually commit the changes to the permanent
catalog in the SpectroSERVER database , or you can do so when you are prompted when you
exit the application. Alternatively, you can exit the application without committing the
changes to discard them.
When you are exporting model types and associated catalog objects, bear the following in mind:
The export feature in the Model Type Editor exports the working catalog that is stored in
memory. As a result, the resulting export file includes any changes you have made to model types
and associated objects during the current session even if you have not yet committed those
changes to the SpectroSERVER database.
To export the permanent catalog only, you can commit the changes and use the export feature in
the Model Type Editor, or you can use the dbtool command-line utility instead.
The .e file produced by the export process contains the following information:
The attribute descriptors that originated in the model type being exported.
The attribute descriptors that have been specialized (for example, by specifying a default
value to override an inherited one).
The relations and associated meta-rules in which the model type and/or any ancestor model
types participate as an antecedent or a predicate.
You can only export the model types, attributes, and relations (including their associated meta-
rules) that were created using the active developer ID.
03-Apr-2017 173/311
1.
CA Spectrum - 10.2 and 10.2.1
spec--mte--roothierachy--OTH
3. Move the model types that you want to export to the Model Types to Export list.
To search for the model types to export, in the Filter text box, you can enter a text string to
filter the list to include only the model types with names that contain or match the string. The
filter is not case-sensitive.
To move all of the model types available for export to the Model Types to Export list, click
. To move a single model type to the list, double-click the model type name, or select
the model type and click .
Similarly, you can remove model types from the export list by double-clicking them or using
the corresponding left-arrow buttons.
4. Click Browse, and in the Save dialog, navigate to the folder in which to save the catalog file.
5. Enter a name for the file (you do not need to include the .e extension) or select an existing .e
file to overwrite, and click Save.
03-Apr-2017 174/311
CA Spectrum - 10.2 and 10.2.1
When you use dbtool, you can export only the model types that you "own," that is, types that were
created using the currently active developer ID. If a model type is not owned, an error message
describes the relevant model types, and the export process is terminated.
Run the dbtool utility from the directory that contains the SpectroSERVER database that is used in the
import or export. In addition, while the import or export is underway, no other program or process
(for example, a VNM or the Model Type Editor) can access the database. Keep in mind that while CA-
developed applications automatically lock out other CA-developed applications, third-party
applications may not. The competition can result in database corruption.
Note: For more information about running dbtool, see the Database Management (
https://docops.ca.com/display/CASP102/Database+Management) section. This section also
contains information about how to back up the database using the CA Spectrum database
utilities. Perform the backup before you perform an import.
Before running dbtool, you must shut down the SpectroSERVER and any other program that accesses
the SpectroSERVER database.
Note: For information about running the dbtool utility, see the Database Management (
https://docops.ca.com/display/CASP102/Database+Management) section.
03-Apr-2017 175/311
CA Spectrum - 10.2 and 10.2.1
About Running Reports on Model Types and Relations (see page 176)
You must run the reports utility from the directory that contains the SpectroSERVER database that
contains the data you want to access. While the report is being generated, no other program or
process (for example, a VNM or the Model Type Editor) can access the database.
Note: For information about running the reports utility, see Database Management (
https://docops.ca.com/display/CASP102/Database+Management) section.
03-Apr-2017 176/311
CA Spectrum - 10.2 and 10.2.1
OneClick Customization
Contents
Prerequisites for Customizing OneClick XML Files (see page 177)
Extend Factory XML Files (see page 177)
Override Factory Files (see page 178)
Inherit Features in Factory XML Files (see page 178)
Example Extending Factory XML File (see page 178)
OneClick provides a flexible platform for administrators to modify aspects of the application to meet
specific requirements. For example, you can modify OneClick behavior to support the unique
structure of a site, an enterprise and network environment, work processes, and software
deployments. Make your modifications using the OneClick UI or by coding the changes in the XML
files that are provided for that purpose.
Important! Do not add customizations to the files in their default location (<$SPECROOT>
/tomcat/webapps/spectrum/WEB-INF/console/config/). The customizations in that
directory are ignored. In addition, these files are overwritten when you perform CA
Spectrum and OneClick upgrades.
You must be able to create and modify files on the OneClick server.
You must be familiar with the fundamentals of XML coding as well as the CA Spectrum and
OneClick directory structure.
The file whose functionality you want to extend with your modifications.
The directory in the <$SPECROOT>/custom directory structure in which to create your custom
file.
03-Apr-2017 177/311
CA Spectrum - 10.2 and 10.2.1
To extend the default OneClick XML configuration files, create a file with the same name as the
default file in the appropriate custom directory. Use the XML idref attribute in the new file to refer to
the default OneClick file of the same name. Code the new functionality in this file. When OneClick
parses the XML files, the changes in the new file are added to the existing factory file referenced
using idref.
By extending factory files, you are able to take advantage of new features and functionality available
in software updates to the factory XML code while preserving your customizations.
Although you can still override a factory XML file by creating a copy of it in the <$SPECROOT>/custom
directory and making your changes in the copy, using the IDREF XML attribute provides the ability to
inherit and extend the factory file, while maintaining customizations in streamlined files.
Important! Do not add customizations to the files in their default location (<$SPECROOT>
/tomcat/webapps/spectrum/WEB-INF/console/config/). The customizations in that
directory are ignored. In addition, these files are overwritten when you perform CA
Spectrum and OneClick upgrades.
03-Apr-2017 178/311
CA Spectrum - 10.2 and 10.2.1
This section explains the directory structure of the XML files used to create the OneClick interface.
You must be familiar with the structure to find the files necessary for customization and to
implement customization in directories that are not overwritten when you upgrade or reinstall CA
Spectrum.
03-Apr-2017 179/311
CA Spectrum - 10.2 and 10.2.1
custom-app-config.xml
General OneClick registrations, and topology support for CA Spectrum model types, including
icons and views.
custom-branding-config.xml
Customizes the following UI branding elements of OneClick:
About dialog
Note: For information about the XML elements to specify these branding elements, see
the comments in the file that is named custom-branding-config.xml in <$SPECROOT>
/tomcat/webapps/spectrum/WEB-INF/console/config/.
custom-menu-config.xml
OneClick menus and toolbars.
custom-privileges.xml
Registers custom privileges that are applied to the menu items, columns, and subviews.
To customize the OneClick user interface, copy these files to the <$SPECROOT>/custom/console
/config directory and then edit them.
03-Apr-2017 180/311
CA Spectrum - 10.2 and 10.2.1
Important! Do not add customizations to the files in their default location (<$SPECROOT>
/tomcat/webapps/spectrum/WEB-INF/console/config/). The customizations in that
directory are ignored. In addition, these files are overwritten when you perform CA
Spectrum and OneClick upgrades.
Check the <$SPECROOT>/custom/console/config directory before copying files there. Some actions,
such as creating custom searches in the Explorer, automatically create a copy of the custom-app-
config.xml if one does not exist. If the config files already exist in the <$SPECROOT>/custom/console
/config directory, add your customizations to those existing files.
All of the table files are named after the functionality that they display. For example, the file that
builds the interface table for each model type is table-common-ifconfig-config.xml.
Alarms
<$SPECROOT>/custom/alarm/config/
Common
<$SPECROOT>/custom/common/config/
Console components
<$SPECROOT>/custom/console/config/
03-Apr-2017 181/311
CA Spectrum - 10.2 and 10.2.1
Images
<$SPECROOT>/custom/images/
Background images
<$SPECROOT>/custom/images/Background/
Report Manager
<$SPECROOT>/custom/repmgr/config/
Topologies
<$SPECROOT>/custom/topo/config/
Uninstalling SpectroSERVER
Reinstalling the same version of SpectroSERVER if you have installed OneClick under the CA
Spectrum installation directory.
In this case, you should save off the customized files to an area unaffected by the uninstall
process, and re-insert them once you have reinstalled SpectroSERVER.
Note: For more information on upgrades and installation of CA Spectrum and OneClick, see
the Install CA Spectrum (https://docops.ca.com/display/CASP102/Install+CA+Spectrum) section.
03-Apr-2017 182/311
CA Spectrum - 10.2 and 10.2.1
<argument>-loginTitle Message_Text</argument>
For example, you can replace the Message_Text variable with your own message, as follows:
03-Apr-2017 183/311
CA Spectrum - 10.2 and 10.2.1
This section describes how to add new menus and new menu items to the OneClick console. You can
use new menu items to launch URLs, third-party applications, and scripts, and to pass parameters to
them.
The following image shows the Connections menu and its two new menu items: Ping Local and
Launch Diagnostics:
SPEC--menu_connections
The following image shows that a new menu item called Launch My Web Page, which has been
added to the existing Tools menu. This menu item has been created to launch a specified web page.
03-Apr-2017 184/311
CA Spectrum - 10.2 and 10.2.1
SPEC--launch_web_page
You create OneClick menus and menu items using the <menu> and <item> XML elements. The
<menu> element can enclose one or more <item> elements that define the commands that are
available on the menu. The <item> element can enclose several other elements that define how the
menu item appears and behaves. See the following table for information about these elements.
03-Apr-2017 185/311
CA Spectrum - 10.2 and 10.2.1
The subsequent sections of this chapter describe how to use the <menu> element to create a new
menu and how to use the <item> element and its child elements to add menu items to a new or
existing menu.
3. Use the <menu> element to create new menus. This element has a single attribute, name,
which defines the name of the menu.
4. Add items to the new menu by specifying them using the <item> element and its available
child elements. If you do not specify menu items for a menu, the menu is not visible in the
OneClick console.
6. To view and test the new menus, restart the OneClick console.
The following lines of XML create the Connections menu shown in The custom-menu-config.xml File.
03-Apr-2017 186/311
CA Spectrum - 10.2 and 10.2.1
<menu name="Connections">
<item name="Ping Local">
.
.
.
</item>
<item name="Launch Diagnostics">
.
.
.
</item>
</menu>
Note: The new menu item is also added automatically to the right-click menu.
1. Open <$SPECROOT>/custom/console/config/custom-menu-config.xml.
2. Find the <menu> element that you created in Add a New Menu that defines the menu to
which you want to add items. If the <menu> item does not yet exist, add it using the name
attribute to define either an existing or a new menu.
3. Use the <item> element to create each new menu item. This element has one attribute,
name, which defines the name of the menu item.
4. The <item> element has a series of child elements that enable you to define how the item
behaves. These elements are listed in the table in the custom-menu-config.xml File, and they
are further defined in the rest of this chapter. Use these elements to define the behavior of
the menu item you have added.
03-Apr-2017 187/311
CA Spectrum - 10.2 and 10.2.1
The following example adds a menu item that is called Ping Local to a menu called Connections.
<menu name="Connections">
<item name="Ping Local">
<accelerator modifiers="2">VK_I</accelerator>
<action>
<filter>
<has-attribute>AttributeID.NETWORK_ADDRESS</has-attribute>
</filter>
<context>com.aprisma.spectrum.app.topo.client.render.ModelContext </context>
<context>com.aprisma.spectrum.app.alarm.client.group.AlarmContext</context>
<launch-application>
<platform>
<os-name>Windows 9x</os-name>
<command>command.com /c start "Local ping {0}" cmd.exe /c
"ping.exe {0} && pause"</command>
</platform>
<platform>
<os-name>Windows</os-name>
<command>cmd.exe /c start "Local ping {0}" cmd.exe /c "ping.exe
{0} && pause"</command>
</platform>
<platform>
<command>/usr/dt/bin/dtterm -e ping -s {0}</command>
</platform>
<param>
<attribute>AttributeID.NETWORK_ADDRESS</attribute>
</param>
</launch-application>
</action>
</item>
</menu>
<toolbar-image>
<toolbar-image-rollover>
<toolbar-image-disabled>
You can use the following image formats for OneClick toolbar images: .png, .gif, .jpg, and .jpeg.
03-Apr-2017 188/311
CA Spectrum - 10.2 and 10.2.1
The recommended toolbar image size is 24 x 24 pixels. Store custom images in the <$SPECROOT>
/custom/images directory. When you reference an image that is placed in this directory, specify the
path from the images directory, for example, images/myimage.png.
The following line of code specifies a toolbar image using the relative path to the image file.
<toolbar-image>images/hints.gif</toolbar-image>
For a listing of all of the elements that are used in defining OneClick menu items, see the table in
Contextually Apply the Action.
Specify the code for the accelerator key using the capitalized letter on the keyboard, which is
preceded by VK_.
The modifiers attribute indicates the modifier key combinations as an integer where:
1 = Shift
2 = Ctrl
3 = Ctrl+Shift
8 = Alt
9 = Alt+Shift
10 = Ctrl+Alt
You are not required to specify a keyboard accelerator for a customized menu item.
<accelerator modifiers="2">VK_L</accelerator>
In the preceding example, the specified action of the menu item is performed if the 'L' key is pressed
while holding down the Control key (Ctrl+L).
Perform an Action
The <action> element specifies the action that is performed when the menu item is selected. You can
use the child elements that are shown in the table in Contextually Apply the Action to specify a
particular action.
The <context> element specifies the context in which the menu item is active so that the action can
be executed. This applies to both the standard and the right-click menu.
03-Apr-2017 189/311
CA Spectrum - 10.2 and 10.2.1
ModelContext
Indicates that the action should be available when the user selects a model. The format for this
context is as follows:
<context>com.aprisma.spectrum.app.topo.client.render.ModelContext</context>
AlarmContext
Indicates that the action should be available when the user selects an alarm. The format for this
context is as follows:
<context>com.aprisma.spectrum.app.alarm.client.group.AlarmContext</context>
TableContext
Indicates that the action should be available when the user selects any table. The format for this
context is as follows:
<context>com.aprisma.spectrum.app.util.table.TableContext</context>
If no tablename is specified, context is limited to any table. However, you can also limit context to
a single table using the following format:
<context>com.aprisma.spectrum.app.util.table.TableContext</context>
<table-name>TableName</table-name>
You can specify one or a combination of contexts. If no specified context matches the current
window context, the menu item is disabled. If no contexts are specified, the menu item is displayed in
all contexts.
The following table describes the elements that are used to implement an action.
03-Apr-2017 190/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 191/311
CA Spectrum - 10.2 and 10.2.1
<platfor <launch Used with <os-name>, specifies the application to launch based on the operating
m> - system of the OneClick client.
applicat
ion>
<validat <launch Used with the <command> element, specifies that the menu item should only be
e> - added to the menu if the command exists on the OneClick client and has execute
applicat permissions. If either condition is found to be false during OneClick startup, the
ion> menu item is not added to the menu.
If the <validate> element is not used, the menu item is always added to the menu,
but its state is determined by the value of other elements.
<os- <platfor Used with <platform>, specifies the application to be launched specific to the
name> m> operating system of the OneClick client.
<param <url>, Specifies a parameter that is passed to a browser, executable, or script.
> <comm
and>
<attribu <param Specifies an attribute used as a parameter.
te> >
<filter>
<has-attribute>AttributeID.NETWORK_ADDRESS</has-attribute>
</filter>
03-Apr-2017 192/311
CA Spectrum - 10.2 and 10.2.1
In the preceding example, the action needs the IP address of the alarmed model. Therefore, it should
only be enabled if the alarmed model has the Network_Address (ID 0x12d7f) attribute.
You can specify complex attribute filters with any combination of nested and and or filters.
The following example enables the item if the selected model has the Network_Address attribute and
the Condition (ID 0x1000a) attribute is RED.
<filter>
<and>
<has-attribute>AttributeID.NETWORK_ADDRESS</has-attribute>
<equals>
<attribute id="AttributeID.CONDITION">
<value>3</value> <!--red-->
</attribute>
</equals>
</and>
</filter>
The following table defines commonly used attributes where an attribute ID is expected.
Constant Attribute
AttributeID.NETWORK_ADDRESS Network Address (ID 0x12d7f)
AttributeID.MTYPE_ID Model Type Handle (ID 0x129ab)
AttributeID.MTYPE_NAME Model Type Name (ID 0x10000)
AttributeID.MODEL_OBJECT Model Handle (ID 0x11f53)
AttributeID.MODEL_NAME Model Name (ID 0x1006e)
AttributeID.MODEL_CLASS Model Class (ID 0x11ee8)
AttributeID.CONDITION Condition (ID 0x1000a)
AttributeID.DOMAIN_ID Landscape Handle (ID 0x129ac)
AttributeID.DOMAIN_NAME Landscape Name (ID 0x11d42)
AttributeID.MAC_ADDRESS MAC Address (ID 0x110df)
AttributeID.DEVICE_TYPE Device Type (ID 0x23000e)
You can use the constants defined in the following table for alarm attributes:
03-Apr-2017 193/311
CA Spectrum - 10.2 and 10.2.1
If you need to use an attribute other than one of the attributes listed in the 2 preceding tables,
specify the attribute using its hexadecimal attribute ID.
Launch a Browser
The <launch-browser> element lets you launch a specified URL in a browser and pass parameters to
the URL. These parameters can be hard-coded values or values from model attributes.
The following example launches the default browser on the client machine. The <url> element
specifies the URL pattern. You can specify parameters to substitute in the URL pattern by enclosing
the parameter number (starting at 0) in curly braces {}. You then specify <param> elements for each
parameter.
<launch-browser>
<url>http://{0}</url>
<param>
<attribute>AttributeID.NETWORK_ADDRESS</attribute>
</param>
</launch-browser>
CA Spectrum processes the <param> elements in order so the first one corresponds to the 0th
parameter in the URL pattern. A <param> element has a specific syntax. The most commonly used is
the <attribute> element. This element substitutes the value of the specified attribute for the selected
context. In the preceding example, the value of the Network Address attribute is substituted in the
URL pattern. For more complex parameters, see the definition of <param-type> in the file.
03-Apr-2017 194/311
CA Spectrum - 10.2 and 10.2.1
<$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/common/schema/basic-config.xsd
Whenever a URL is specified in XML customization code for OneClick, the URL formatting must
adhere to the standards published in the Internet Engineering Task Force (IETF) RFC 1738. Use of non-
standard characters in URLs results in unreliable browser performance including the browser not
locating the specified web page.
If you are using spaces or commas, or other "reserved" or "unsafe" characters in URLs (see the tables
later in this section), convert them to their ASCII equivalent value with the proper URL encoding. URL
encoding of a character consists of a "%" symbol, followed by the two-digit hexadecimal
representation (case-insensitive) of the ISO-Latin code point for the character. Examples for "space"
and "comma" are:
Note: Some browsers may encounter problems processing URLs even when using this
encoding.
Use of Ampersands
If you are using an ampersand in a URL or in XML customization code, you must convert it to &.
You can place URLs inside a CDATA section so that they are not parsed. This avoids possible problems
with URLs and the XML parser.
A CDATA section cannot contain the string "]]>", therefore, nested CDATA sections are not
allowed.
Also ensure there are no spaces or line breaks inside the "]]>" string.
Some characters can be misunderstood within URLs for various reasons. These characters should also
always be encoded. Unsafe characters and their hexadecimal encoding are provided in the following
table.
03-Apr-2017 195/311
CA Spectrum - 10.2 and 10.2.1
Space 20
Quotation marks (") 22
'Less Than' symbol ("<") 3C
'Greater Than' symbol (">") 3E
Pound' character ("#") 23
Percent symbol ("%") 25
Left Curly Brace ("{") 7B
Right Curly Brace ("}") 7D
Vertical Bar/Pipe ("|") 7C
Backslash ("\") 5C
Caret ("^") 5E
Tilde ("~") 7E
Left Square Bracket ("[") 5B
Right Square Bracket ("]") 5D
Grave Accent ("`") 60
URLs use some characters for special use in defining their syntax. When these characters are not used
in their special role inside a URL, they need to be encoded. These characters and their hexadecimal
encoding are provided in the following table.
03-Apr-2017 196/311
CA Spectrum - 10.2 and 10.2.1
Specify a Username
You can pass the OneClick username of the current user to an application, Web browser, or
executable requiring a username. Use the following expression to specify the logged-in username of
the user:
<param>
<expression>
com.aprisma.spectrum.app.util.context.DefaultApplicationContext.getGlobal
Parameter(com.aprisma.spectrum.app.util.context.ApplicationContext.
USER_PARAMETER_NAME)
</expression>
</param>
The following example launches a browser to a specified URL and passes the username to the
browser.
<launch-browser>
<url> http://acme.com?user={0}</url>
<param>
<expression> com.aprisma.spectrum.app.util.context.DefaultApplicationContext.
getGlobalParameter(com.aprisma.spectrum.app.util.context.ApplicationContext.
USER_PARAMETER_NAME)
</expression>
</param>
</launch-browser>
Example 1: <launch-application>
The following example launches an application called myapp on the client machine and passes in the
IP address of the selected model. As with the <launch-browser> action, you can substitute any
number of parameters.
<launch-application>
<command>myapp {0}</command>
<param>
<attribute>AttributeID.NETWORK_ADDRESS</attribute>
</param>
</launch-application>
The <command> element specifies the command or executable to execute. You can provide the path
to the command or executable in one of two ways:
03-Apr-2017 197/311
CA Spectrum - 10.2 and 10.2.1
You can specify the path on each client via an environment variable. To do this in the Solaris
environment, use the PATH environment variable. To create an environment variable in the
Windows environment, select My Computer,Properties,Advanced, and then select the
Environment Variables button.
You can specify an absolute path to the command or executable. If you do this, keep in mind that
the path must be the same on each OneClick client. Path statements in the Windows
environment should use a double backslash instead of a single backslash, for example:
C:\\Windows\\system32\\cmd.exe
Note: You can use the <validate> element to verify that the command or executable exists
on the OneClick client and has execute permissions. If either of these conditions is found to
be false during OneClick startup, the associated menu item is not added to the OneClick
menu. (If the <validate> element is not used, the menu item is always added to the menu,
but its state is determined by the value of other elements.)
If you use the <validate> element, you must specify an absolute path in the <command> element, as
shown in the following example:
<launch-application>
<command>c:\\windows\\system32\\notepad.exe</command>
<validate/>
</launch-application>
The command arguments are delimited by only spaces. If you would like to have a space within
an argument, you must either place quotes around the argument or use the escape character '\'
prior to the internal space(s).
If you would like to embed quotes within an argument, you must place the escape character '\'
prior to the quote.
If any of your command arguments contain commas, CA Spectrum automatically places the
argument within quotes. This is important to know in case that you are going to parse an
argument that is a numeric value that contains commas.
CA Spectrum replaces arguments that return null or have a string length of zero with empty
quotes ( ).
Example 2: <launch-application>
The following example uses the <platform> element to specify different commands for different
platforms. The <os-name> element specifies the operating system name and the <command>
element specifies the command to execute on that operating system. The <os-name> element is
optional. If you do not specify the <os-name>, the associated command is the default such that if no
other platforms match, the default command is executed.
03-Apr-2017 198/311
CA Spectrum - 10.2 and 10.2.1
<launch-application>
<platform>
<os-name>Windows</os-name>
<command>cmd.exe /c start "ping {0}" cmd /c "ping.exe {0}
&&pause"</command>
</platform>
<platform>
<os-name>SunOS</os-name>
<command>>/usr/dt/bin/dtterm -e ping {0}</command>
</platform>
<param>
<attribute>AttributeID.NETWORK_ADDRESS</attribute>
</param>
</launch-application>
At runtime, CA Spectrum compares the specified OS names to the OS name returned by the os.
name Java property. CA Spectrum uses a best-match algorithm so only a prefix of the OS name need
be specified. You may specify any of the following OS names:
Note: This action can only be used to launch a script; it cannot be used to launch a user
interface.
03-Apr-2017 199/311
CA Spectrum - 10.2 and 10.2.1
The following example launches myscript on the web server, passing it the model name and model
type name of the selected model. Note that the path that is shown in the <command> element is a
path for a Windows web server.
<launch-web-server-script>
<command>c:/scripts/myscript {0} {1}</command>
<param>
<attribute>AttributeID.MODEL_NAME</attribute>
</param>
<param>
<attribute>AttributeID.MTYPE_NAME</attribute>
</param>
</launch-web-server-script>
Use the <platform> tag with the <launch-web-server-script> as described in Launch an Application
From OneClick.
Note: The <column-name> element works with TableContext only in the <context>
element.
The following example passes values from three columns (Condition, Status, and Type) to the
"NewTicket" command. The <command> element specifies the command pattern. You specify
parameters to substitute in the command by enclosing the parameter number (starting at 0) in curly
braces {}. You then specify <param> elements for each column that passes values to the command.
<context>com.aprisma.spectrum.app.util.table.TableContext</context>
<command>$SCRIPT_PATH/NewTicket.exe {0} {1} {2} {3}</command>
<param>
<column-name>Condition</column-name>
</param>
<param>
<column-name>Status</column-name>
</param>
03-Apr-2017 200/311
CA Spectrum - 10.2 and 10.2.1
<param>
<column-name>Type</column-name>
</param>
CA Spectrum processes the <param> elements in order so the first one corresponds to the 0th
parameter in the command pattern. By default, CA Spectrum passes the raw value to the command.
To preserve the formatting information from the table, use the <formatted/> option, as follows:
<param>
<column-name>Condition
<formatted/>
</column-name>
</param>
Note: The formatted option attempts to render the specified column as seen in the table.
However, CA Spectrum cannot pass images as arguments to commands and, therefore,
passes the raw value only.
By default <display-exit-status> displays Success if the exit code is 0 and Failed with error code #
otherwise. You can change the default behavior by specifying <status> child tags that map an exit
code to a custom message to display.
<display-exit-status>
<status code="1">Could not open file</status>
<status code="2">Bad parameter</status>
<status code="3">Could not connect to the server</status>
<status default="true">Unknown error code {0}</status>
</display-exit-status>
This example maps status codes 1, 2, and 3 to specific message strings. The last status code specifies
default=true, mapping all other error codes except 0, which by default maps to Success. If exit
code 0 does not indicate success, you can override it with a <status> tag. The {0} in the message
string substitutes the exit code.
By default, <display-output> displays both the standard output and standard error output from the
process. You can display only the standard output by specifying:
<display-output stdout="t"/>
03-Apr-2017 201/311
CA Spectrum - 10.2 and 10.2.1
<display-output stderr="t"/>
Note: The <display-exit-status> and <display-output> elements can only be used for
command line applications or scripts and not GUI applications. OneClick waits for the script
to complete before being available to the user again.
Adding customized alarm attributes that display in OneClick is a multi-step process that requires
using the Model Type Editor and the Alarm Preferences dialog, in addition to modifying the Alarm
table and the Alarm Information view to display the custom alarm attributes.
1. Create the custom alarm attributes by adding them to the GlobalAlarm model type using the
Model Type Editor. The attribute group ID value must be set to equal 11f4c.
Note: For information on how to add custom alarm attributes to the GlobalAlarm
model type see Model Type Editor (see page 107). The section provides complete
instructions on accessing and using the Model Type Editor.
2. Add a column to the Alarm table that displays the new customized alarm attribute by
customizing the alarm-table-config.xml file. Modify Table Columns provides an example
showing how to add a column to a table configuration file.
3. Add a field to the Alarm Details view configuration that displays the alarm attribute in the
alarms Information tab by customizing the view-alarmdetails-config.xml file. Extend or
Modify an Information View provides information and examples on how to add a subview to
an existing information view.
You can also apply a custom privilege to the new alarm attribute by customizing the custom-
privileges.xml file. Doing this limits which users or user groups or specific privileges are
required to view the customized alarms. The name of the privilege must use the following
syntax:
alarm-write-<attribute ID in hex>
The following example adds the new privilege to the Alarm Management group.
<alarm-write-ffff0000 type="write">
<group scope="alarm-manager">alarm-mgmt</group>
<label>New Alarm Attr</label>
</alarm-write-ffff0000>
03-Apr-2017 202/311
CA Spectrum - 10.2 and 10.2.1
5. You must restart the OneClick server in order to apply the new privilege.
6. You must restart the OneClick Console to view the changes made to the Alarms table and
Alarm Information view.
This section discusses some of the ways that you can modify existing tables found in the OneClick
Console. A list of the table elements available in OneClick and their descriptions are presented in
Example: Defining a Table Column. Specific examples for modifying table columns are presented in
the sections listed below.
The following example shows a portion of an XML file used to define a table. Rather than defining
each column in the same file that defines the entire table, the example uses separate files to define
the first two columns in the table. The example uses the idref attribute with each <column> element
to link to the file that defines the column.
<table id="table-licenses-config"
xmlns="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/table-config.xsd">
<swing-row-template>
<enumerated-color idref="alternatingrow-color-config"/>
</swing-row-template>
03-Apr-2017 203/311
CA Spectrum - 10.2 and 10.2.1
<swing-table-template>
<show-vertical-lines>true</show-vertical-lines>
<show-horizontal-lines>false</show-horizontal-lines>
</swing-table-template>
<swing-header-row-template>
<static-color idref="row-header-color-config"/>
</swing-header-row-template>
<column-list>
<column idref="column-servicestate-config"/>
<column idref="column-modelname-config">
<default-width>300</default-width>
</column>
</column-list>
.
.
</table>
The first column is defined in the column-servicestate-config.xml file. The beginning portion of this
file is shown below. Note the id attribute used with the <column> element to define this file as
column-servicestate-config.
<column id="column-servicestate-config"
xmlns="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/table-config.xsd">
1. Identify the default factory XML file that builds the table that you want to modify.
Many of the table files used to display data in the OneClick console are located in
<$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/topo/config. All of the table files are
named for the functionality that they display. For example, the table used to display interface
information for each model is called table-common-ifconfig-config.xml.
3. Open the file in a text editor in order to make the appropriate modifications.
4. Use idref to reference the table configuration you are extending with this new column
configuration (see Step 1).
5.
03-Apr-2017 204/311
CA Spectrum - 10.2 and 10.2.1
5. Construct a new column using the XML elements defined in Example: Defining a Table
Column. The example that follows this procedure shows how some of these elements are
used to define a column.
6. Find the <column-list> element in the XML file. The <column-list> element contains all of the
<column> elements used to define each column in the table.
7. Define a <column> element within the <column-list> element. The columns display in the
order they appear within the <column-list> element.
9. Insert a <content> and an <attribute> element to define the contents you want to display in
the column.
10. (Optional) Use the <default-width> element to define the default width of the column.
11. Save and close the modified file, and restart the OneClick console to view the changes.
<column-list>
<column>
<name>Interface</name>
<content>
<attribute>0x100c4</attribute>
</content>
<default-width>30</default-width>
</column>
.
.
.
</column-list>
The following table describes the elements used for modifying a table.
03-Apr-2017 205/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 206/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 207/311
CA Spectrum - 10.2 and 10.2.1
If you do not specify <swing-cell-template> in a column cell definition, the raw output from the
<content> element is displayed without refinement. The elements you can use in defining <swing-cell-
template> are described in the following table.
03-Apr-2017 208/311
CA Spectrum - 10.2 and 10.2.1
The following Java classes are available to use with <renderer-class> to render or manipulate and
format raw data for display in table column cells.
TextAreaCellRenderer
Use this renderer to display text that wraps at the cell width.
Classname: com.aprisma.spectrum.app.swing.table.render.TextAreaCellRenderer
The following example creates a cell that displays text and allows it to wrap at a defined width,
displaying in multiple lines of fixed width. This technique is used in the Notes field on the devices
Information tab. Text entered by operators in this field wraps at a predetermined column width.
<swing-cell-template>
<text/>
<renderer-class>
com.aprisma.spectrum.app.swing.table.render.TextAreaCellRenderer
</renderer-class>
</swing-cell-template>
ListAttributeRenderer
Displays the values from a list-type attribute in a scrollable list.
Classname: com.aprisma.spectrum.app.swing.table.render.ListAttributeRenderer
Supported Parameters:
<maxRowsToDisplay> - Integer; specifies the maximum number of viewable list entries, scrolling
is turned on after this maximum is exceeded.
<order> - True or false; if true, the users can modify the list order if the column is editable.
<add> - True or false; if true, users can add new entries to the list if the column is editable.
<remove> - True or false; if true, users can remove entries from the list if the column is editable.
03-Apr-2017 209/311
CA Spectrum - 10.2 and 10.2.1
<remove> - True or false; if true, users can remove entries from the list if the column is editable.
<valuePrompt> - The text displayed when prompting the user to add a new value to the list. If not
specified, a default prompt is used.
The following example defines the maximum number of rows displayed in the cell as four; if there are
more than four rows, the list becomes scrollable.
<swing-cell-template>
<renderer-class>
com.aprisma.spectrum.app.swing.table.render.ListAttributeRenderer
<param name="maxRowsToDisplay">4</param>
<param name="attrID">0x25e0039</param>
<param name="add">true</param>
<param name="remove">true</param>
<param name="valuePrompt">SNMP Port</param>
</renderer-class>
</swing-cell-template>
ListAttributeOIDRenderer
Displays the OIDs from a list-type attribute in a scrollable list.
Classname: com.aprisma.spectrum.app.swing.table.render.ListAttributeOIDRenderer
<oidPrompt> - The text displayed when prompting the user to add a new OID to the list. If not
specified, a default prompt is used.
ActionButtonCellRenderer
Displays a button in the cell that sends an action to the model when clicked.
Classname: com.aprisma.spectrum.app.topo.client.render.ActionButtonPanelCellRenderer
Supported Parameters:
<actionID> - Required parameter; the CA Spectrum attribute ID for the action the button sends.
<prompt> - The text displayed when prompting the user to confirm a button click. If not specified,
no prompt is displayed.
<confirmSuccess> - True or false; if true, a message is displayed if the action was successful.
03-Apr-2017 210/311
CA Spectrum - 10.2 and 10.2.1
<swing-cell-template>
<renderer-class>
com.aprisma.spectrum.app.topo.client.render.ActionButtonCellRenderer
<param name="actionID">0x0001011f</param>
<param name="text">Reevaluate Model Names</param>
<param name="toolTipText">
Reevaluates all model names based on the model naming order of VNM
</param>
<param name="confirmSuccess">true</param>
</renderer-class>
</swing-cell-template>
ActionButtonPanelCellRenderer
Displays one or more buttons that each send an action to the model. All parameters are specified as a
semi-colon separated list, one per button.
Classname: com.aprisma.spectrum.app.topo.client.render.ActionButtonPanelCellRenderer
The following example defines two buttons, Reconfigure Model and Discover Connections. The
parameters with a value for each button separate each value with a semi-colon (;).
<swing-cell-template>
<renderer-class>
com.aprisma.spectrum.app.topo.client.render.ActionButtonPanelCellRenderer
<param name="actionID">0x1000e;0x25e0022</param>
<param name="text">Reconfigure Model;Discover Connections</param>
<param name="confirmSuccess">true;true</param>
</renderer-class>
</swing-cell-template>
AttrToggleButtonCellRenderer
Displays a button with text that can be one of two values based on two specified values of an
attribute. When the button is clicked, the opposite value is written to the attribute.
Classname: com.aprisma.spectrum.app.topo.client.render.AttrToggleButtonCellRenderer
Supported Parameters:
<attrID> - Required parameter. ID of the CA Spectrum attribute that the button toggles the value
of.
<firstValueMapping> - Required parameter. Specifies the first attribute value and the text to
display when the attribute equals this value, separated by a semi-colon.
<secondValueMapping> - Required parameter. Specifies the second attribute value and the text
to display when the attribute equals this value, separated by a semi-colon.
<promptOnFirstValue> - Specifies the text used to prompt the user for confirmation when the
03-Apr-2017 211/311
CA Spectrum - 10.2 and 10.2.1
<promptOnFirstValue> - Specifies the text used to prompt the user for confirmation when the
button is clicked and the attribute equals the first value. If not specified, no prompt is displayed.
<promptOnSecondValue> - Specifies the text used to prompt the user for confirmation when the
button is clicked and the attribute equals the second value. If not specified, no prompt is
displayed.
<disableOnFirstValue> - True or false; if true, the button is disabled when the attribute equals the
first value.
<disableOnSecondValue> - True or false; if true, the button is disabled when the attribute equals
the second value.
<swing-cell-template>
<renderer-class>
com.aprisma.spectrum.app.topo.client.render.AttrToggleButtonCellRenderer
<param name="attrID">0x11b6e</param>
<param name="firstValueMapping">true;Start</param>
<param name="secondValueMapping">false;Stop</param>
<param name="promptOnSecondValue">Are you sure you want to stop?</param>
</renderer-class>
</swing-cell-template>
BoldAttributeTableCellRenderer
Displays the cell text in bold.
Classname: com.aprisma.spectrum.app.swing.table.render.BoldAttributeTableCellRenderer
<swing-cell-template>
<text/>
<renderer-class>
com.aprisma.spectrum.app.swing.table.render.BoldAttributeTableCellRenderer
</renderer-class>
</swing-cell-template>
03-Apr-2017 212/311
CA Spectrum - 10.2 and 10.2.1
The following figure shows the default Acknowledged field in the Alarms table and the Acknowledged
field after customizing it to make it editable.
<table idref="alarm-table-config">
<column-list>
<column idref="column-alarmacknowledge-config">
<editable/>
<default-width>37</default-width>
</column>
</column-list>
</table>
03-Apr-2017 213/311
CA Spectrum - 10.2 and 10.2.1
SPEC--Table column with instanced attribute before rendering values into separate rows
When the <refID> value is added to the XML file, CA Spectrum displays the attribute values correctly,
rendering only the particular value from the list that applies to a given row.
SPEC--Table column with instanced attribute after rendering values into separate rows
<refID> - Required parameter. Reference ID for the CA Spectrum attribute that is used for
indexing the attribute values.
The following example shows the contents of the column-portname-config.xml file used to create a
custom table column for the Port Name attribute.
03-Apr-2017 214/311
CA Spectrum - 10.2 and 10.2.1
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/column-config.xsd">
<name>Port Name</name>
<content>
<attribute>0x11c0056</attribute>
<renderer>
<param name="attrID">0x11c0056</param>
<param name="refID">0x1297f</param>
com.aprisma.spectrum.app.util.render.ObjectIDValueListRenderer
</renderer>
</content>
</column>
Customize the Alarms table to display in alternating gray and white rows by changing the swing-row-
template definition from enumerated-severity-color-config to alternatingrow-color-config.
1. Create an alarm-table-config.xml file (if one does not already exist) in the <$SPECROOT>
/custom/alarm/config directory.
2. Use the idref attribute to reference the factory file being extended: alarm-table-config.xml.
<table idref="alarm-table-config">
<swing-row-template>
<enumerated-color idref="alternatingrow-color-config"/>
</swing-row-template>
</table>
03-Apr-2017 215/311
CA Spectrum - 10.2 and 10.2.1
1. Identify the appropriate XML file that is used to build the table. All of the table files that are
used to display data in the OneClick console are located in the <$SPECROOT>/tomcat/webapps
/spectrum/WEB-INF/topo/config directory. All of the table files are named after the
functionality that they display. For example, the table used to display interface information
for each model is called table-common-ifconfig-config.xml.
3. Open the file in a text editor in order to make the appropriate modifications.
5. Insert the XML to create the default sort after the </column-list> using the <default-sort>
element.
<table>
<column-list>
.
.
.
</column-list>
<default-sort>
<sort-column-list>
<sort-column>
<name>Name_of_first_column_to_sort</name>
<direction>ascending</direction>
</sort-column>
<sort-column>
<name>Name_of_second_column_to_sort</name>
<direction>ascending</direction>
</sort-column>
<sort-column>
<name>Name_of_third_column_to_sort</name>
<direction>ascending</direction>
</sort-column>
</sort-column-list>
</default-sort>
03-Apr-2017 216/311
CA Spectrum - 10.2 and 10.2.1
Note: Include the specific text for the contents of each <name> element based on the
column list entries.
2. Find the following code in the content-iftree-config.xml file that creates the column
containing the model name attribute:
<content id="content-iftree-config"
xmlns ="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/column-config.xsd">
<attribute>AttributeID.MODEL_NAME</attribute>
<!-- If the model name is not filled in or it's a GnPort, use Component_OID-->
<expression>
(((String)value()).length() == 0 ||
((String)value()).equals("GnPort")) ?
attr(0x1006a).toString(): value()
</expression>
</content>
Note: The contents of the <expression> element are specific to the use of the
Model_Name attribute and should be removed when specifying other attributes.
3. Customize the attribute displayed in the Port Name column by changing the
<attribute><value></attribute> element to contain the attribute you want to display. To
display a different attribute, change <value> to the desired attribute ID. You can specify the
integer ID (for example, 0x129e0) or a predefined constant. The table beneath this procedure
lists the predefined Port Attributes and their integer IDs.
To display the port description, edit the file as follows:
<content id="content-iftree-config"
xmlns ="http://www.aprisma.com"
03-Apr-2017 217/311
CA Spectrum - 10.2 and 10.2.1
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/column-config.xsd">
<attribute>AttributeID.PORT_DESCRIPTION</attribute>
</content>
5. Close and restart the OneClick client to see the changes take effect.
1. Edit the definition of the interfaces table content definition file acquire the ifIndex data. Check
the <$SPECROOT>/custom/topo/config directory to see if the content-iftree-config.xml file
exists. The file exists in this directory if previous customizations have been made to it.
2. If the file is not in this custom directory, create it by copying it from <$SPECROOT>/tomcat
/webapps/spectrum/WEB-INF/topo/config and pasting it into the <$SPECROOT>/custom/topo
/config directory.
<attribute>AttributeID.MODEL_NAME</attribute>
<attribute>0x1006a</attribute>
03-Apr-2017 218/311
CA Spectrum - 10.2 and 10.2.1
<name>com.aprisma.spectrum.app.util.render.ModelNameColumn</name>
<name>Index</name>
10. Open the <$SPECROOT>/custom/topo/config directory and check to see if the interfaces-
table-config.xml file already exists there. If it does not, go to the <$SPECROOT>/tomcat
/webapps/spectrum/WEB-INF/topo/config/ directory and find the interfaces-table-config.xml
file. Copy it and paste it into the <$SPECROOT>/custom/topo/config directory.
<name>com.aprisma.spectrum.app.util.render.ModelNameColumn</name>
<name>Index</name>
14. Close all of the text files and restart the OneClick console in order for the changes to take
effect.
If you would like to retain the interface model name in the table, implement the following additional
instructions:
<column idref="column-iftree-config">
<default-width>150</default-width>
</column>
<column idref="column-ifmodelname-config">
<default-width>150</default-width>
</column>
03-Apr-2017 219/311
CA Spectrum - 10.2 and 10.2.1
5. Close and restart the OneClick console in order for the changes to take effect.
This section describes how to add or extend OneClick support for a CA Spectrum model type or
model class. For example, you may want to add specific OneClick support for a management module
that you have created with the Generic SNMP Toolkit in CA Spectrum.
Create a Registration
If you have created a new model type or model class, you can use the XML elements described in this
chapter to configure the associated model appearance, available information, and views within the
OneClick interface.
Contents registry
03-Apr-2017 220/311
CA Spectrum - 10.2 and 10.2.1
Both of these registrations work in conjunction with each other to provide effective OneClick support
for CA Spectrum models. The component details registry acts as an extension of the contents registry
in order to define general and specific OneClick device support.
Because most models of a given model class will share the same OneClick device support, typically
you define a contents registry for the model class to define this general support. However, for a given
model class, you might want to expose different information in the Component Details panel based
on model type. To accomplish this, you define a component details registry for the applicable model
type. As a result, the model receives its general, shared content from the contents registry, and it
receives its more specific component details content from the component details registry.
Consider the example illustrated in the following figure. There are two routers of model class 4
(switch-router). They both receive their general information from the contents registry that has been
registered with model class 4. However, the model of type 0xffe00000 receives its component details
content from the component details registry. Because the model of type 0xffe00001 does not have a
component details registry, it receives all of its configuration content from the contents registry.
SPEC--register_model
If the default configuration meets most of your requirements, but you want to modify the
information in the Component Detail panel, you should only create a component details registry for
the applicable model type.
03-Apr-2017 221/311
CA Spectrum - 10.2 and 10.2.1
However, if you create a new model class, or you want to define a specific model appearance for a
model type, you need to create a contents registry entry using the XML elements described in the
following table.
03-Apr-2017 222/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 223/311
CA Spectrum - 10.2 and 10.2.1
Within the contents registry entry, you need to specify an icon registration ID (<icon-reg-id>). As
shown in the following figure, this ID maps to theme configuration entries (<theme-config>) that
define the XML files used to construct the model appearance for a specific theme. By default,
OneClick includes three icon themes: OneClick, Utility, and Classic.
SPEC--model_appearance
03-Apr-2017 224/311
CA Spectrum - 10.2 and 10.2.1
In the preceding XML example, the contents registry for model class 7 specifies the <icon-reg-id> as
mydevice-icon-config. For this ID, a theme configuration is created for each of the three themes
included with OneClick: OneClick, Utility, and Classic. Within the theme configurations, the XML files
that construct the icons are specified.
The following procedure outlines the process to define a models appearance in the OneClick user
interface using each of these elements.
3. Create a contents registry entry for the applicable model types and/or model classes.
<contents-registry>
...
<model-type>0xffff0000</model-type>
<model-class>2</model-class>
...
</contents-registry>
4. Within the contents registry, specify an icon registration ID. This ID will map to theme
configuration entries.
5. For each desired theme, create a <theme-config> entry. These entries will be identified using
the registration ID from the previous step.
6. Design the appearance of the icon for each theme as described in Design On-Page and Off-
Page Reference Icons.
7. Define the tooltips for the icons as described in Define Model Icon Tooltips.
8. Once you have created support for a models appearance, you may want to customize the
views and information available in the models Component Detail panel.
10. Restart the OneClick client for your changes to take effect.
03-Apr-2017 225/311
CA Spectrum - 10.2 and 10.2.1
Utility
Classic
The default OneClick theme is the most robust and, therefore, is the recommended theme for use.
The elements that you can use to create a theme configuration are described in the following table:
The <on-page> and <off-page> elements specify the XML files used to construct the standard version
and off-page reference version of the icon as they would appear within the Topology.
The image used within the Navigation panel hierarchy is defined by one of the following three <*-
cellicon> elements:
<enumerate-cellicon>
<dynamic-cellicon>
<static-cellicon>
03-Apr-2017 226/311
CA Spectrum - 10.2 and 10.2.1
<theme-config>
<icon-reg-id>mydevice-icon-config</icon-reg-id>
<theme>Utility</theme>
<on-page idref="mydeviceutil-iconbase-config"/>
<off-page idref="mydeviceutil-oprbase-config"/>
<enumerated-cellicon idref="component-cellicon-config"/>
</theme-config>
<theme-config>
<icon-reg-id>mydevice-icon-config</icon-reg-id>
<theme>Classic</theme>
<on-page idref="mydeviceclassic-iconbase-config"/>
<off-page idref="mydeviceclassic-oprbase-config"/>
<enumerated-cellicon idref="component-cellicon-config"/>
</theme-config>
<theme-config>
<icon-reg-id>mydevice-icon-config</icon-reg-id>
<theme>OneClick</theme>
<on-page idref="mydeviceoc-iconbase-config"/>
<off-page idref="mydeviceoc-oprbase-config"/>
<enumerated-cellicon idref="component-cellicon-config"/>
</theme-config>
On-page
Off-page
The on-page representation is the standard appearance of the model and, therefore, the more
important appearance. The off-page representation is used when the model is drawn in a topology as
a reference to a model that exists in a different topological view. That is, when the model is
connected to another model that resides in a different topology.
If the model supports connections (links) within the OneClick topology, you should specify an off-
page reference icon (image) in addition to an on-page version.
You specify the on-page and off-page icons within the theme configuration using the <on-page> and
<off-page> elements. These elements specify the XML that constructs the corresponding model icon.
The following table defines the elements that can be used within the XML files referenced by the <on-
page> and <off-page> elements.
03-Apr-2017 227/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 228/311
CA Spectrum - 10.2 and 10.2.1
<theme-config >
<icon-reg-id>mydevice-icon-config</icon-reg-id>
<theme>Utility</theme>
<on-page idref="mydevice-utility-iconbase-config"/>
<off-page idref="mydevice-utility-oprbase-config"/>
<enumerated-cellicon idref="component-cellicon-config"/>
</theme-config>
This example shows an icon configuration file using the XML elements described in the table in
Design On-Page and Off-Page Reference Icons.
03-Apr-2017 229/311
CA Spectrum - 10.2 and 10.2.1
<stroke>Invisible</stroke>
<!-- ===========================================================
- Specify the location of where pipes will connect to the icon.-
============================================================ -->
<pipe-connection>
<x>73</x>
<y>36</y>
</pipe-connection>
<components>
<!-- ==========================================================
- Definition of the model's base image. The color of this
- image is determined by the condition of the model.-
========================================================== -->
<image-component index="2">
<x>0</x>
<y>0</y>
<width>139</width>
<height>84</height>
<image idref="oneclick-orgservice-iconbase-image-config"/>
</image-component>
</components>
</icon-config>
Rectangle
Rounded Rectangle
Ellipse
Polygon
Line
Rectangle
Elements used to specify a rectangle in OneClick are defined in the following table.
03-Apr-2017 230/311
CA Spectrum - 10.2 and 10.2.1
<shape-rectangle>
<x>26</x>
<y>24</y>
<width>45</width>
<height>14</height>
</shape-rectangle>
Rounded Rectangle
Elements used to specify a rounded rectangle in OneClick are defined in the following table.
<shape-roundrectangle>
<x>0</x>
<y>0</y>
<width>89</width>
<height>68</height>
<arcwidth>12</arcwidth>
<archeight>12</archeight>
</shape-roundrectangle>
Ellipse
Elements used to specify an ellipse in OneClick are defined in the following table.
<shape-ellipse>
03-Apr-2017 231/311
CA Spectrum - 10.2 and 10.2.1
<x>26</x>
<y>24</y>
<width>45</width>
<height>14</height>
</shape-ellipse>
Polygon
Elements used to specify a polygon in OneClick are defined in the following table.
<shape-polygon>
<point x="0" y="28" />
<point x="10" y="10" />
<point x="28" y="0" />
<point x="116" y="0" />
<point x="134" y="10" />
<point x="144" y="28" />
<point x="144" y="65" />
<point x="134" y="80" />
<point x="116" y="92" />
<point x="28" y="92" />
<point x="10" y="80" />
<point x="0" y="65" />
</shape-polygon>
Line
Elements used to specify a line in OneClick are defined in the following table.
03-Apr-2017 232/311
CA Spectrum - 10.2 and 10.2.1
<shape-line>
<x1>5</x1>
<y1>5</y1>
<x2>40</x2>
<y2>40</y2>
</shape-line>
<icon-config id="device-iconbase-config">
<static-color idref="device-iconbase-color-config"/>
<shape-roundrectangle >
<x>0</x>
<y>0</y>
<width>89</width>
<height>68</height>
<arcwidth>12</arcwidth>
<archeight>12</archeight>
</shape-roundrectangle>
SPEC--create_icon_shape
X and Y Coordinates
The x and y coordinates define the upper left-hand corner of the image. As the value of x increases,
the upper left-hand corner of the image moves from the left to the right. As the value of y increases,
the upper left-hand corner of the image moves from the top to the bottom. The image in the
preceding section shows the upper left corner of the icon shape at 0,0, defined in Example: Icon
Shape Code.
03-Apr-2017 233/311
CA Spectrum - 10.2 and 10.2.1
<pipe-connection>
<x>73</x>
<y>36</y>
</pipe-connection>
<image-component index="1">
<x>0</x>
<y>0</y>
<width>139</width>
<height>84</height>
<image idref="oneclick-orgservice-iconbase-image-config"/>
</image-component>
The <image> element references the image definition file shown in Example: Image Definition File.
This generates the image component shown in the following figure, showing the model in the
CRITICAL (3) state.
SPEC--def_img_cmp
The following table describes the elements used for defining image components.
03-Apr-2017 234/311
CA Spectrum - 10.2 and 10.2.1
The following XML code defines the image used for <image-component index =2> in Example: Icon
Configuration File. The example uses the <select>, <case>, and <expression> elements to
conditionally select an image based on the value of the condition attribute. The example uses the
<yield> to define which image should be used when a condition is met. Note that the image is in PNG
file format. Images used for customization purposes should be stored in the <$SPECROOT>/tomcat
03-Apr-2017 235/311
CA Spectrum - 10.2 and 10.2.1
file format. Images used for customization purposes should be stored in the <$SPECROOT>/tomcat
/webapps/spectrum/images directory. Express the path to an image placed in this directory from the
images directory, as images/myimage.png.
03-Apr-2017 236/311
CA Spectrum - 10.2 and 10.2.1
images/oneclick_org_service_grey.png
</yield>
</case>
<case>
<expression>
attrInt(AttributeID.CONDITION) == 6
</expression>
<yield>
images/oneclick_org_service_blue.png
</yield>
</case>
<default>
images/oneclick_org_service_blue.png
</default>
</select>
</image>
This icon configuration example generates the image that follows it. The example assumes that the
condition of the model is CRITICAL (3).
03-Apr-2017 237/311
CA Spectrum - 10.2 and 10.2.1
<!-- ==========================================================
Definition of the model's base image. Image color is determined by model condition.
-========================================================== -->
<image-component index="2">
<x>0</x>
<y>0</y>
<width>139</width>
<height>84</height>
<image idref="oneclick-orgservice-iconbase-image-config"/>
</image-component>
</components>
</icon-config>
SPEC--def_img_cmp2
SPEC--create_icon_labl
03-Apr-2017 238/311
CA Spectrum - 10.2 and 10.2.1
<!-- =================================================================
Definition of the model label.
====================================================================-->
<label-component idref="default-iconlabel-config" index="1">
<x>0</x>
<y>67</y>
<column-list>
<field-column>
<column idref="column-modelname-config"/>
<column idref="column-devicetype-config"/>
</field-column>
</column-list>
</label-component>
This example defines the model label by extending the functionality of the default-iconlabel-config.
xml file. This example creates a label that displays two fields of text defined in the two column
statements. The column statements create two rows in the label for the content defined by the
column configuration files they reference. This label displays the model name and device type in the
icon label. The code does not specify a minimum or maximum column width for the label (see the
following table), so it has a fixed width of 95 pixels, the default condition.
03-Apr-2017 239/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 240/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 241/311
CA Spectrum - 10.2 and 10.2.1
SPEC--create_FW_ico_lbl
SPEC--def_sel_cmp
03-Apr-2017 242/311
CA Spectrum - 10.2 and 10.2.1
03-Apr-2017 243/311
CA Spectrum - 10.2 and 10.2.1
============================================================== -->
<image-component index="3">
<x>0</x>
<y>0</y>
<width>139</width>
<height>84</height>
<image idref="oneclick-orgservice-iconbase-image-config"/>
</image-component>
<!-- =============================================================
Definition of the image to show when the model is selected.
============================================================= -->
<image-component index="4">
<x>8</x>
<y>0</y>
<width>131</width>
<height>72</height>
<selection-component>true</selection-component>
<image>
<select>
<default>
com/aprisma/spectrum/app/topo/images/
oneclick_selected_container.png
</default>
</select>
</image>
</image-component>
<!--==============================================================
Definition of the model name text field.
============================================================== -->
<text-component idref="oneclick-default-textfield-config"index="5">
<x>5</x>
<y>97</y>
<width>85</width>
<height>13</height>
<horizontal_alignment>left</horizontal_alignment>
<text>
<attribute>0x1006e</attribute>
</text>
</text-component>
<!-- =============================================================
Definition of the model type name text.
============================================================= -->
<text-component idref="oneclick-default-textfield-config" index="6">
<x>5</x>
<width>85</width>
<height>12</height>
<horizontal_alignment>left</horizontal_alignment>
<text>
<attribute>AttributeID.DEVICE_TYPE</attribute>
<expression>
( value() == null || ((String)value()).length() ==
0 ) ? attr(AttributeID.MTYPE_NAME ) : value()
</expression>
03-Apr-2017 244/311
CA Spectrum - 10.2 and 10.2.1
</text>
</text-component>
<!-- ============================================================
Definition of the rollup condition symbol.
============================================================= -->
<image-component index="7">
<x>0</x>
<y>54</y>
<width>19</width>
<height>19</height>
<image idref="oneclick-rollup-triangle-image-config"/>
</image-component>
</components>
</icon-config>
A tooltip configuration for models of model class 2, 5, 11, and 12 is registered to use the tooltip that
is defined within the mydevice-tooltip-config.xml file. Verify the following example:
<contents-registry>
<reg-id>device-icon-config</reg-id>
<tooltip-config>mydevice-tooltip-config</tooltip-config>
<model-class>2</model-class>
<model-class>5</model-class>
<model-class>11</model-class>
<model-class>12</model-class>
</contents-registry>
The following example shows the contents of a tooltip file. Each element is explained in the table
with examples.
03-Apr-2017 245/311
CA Spectrum - 10.2 and 10.2.1
<tr>
<td><b>{4}</b></td>
<td>{5}</td>
</tr>
</table></html>
</format>
<param>
<localize>com.aprisma.spectrum.app.util.render.ModelNameColumn</localize>
</param>
<param>
<attribute>AttributeID.MODEL_NAME</attribute>
<renderer>com.aprisma.spectrum.app.util.render.NullRenderer
</renderer>
</param>
<param>
<localize>
com.aprisma.spectrum.app.util.render.NetworkAddressColumn
</localize>
</param>
<param>
<attribute>AttributeID.NETWORK_ADDRESS</attribute>
<renderer>com.aprisma.spectrum.app.util.render.NullRenderer
</renderer>
</param>
<param>
<localize>
com.aprisma.spectrum.app.util.render.MACAddressColumn
</localize>
</param>
<param>
<attribute>AttributeID.MAC_ADDRESS</attribute>
<renderer>com.aprisma.spectrum.app.util.render.NullRenderer
</renderer>
</param>
</device-tooltip-config>
Note: The numbers that are used in the curly brackets reference the parameters that are
defined by the following <param> elements. {0} references the first parameter, {1}
references the second parameter and so on.
03-Apr-2017 246/311
CA Spectrum - 10.2 and 10.2.1
Each model displayed in OneClick has an Information view as shown in the following figure. You
access this view using the Information tab in the Component Detail panel.
03-Apr-2017 247/311
CA Spectrum - 10.2 and 10.2.1
SPEC--custom_model_inf_view
Information views are constructed from separate XML files called Information Configuration files. The
primary file is the <$SPECROOT>/tomcat/webapps/
spectrum/WEB-INF/topo/config/topo-app-config.xml file. In this file, for each model type, the
<contents-registry> element specifies the <information-config> elements that link an Information
Configuration file to the model type.
The <contents-registry> in the following example is found in topo-app-config.xml. It links the 0x2100c
(Rtr_Cisco) model type with view-devicedetails-config.xml, which specifies the format for the
Information view.
<contents-registry>
<reg-id>router-icon-config</reg-id>
<tooltip-config>device-tooltip-config</tooltip-config>
<information-config>view-devicedetails-config</information-config>
<performance-config>performance-data-rtrcisco-config</performance-config>
<!-- All Model Types derived from Rtr_Cisco (0x21000c) -->
<model-type>0x21000c</model-type>
<!-- Rtr_Cisco -->
</contents-registry
Note: Several model classes and model types may be specified within the contents or
component details registries. Information views can be reused in one or more <contents-
registry> elements.
03-Apr-2017 248/311
CA Spectrum - 10.2 and 10.2.1
This section describes how to add and edit information displayed in the Information view for a
particular model type or model class.
When you create or modify an Information view, you must create a new Information Configuration
file in the <$SPECROOT>/custom/console/config/ directory. This file must have the same name as the
factory default Information Configuration file that you need to modify. You then associate the
Information Configuration file with the appropriate model type using the <$SPECROOT>/custom
/console/config/custom-app.config.xml file.
1. If you are modifying or extending an existing Information view for an existing model type or
model class, identify the current Information view configuration file that is used to create the
Information view.
Note: OneClick uses the hierarchy that model_type definitions override the
same definition found in a model_class.
a.
03-Apr-2017 249/311
2.
b. Open the file using a text editor and use the XML syntax outlined in Create an
Information Configuration File (see page 250) to build the file.
c. Continue to step 4.
b. Open the file using a text editor and use the XML syntax outlined in Create an
Information Configuration File (see page 250) to modify the file.
c. Continue to step 4.
5. Associate the new Information Configuration file with the appropriate model types or model
classes. Follow the instructions in Associate an Information Configuration File with a Model
Class or Model Type (see page 262).
03-Apr-2017 250/311
CA Spectrum - 10.2 and 10.2.1
SPEC--create_info_config_file
The XML elements used to build the header and subview in the Information view are listed in the
following table.
03-Apr-2017 251/311
CA Spectrum - 10.2 and 10.2.1
<view-header>
<show-icon>true</show-icon>
<show-labels>false</show-labels>
<field-column>
<column idref="column-modelname-config"/>
<column idref="column-modeltype-config"/>
</field-column>
</view-header>
03-Apr-2017 252/311
CA Spectrum - 10.2 and 10.2.1
<subviews>
<field-subview>
.
.
.
</field-subview>
<application-subview>
.
.
.
</application-subview>
<table-subview>
.
.
.
</table-subview>
</subviews>
<field-subview>
<title>General Information</title>
<privilege>
<name>GeneralInfo</name>
</privilege>
<field-column>
<column idref="column-condition-config"/>
<column idref="column-contactstatus-config"/>
<column idref="column-networkaddress-config"/>
<column idref="column-ismanaged-config">
<editable/>
</column>
<column idref="column-securitystring-config">
<editable verifier=
"com.aprisma.spectrum.app.swing.widget.SecStringInputVerifier"/>
</column>
</field-column>
<field-column>
<column idref="column-modelcreationdate-config"/>
<column idref="column-modeltypename-config"/>
<column idref="column-modelclass-config"/>
<column idref="column-lastsuccessfulpoll-config"/>
<column idref="column-landscape-config"/>
<column idref="column-modelnotes-config">
<editable/>
</column>
03-Apr-2017 253/311
CA Spectrum - 10.2 and 10.2.1
</field-column>
</field-subview>
This code generates a subview similar to the one shown in the following figure.
SPEC--field_subview
You can use the elements shown in the following table to create a field subview.
03-Apr-2017 254/311
CA Spectrum - 10.2 and 10.2.1
<view idref="view-devicedetails-config">
<subviews>
<field-subview >
<title>My Subview</title>
<field-column>
<column idref="column-networkaddress-config">
<editable/>
</column>
</field-column>
</field-subview>
</subviews>
</view>
This example creates a field subview titled My Subview that displays information defined by the file
column-networkaddress-config.xml.
The line <view idref="view-devicedetails-config"> adds the field subview My Subview to the factory
default view-devicedetails-config.xml file.
<table-subview>
<title>Interface Configuration Table</title>
<privilege>
<name>InterfaceConfigurationTable</name>
</privilege>
<swing-header-row-template>
<static-color idref="row-header-color-config"/>
</swing-header-row-template>
<swing-row-template>
</swing-row-template>
<column-list>
<column>
<name>Interface</name>
<content><attribute>0x100c4</attribute>
</content>
03-Apr-2017 255/311
CA Spectrum - 10.2 and 10.2.1
<default-width>30</default-width>
</column>
<column>
<name>Type</name>
<content>
<attribute>0x100c6</attribute>
<renderer>
<param name="attrID">0x100c6</param>
com.aprisma.spectrum.app.util.render.EnumeratedAttrRenderer
</renderer>
</content>
<default-width>100</default-width>
</column>
<column>
<name>IF Speed</name>
<content>
<attribute>0x100c8</attribute> <!-- IfSpeed -->
<renderer>com.aprisma.spectrum.app.topo.client.
interfaces.render.IfSpeedRenderer
</renderer>
</content>
<default-width>60</default-width>
</column>
<column>
<name>Physical Address</name>
<content>
<attribute>0x100c9</attribute>
</content>
<default-width>90</default-width>
</column>
</column-list>
</table-subview>
The code in this example generates a subview similar to the one shown in the following image.
SPEC--interface_config_table
You can use the elements shown in the following table to create a table subview.
03-Apr-2017 256/311
CA Spectrum - 10.2 and 10.2.1
Note: All of the elements that can be used to modify a table can be used to create the
table for the table subview.
<application-subview>
<title>SNMP2 IP Routing Table</title>
<model-type>0x230010</model-type>
<subviews>
<table-subview idref="table-ip2-ip-routingtable-config"/>
</subviews>
</application-subview>
The attribute used within the <model-type> element defines the model type to which the subview
pertains. In the example above, the value 0x230010 is used. This attribute value corresponds to the
SNMP2_Agent Application model type. This means that this particular table definition applies only to
the SNMP2_Agent application. If the current device does not implement this application, this table
will not be visible.
03-Apr-2017 257/311
CA Spectrum - 10.2 and 10.2.1
You can use the elements in the following table to create related model subview.
03-Apr-2017 258/311
CA Spectrum - 10.2 and 10.2.1
You can use the elements in the following table to create a related model table subview.
In the example that follows, the <subviews> element is used to place a view within a view allowing
multiple views to be nested within each other. Each column in the table represents the value of an
attribute for each of the models that have passed the search criteria.
03-Apr-2017 259/311
CA Spectrum - 10.2 and 10.2.1
attribute for each of the models that have passed the search criteria.
<subviews>
<related-models-table-subview>
<title>Demo Table Title</title>
<criteria>demo-search-criteria</criteria>
<table>demo-table-config</table>
</related-models-table-subview>
</subviews>
<search-criteria id="demo-search-criteria"
xmlns="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/search-criteria-config.xsd">
<child-models>
<relation>Collects</relation>
</child-models>
</search-criteria>
03-Apr-2017 260/311
CA Spectrum - 10.2 and 10.2.1
<subview-group>
<title>Subview Group Title</title>
<display-if>
<expression>
attrInt(AttributeID.MTYPE_HANDLE) == 0x3cc0002
</expression>
</display-if>
<subviews>
<table-subview idref="example-table1-config">
<title>Example Sub View #1</title>
</table-subview>
<table-subview idref="example-table2-config">
<title>Example Sub View #2</title>
</table-subview>
</subviews>
</subview-group>
This example generates a subview group similar to the one shown in the following figure.
SPEC--define_subview
Use the elements shown in the following table to create a subview group.
03-Apr-2017 261/311
CA Spectrum - 10.2 and 10.2.1
3. Add the following block of XML code to link the appropriate model type(s) or model class(es)
to the Information Configuration file. Use the XML elements shown to define the information
appropriate to your model type or model class.
<contents-registry>
<icon-reg-id>your-icon-registration</icon-reg-id>
<tooltip-config>your-tooltip-config</tooltip-config>
<information-config>your-information-config-file<
/information- config>
<model-class>your-model-class</model-class>
</contents-registry>
03-Apr-2017 262/311
CA Spectrum - 10.2 and 10.2.1
By default, some model types are configured to have a Performance view that shows changes in
attributes, such as CPU utilization or memory, over time. In OneClick, you access this device view by
clicking the Performance tab in the Component Detail panel.
SPEC--perf_view
03-Apr-2017 263/311
CA Spectrum - 10.2 and 10.2.1
If the data or the format of one of the default Performance views does not meet your requirements,
you can customize it for a particular model type or model class. For example, if you have added
support in CA Spectrum for additional MIBs that are supported by a device, you might want to
customize the view to graph some of the data that is available in the MIB. You can also create your
own custom Performance views.
If a Performance view is not configured for the model currently selected in OneClick, the
Performance tab is disabled.
You associate the views performance data configuration file with each applicable model type or
model class in a file named custom-app-config.xml. While you can use either the <contents-registry>
element or the <component-details-registry> element to do this, a best practice is to use the
<component-details-registry> element because it configures only the Component Detail panel for the
given model type or model class. For a description of the different registries available, see Chapter 5:
Add Support for Model Types or Model Classes.
Note: Ensure to copy the file to the specified location. Do not modify the
default custom-app-config.xml file that is provided with CA Spectrum
because it is overwritten when you upgrade to a newer version.
b.
03-Apr-2017 264/311
CA Spectrum - 10.2 and 10.2.1
<component-details-registry>
<performance-config>performance-data-ciscovoiceapp-config<
/performance-config>
<model-type>0x3250004</model-type>
<!-- CiscoVoiceApp -->
</component-details-registry>
Note: You can specify several model classes and model types within the
contents or component details registries. You can also reuse Performance
views in one or more <contents-registry> elements.
Use the XML elements described in the following table to create a performance data configuration
file.
03-Apr-2017 265/311
CA Spectrum - 10.2 and 10.2.1
The following example specifies the data to display in a 2-line performance graph that shows the
change in both active and total VoIP calls over time for a Cisco device.
03-Apr-2017 266/311
CA Spectrum - 10.2 and 10.2.1
<performance-config id="performance-data-ciscovoiceapp-config">
<display>performance-ciscovoiceapp-config</display>
<line>
<name>Active VoIP Calls</name>
<content>
<attribute>0x325012b</attribute><!-- VoIP_Current_Calls -->
</content>
</line>
<line>
<name>Total VoIP Calls</name>
<content>
<attribute>0x3250129</attribute> <!-- VoIP_Total_Calls -->
</content>
</line>
</performance-config>
Note: For additional, more complex examples of performance data configuration files, see
the supporting files for the Performance views included with CA Spectrum. You can find
these files by navigating to the <$SPECROOT>/tomcat/webapps/spectrum/WEB-INF
directory and searching for files named perf*.
Use the XML elements described in the following table to create a performance view configuration
file.
03-Apr-2017 267/311
CA Spectrum - 10.2 and 10.2.1
The following example specifies the format for a 2-line performance graph that shows the change in
both active and total VoIP calls over time for a Cisco device.
Note: This is the format for the example graph whose data is defined in Create a
Performance Data Configuration File.
<performance-view id="performance-ciscovoiceapp-config">
<graph id="VoIP Calls Title">
<y-axis-label>Calls</y-axis-label>
<y-axis-units>unit</y-axis-units>
<line>
<name>Active VoIP Calls</name>
</line>
<line>
<name>Total VoIP Calls</name>
</line>
</graph>
</performance-view>
03-Apr-2017 268/311
CA Spectrum - 10.2 and 10.2.1
Note: For additional, more complex examples of performance view configuration files, see
the supporting files for the Performance views included with CA Spectrum. You can find
these files by navigating to the <$SPECROOT>/tomcat/webapps/spectrum/WEB-INF
directory and searching for files named perf*.
1. Identify the default configuration files that define the Performance view you want to
customize:
a. Open <$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/topo/config/
topo-app-config.xml and find the <contents-registry> or <component-details-registry>
element for the appropriate model type or model class.
Note: If your model qualifies for both a model type and a model class
registration, the model type registration takes precedence and is applied.
Also, even though you can define the Performance view configuration in
both the contents registry and the component details registry, the
component details registry takes precedence. The contents registry is
primarily for model appearance and typically is applied to only the model
class.
Note: All of the default performance configuration files -- both the data
configuration files and the view configuration files -- are located in the
<$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/*/config directories.
c. Open the
<$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/topo/config directory, and then
open the performance data configuration file you identified in the previous step.
d. Find the <display> element within the <performance-config> element, and note the
name of the specified performance view configuration file.
2. Copy over one or both of the performance configuration files that you identified in step 1 to
03-Apr-2017 269/311
CA Spectrum - 10.2 and 10.2.1
2. Copy over one or both of the performance configuration files that you identified in step 1 to
the <$SPECROOT>/custom/topo/config directory. You only need to copy over a file if it
requires customizations.
Note: To override the factory default performance configuration files, the copied
files (that will contain your customizations) must have the same names as the
original, default files.
3. If necessary, modify the copied performance data configuration file per your requirements,
and then save and close the file.
4. If necessary, modify the copied performance view configuration file per your requirements,
and then save and close the file.
5. If necessary, in custom-app-config.xml, change the model types or model classes that are
associated with the performance data configuration file:
Note: Make sure to copy the file to the specified location. Do not modify the
default custom-app-config.xml file that is provided with CA Spectrum
because it is overwritten when you upgrade to a newer version.
<component-details-registry>
<performance-config>performance-data-ciscovoiceapp-config<
/performance-config>
<model-type>0x3250004</model-type>
<!-- CiscoVoiceApp -->
</component-details-registry>
Note: You can specify several model classes and model types within the
contents or component details registries. You can also reuse Performance
views in one or more <contents-registry> elements.
03-Apr-2017 270/311
CA Spectrum - 10.2 and 10.2.1
This section describes how to restrict access to menu items, attributes, and subviews using privileges.
Menu items
Columns
Subviews
If an administrator has not assigned the corresponding privilege to a user, that user cannot access the
menu item, column, or subview.
1. Copy <$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/console/config/
custom-privileges.xml to the <$SPECROOT>/custom/console/config directory.
Note: Define all new privileges inside the <privileges> element, which is the root
element for the file.
3. Create the privilege. Use the elements shown in the table that follows this procedure.
03-Apr-2017 271/311
CA Spectrum - 10.2 and 10.2.1
5. Restart the Tomcat web server, and then restart OneClick so that changes to the custom-
privileges.xml file are available in OneClick.
Create a custom menu item, column, or subview that is accessible to only users who have
the privilege. For more information, see Reference a Privilege When Defining a Menu
Item, Column, or Subview (see page 275).
Create a search that is accessible only to users who have the privilege.
You can use the elements in the following table to create a privilege:
03-Apr-2017 272/311
CA Spectrum - 10.2 and 10.2.1
Note: When you create a privilege, you are creating a new XML element. In the example
above, the <launch-app> element creates the launch-app privilege. The type attribute
defines the default role to which the privilege is assigned. Two values are possible: read
and write. A privilege with the read type is assigned to the OperatorRO role, and a
privilege with the write type is assigned to the OperatorRW role.
The following example defines the launch-app privilege, as shown in the image:
<privileges>
<launch-app type="write">
<label>Launch Apps</label>
<desc>Ability to launch application from the tools menu.</desc>
</launch-app>
</privileges>
SPEC--component_detail
03-Apr-2017 273/311
CA Spectrum - 10.2 and 10.2.1
The <model-view-attr> element enables you to create a privilege that determines whether or not a
user can see an attribute. For example, if you added the following XML to the custom-privileges.xml
file, you will create a privilege called Community Name. This privilege restricts view access to
attribute 10024, community name. This privilege will appear in the Model Management > View
Attributes folder as specified with the [set the product group or family] element. If the user does not
have this privilege in any access group, they will not be able to see the community name attribute.
<model-view-10024 type="read">
<label>Community Name</label>
<group scope="topo">model-view-group</group>
</model-view-10024>
The <model-write-attr> element enables you to create a privilege that determines whether or not a
user can edit an attribute. For example, if you added the following XML to the custom-privileges.xml
file, you will create a privilege called Community Name. This privilege restricts write access to
attribute 10024, community name. This privilege will appear in the Model Management > Model
Write folder as specified with the [set the product group or family] element. If the user does not have
this privilege in any access group, they will not be able to edit the community name attribute.
<model-write-10024 type="write">
<label>Community Name</label>
<group scope="topo">model-write-group</group>
</model-write-10024>
Group Privileges
If you want to group privileges together, you can create groups in the custom-privileges.xml file. To
specify a group, nest the element that defines the privilege (<your_privilege_name>) between the
element that defines the group (<your_group_name>). The groups <label> element defines the
name that represents the group in the privileges tree (see the image later in this section).
03-Apr-2017 274/311
CA Spectrum - 10.2 and 10.2.1
In the following example, the <my-tools> element creates a group in which privileges can be nested.
The value defined for the groups <label> is My-Tools Folder. This will create a My-Tools Folder
group in the privileges list as shown in the image that follows. The <launch-app> and <launch-web>
privileges will appear in this group.
<privilege>
<my-tools>
<label>My-Tools Folder</label>
<launch-app type="read">
<label>Launch Apps</label>
<desc>Ability to launch Applications.</desc>
</launch-app>
<launch-web type="read">
<label>Launch Web</label>
<desc>Ability to launch Web URLS.</desc>
</launch-web>
</my-tools>
</privilege>
SPEC--grp_prvileges
03-Apr-2017 275/311
CA Spectrum - 10.2 and 10.2.1
<privilege>
<name>launch-app</name>
</privilege>
This XML associates the "launch-app" privilege with the menu item, column, or subview. The user
must have an associated role that grants the launch-app privilege in order for the menu item,
column, or subview to be displayed. If granted, the menu item is always enabled.
This section explains common XML elements and strategies that can be used across customization
files.
About Parameters
You can use the <param> element in a number of different instances to reference parameter values
within a OneClick XML file. Here are several common cases where you will likely use the <param>
element.
If you need to pass a parameter to a web page, use the <param> element as a child element of
the <url> element. See Launch a Browser for an example.
If you need to pass a parameter to an application, use the <param> element as a child element of
the <launch-application> element. See Launch an Application From OneClick for an example.
If you need to pass a parameter to a command, use the <param> element as a child element of
the <command> element. See Launch a Browser, Launch an Application From OneClick, and
Launch a Web Server Script.
03-Apr-2017 276/311
CA Spectrum - 10.2 and 10.2.1
If you need to format a series of values, use the <param> element in conjunction with standard
HTML formatting elements. See Define Model Icon Tooltips for an example.
If you need to manipulate the value of an attribute, you may need to use the <param> element
when accessing one of the renderers.
See Acquire Data Render a Value for information on what you can specify using the <param> tag.
Element Description
<attribute> Used to specify a CA Spectrum attribute
<select> Used to specify something based on the value of another attribute, parameter, etc.
Used to select a value based on certain criteria being met. Very generally, <select> this
<if>condition1, <select> that <if> condition2.
<expression Used to define an arithmetic expression.
>
<renderer> Used to define or access any number of renderers that process raw data and refine into
a specific format for presentation to the user.
<dynamic- Specifies a renderer based on the value of an attribute criteria filter.
renderer>
<message> Used for specifying a plain text value for the column.
You can use any number and combination of these elements chained together, with the output from
one element serving as the input to the next element in the chain. The <attribute> tag must be first in
a chain of elements because it yields an attribute value and does not accept input. The <message>
tag must be first in a chain of elements used to render a value. because it does not accept input.
<select>
<case>
<expression>the expression to evaluate</expression>
<yield>what to yield if the expression is true</yield>
</case>
<case>
<expression>the expression to evaluate</expression>
<yield>what to yield if the expression is true</yield>
</case>
03-Apr-2017 277/311
CA Spectrum - 10.2 and 10.2.1
.
.
.
<default>what to yield if no matches are found</default>
</select>
Example: Image Definition File shows an example of the <select> and <case> elements used to select
the image to be displayed on a OneClick device model icon depending on the models condition.
Note: You will need some background in programming to fully understand the renderer
concepts presented below.
You can pass parameters to a renderer using the <param> element. The text of the <param> element
is the parameter value. A <param> element must have a name attribute that specifies the name of
the parameter.
Example
The following example specifies the BooleanRenderer with parameter trueTag set to No and
parameter falseTag set to Yes. Each renderer has a set of parameters, and each renderer is defined
differently.
<renderer>
<param name="trueTag">Enabled</param>
<param name="falseTag">Disabled</param>
com.aprisma.spectrum.app.util.render.BooleanRenderer
</renderer>
Boolean Renderer
<renderer>
<param name="trueTag">No</param>
03-Apr-2017 278/311
CA Spectrum - 10.2 and 10.2.1
<param name="falseTag">Yes</param>
com.aprisma.spectrum.app.util.render.BooleanRenderer
</renderer>
Date Renderer
You use the numeric value prefix in the comments tag for sorting. Without the prefix, CA Spectrum
would sort on the formatted date and time string, and this would not work correctly. Therefore, you
should only use the DateRenderer in the <content> element section of a column. To strip off the
prefix for display, use the CommentedTextRenderer in the <swing-cell-template> section. For
example:
<content>
<attribute>0x11620</attribute>
<! -- an attribute that contains an integer date/time in seconds >
<renderer>
com.aprisma.spectrum.app.util.render.DateRenderer
</renderer>
</content>
<swing-cell-template>
<text>
<renderer>
com.aprisma.spectrum.app.util.render.CommentedTextRenderer
</renderer>
</text>
</swing-cell-template>
Classname: com.aprisma.spectrum.app.util.render.EnumeratedAttrRenderer.
03-Apr-2017 279/311
CA Spectrum - 10.2 and 10.2.1
This renderer outputs an enumerated String for an attribute value. The renderer obtains the
enumerations from the CA Spectrum database. You must specify the attribute ID via the attrID
parameter. This renderer is most commonly preceded by an <attribute> element with the same
attribute ID as the attrID parameter. The following sample XML renders the enumerated value for
the Model_Class attribute (ID 0x11ee8):
<attribute>0x11ee8</attribute>
<renderer>
<param name="attrID">0x11ee8</param>
com.aprisma.spectrum.app.util.render.EnumeratedAttrRenderer
</renderer>
List Renderer
Null Renderer
Classname: com.aprisma.spectrum.app.util.render.NullRenderer.
Object ID Renderer
This renderer outputs an object identifier (OID). The expected input value is type CsObjectID.
Classname: com.aprisma.spectrum.app.util.render.ObjectIDRenderer.
Supported parameters:
term -- an integer value that specifies the index of a particular term of the OID to render
startTerm -- an integer value that specifies the index of the first term of the OID to render
endTerm -- an integer value that specifies the index of the last term of the OID to render
The term indices start at 1. If you specify the startTerm without the endTerm, then the portion of the
OID from the startTerm to the last term of the OID is rendered. If you specify the endTerm without
the startTerm, then the portion of the OID from the first term to the endTerm is rendered.
The ObjectIDRenderer is most commonly used to render the row instance of a MIB table. You obtain
the row instance via the getRowId() method in an <expression> element. You can then pass the result
to the ObjectIDRenderer. For example, the following column renders the first term of the row
instance:
<column>
<name>com.aprisma.spectrum.app.topo.client.ifIndex</name>
<content>
<expression>getRowId()</expression>
<renderer>
03-Apr-2017 280/311
CA Spectrum - 10.2 and 10.2.1
<param name="term">1</param>
com.aprisma.spectrum.app.util.render.ObjectIDRenderer
</renderer>
</content>
</column>
<column>
<name>com.aprisma.spectrum.app.topo.client.NetworkAddr</name>
<content>
<expression>getRowId()</expression>
<renderer>
<param name="startTerm">5</param>
<param name="endTerm">8</param>
com.aprisma.spectrum.app.util.render.ObjectIDRenderer
</renderer>
</content>
</column>
The following example combines an expression with the ObjectID renderer to enable you to display
the last term of an OID value in a table:
<column>
<name>com.aprisma.spectrum.app.topo.client.ifIndex</name>
<content>
<expression>
((com.aprisma.spectrum.global.CsObjectID)value()).get_sub_oid(
((com.aprisma.spectrum.global.CsObjectID)value()).get_term_count(),
((com.aprisma.spectrum.global.CsObjectID)value()).get_term_count())
</expression>
<renderer>
<param name="term">1</param>
com.aprisma.spectrum.app.util.render.ObjectIDRenderer
</renderer>
</content>
</column>
This renderer outputs a numeric time value represented in one hundredths of a second. The time
representation is used in MIB objects such as sysUpTime. The output is expressed in days, hours, and
minutes (for example, 30 days 1 hr 55 min).
Classname: com.aprisma.spectrum.app.util.render.SysUpTimeRenderer
Byte Renderer
This renderer outputs an integer value in byte units (byte, KB, MB, GB, or TB).
03-Apr-2017 281/311
CA Spectrum - 10.2 and 10.2.1
This renderer outputs an integer value in byte units (byte, KB, MB, GB, or TB).
Classname: com.aprisma.spectrum.app.util.render.ByteRenderer
Classname: com.aprisma.spectrum.app.util.render.InetAddressRenderer
Supported parameters:
Classname: com.aprisma.spectrum.app.util.render.ListInstanceRenderer
Supported parameters:
Renders an integer value without using comma grouping; 123456 instead of 123,456. Use this to
substitute an integer value in a URL used in a menu item where commas are not acceptable input.
Classname: com.aprisma.spectrum.app.util.render.SimpleIntegerRenderer
Renders a MIB object of type InetAddress as defined in RFC-4293 with the type added to the
beginning of the address.
Classname: com.aprisma.spectrum.app.util.render.TypePrependedInetAddressRenderer
Supported parameter:
03-Apr-2017 282/311
CA Spectrum - 10.2 and 10.2.1
About <dynamic-renderer>
Use the <dynamic-renderer> element to specify a renderer that depends on the value of an attribute
criteria such as <model_class>, <model-type>, or other attribute criteria. You select an attribute ID as
the key and specify one or more <dynamic-renderer> elements in the custom-app-config.xml file.
Each <dynamic-renderer> element defines a criteria and the renderer to use if the criteria is satisfied.
<dynamic-renderer>
<attribute><KEY_ATTRIBUTE_ID></attribute>
CRITERIA
<render>
.
.
.
</render>
<default/>
</dynamic-renderer>
The following table describes the elements you can use with <dynamic-renderer>.
It is common to use <model-class> and <model-type> for attribute filter criteria. You can use any
attribute and any set of complex attribute filters with any combination of nested and and or
filters. The file <$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/common/schema/attributefilter.
xsd contains the complete syntax for attribute filters.
You define the default dynamic renderer for use when none of the conditions for using the <dynamic-
renderer> specified in the CRITERIA statement are met. You can specify only one default dynamic-
renderer per dynamic renderer set. Do not specify a filter criteria for the default.
This example creates a column that displays an attribute based on the value of the model_type
attribute. The attribute displayed for the model_type filter criteria conditions are shown in the
following table.
03-Apr-2017 283/311
CA Spectrum - 10.2 and 10.2.1
You must select one of the attributes specified in your filter criteria to be the key. This example uses
0xffff0002. Add the following <dynamic-renderer> elements to the custom-app-config.xml file:
<dynamic-renderer>
<attribute>0xffff0002</attribute>
<model-type>0x12</model-type>
<render>
<attribute>0xffff0000</attribute>
</render>
</dynamic-renderer>
<dynamic-renderer>
<attribute>0xffff0002</attribute>
<or>
<model-type>0x34</model-type>
<model-type>0x56</model-type>
</or>
<render>
<attribute>0xffff0001</attribute>
</render>
</dynamic-renderer>
<dynamic-renderer>
<attribute>0xffff0002</attribute>
<render>
<attribute>0xffff0002</attribute>
</render>
<default/>
</dynamic-renderer>
This example creates a column specifying the <dynamic-renderer> element with the key attribute ID
defined in the <content> element.
<column>
<name>My Column</name>
<content>
<dynamic-renderer>0xffff0002</dynamic-renderer>
</content>
</column>
About Expressions
When you are customizing the OneClick interface, there are several places where you may want to
use an expression to display a calculated value. For example, you may want to display a calculated
value in a table or subview. The section below explains how to use expressions to manipulate
attribute information.
03-Apr-2017 284/311
CA Spectrum - 10.2 and 10.2.1
Note: Expressions are created using standard Java expressions. You must be familiar with
Java code in order to implement the following instructions that create expressions in the
OneClick XML files. If you are not familiar with Java code, you should refer to a Java
reference before attempting to create expressions when customizing OneClick files.
The most common use of an expression is to manipulate attribute information. The attribute
information available is dependent upon the OneClick context in which you are using the expression.
You can use the methods listed in the following table in the context of an expression to retrieve
attribute information:
The following example shows a column configuration that displays the contact person for a device. In
this example, an expression displays the attribute 0x23000c (AttributeID.CONTACT_PERSON) if the
attribute 0x10b5a (AttributeID.SYS_CONTACT) is null or has no value.
<column id="column-contact-config"
xmlns ="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/column-config.xsd">
<name>Contact Person</name>
<content>
<expression>
( attr( AttributeID.SYS_CONTACT ) == null ||
((String)attr(AttributeID.SYS_CONTACT)).length() == 0) ?
attr( AttributeID.CONTACT_PERSON ) : value()
</expression>
</content>
</column>
03-Apr-2017 285/311
CA Spectrum - 10.2 and 10.2.1
Another way to accomplish the same result is to use the attribute renderer to retrieve the
SYS_CONTACT attribute value. You can then access the value returned using an expression that uses
the value() method.
<column id="column-contact-config"
xmlns ="http://www.aprisma.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.aprisma.com
../../common/schema/column-config.xsd">
<name>Contact Person</name>
<content>
<attribute>AttributeID.SYS_CONTACT</attribute>
<expression>
(value() == null || ((String)value()).length() == 0) ?
attr( AttributeID.CONTACT_PERSON ) : value()
</expression>
</content>
</column>
The two examples shown above produce the same value for the column.
Example
This example appends a % character to a value so that the value displays in a table as <value>%.
<expression>value().toString() + "%"</expression>
You can use this method to append a % character to a percentage of disk space used value, so
that the value displays in a table as <percentage of disk spaced used>%, or 64%.
The following list describes major exceptions to the rules for standard Java code that are used to
create OneClick expressions.
Comparison Operator
You cannot use the comparison operator, &&, due to restrictions on XML formatting. In place of
&& you must use &&.
03-Apr-2017 286/311
CA Spectrum - 10.2 and 10.2.1
Subtraction Expressions
OneClick processes subtraction expressions using non-standard associativity. Subtraction is done
using a right-to-left associativity instead of the standard left-to-right associativity.
OneClick processes subtraction as follows:
A - B - C = A - (B - C)
compared with standard subtraction expression processing:
A - B - C = (A - B) - C
Some XML files are so complex that they become unreadable. In this case breaking the XML file
down into two or more files assists you in keeping your code organized and making it readable
and editable in the future.
You may want to reuse certain sections of XML code. Putting this XML code in a separate file
allows you to reference it from multiple files instead of copying and pasting it into new files, or
new sections of the same file.
Use the standard XML id and idref attributes to label and reference the split up code.
Reference Images
You may need to reference image files from within your XML. When you reference image files in
either the factory <$SPECROOT>/tomcat/webapps/spectrum/images directory or the custom
<$SPECROOT>/custom/images directory, express the path starting from the images directory, for
example, images/myimage.png. See Example: Icon Configuration File for an example.
You must place all image files that you add or customize in the <$SPECROOT>/custom/images
directory. Otherwise, all new or customized images you add will be deleted or overwritten during a
CA Spectrum or OneClick upgrade or reinstallation.
Specify the <verifier> element inside the <editable> element. Inside the <verifier>, you specify a
verifier Java class and optional parameters to pass to the verifier class.
03-Apr-2017 287/311
CA Spectrum - 10.2 and 10.2.1
<editable>
<verifier>
<class>
com.aprisma.spectrum.app.swing.widget.IntegerContainedInRangeInputVerifier
</class>
<param name="lowValue">0</param>
<param name="upperValue">100</param>
</verifier>
</editable>
IntegerContainedInRangeInputVerifier
Class:com.aprisma.spectrum.app.swing.widget.IntegerContainedInRangeInputVerifier
Parameters:
AttrIDInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.AttrIDInputVerifier
DoubleInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.DoubleInputVerifier
IPAddressInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.IPAddressInputVerifier
IntegerInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.IntegerInputVerifier
LongInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.LongInputVerifier
03-Apr-2017 288/311
CA Spectrum - 10.2 and 10.2.1
MACAddressInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.MACAddressInputVerifier
NonEmptyStringInputVerifier
Class: com.aprisma.spectrum.app.swing.widget.NonEmptyStringInputVerifier
UnsignedIntInputVerifier
Description: Default verifier for all integer attributes; verifies the user input is an unsigned integer.
Class: com.aprisma.spectrum.app.swing.widget.UnsignedIntInputVerifier
Note: For more information about customizing asset reporting for CA Service Desk, see CA
Service Desk and CA Spectrum (https://docops.ca.com/display/CASP102
/CA+Service+Desk+and+CA+Spectrum).
03-Apr-2017 289/311
CA Spectrum - 10.2 and 10.2.1
TL1 Gateway
Contents
What Is TL1? (see page 290)
What Is TL1 Gateway? (see page 290)
What Does TL1 Gateway Include? (see page 290)
What Is TL1?
Transaction Language 1 (TL1), occasionally referred to as MML (Man Machine Language), is a widely
used protocol in telecommunications management. The TL1 protocol can be used to manage most
telecom network elements in North America.
Unlike SNMP, TL1 is a human-machine interface that contains human-readable strings. Also, unlike
SNMP, TL1 includes no concept of a MIB. TL1 was originally specified by Bellcore in 1986 and is now
maintained by Ericsson.
Each TL1 device is represented by a corresponding device model within CA Spectrum. As a result, you
can launch the Enterprise Alarm Manager application for a particular model so that you can check for
certain alarm conditions and initiate corrective action. TL1 Gateway also supports TL1 devices that
are accessible through proxy devices, also known as Gateway Network Element (GNE) devices.
TL1 Gateway implements the full range of TL1 Condition Types as specified by Telcordia. Telcordia
has been acquired by Ericsson. Multiple websites provide lists of current network element and
transport surveillance messages.
A daemon (TL1d) that handles communication between the TL1 devices and the SpectroSERVER.
03-Apr-2017 290/311
CA Spectrum - 10.2 and 10.2.1
The following diagram shows an example of a TL1 Gateway installed on CA Spectrum host:
03-Apr-2017 291/311
CA Spectrum - 10.2 and 10.2.1
SPEC--TL1_Gateway_Installed_on_CA_Spectrum_Host
The following diagram shows an example of a TL1 Gateway installed on a remote host:
SPEC--TL1_Gateway_Installed_on_a_Remote_Host
03-Apr-2017 292/311
CA Spectrum - 10.2 and 10.2.1
Installation Options
If your configuration requires TL1 Gateway to be run on the same machine CA Spectrum is running
on, then the gateway has already been installed during the major CA Spectrum installation. In this
case, all required TL1 Gateway components can be found in a subdirectory called TL1Apps, which is
located in your top-level CA Spectrum directory. The TL1 Apps directory contains the following files:
The installer launches a series of dialogs that prompt you to supply the following information:
3. Copy the resulting files (listed below) to the proper locations on the NT machine:
TL1d.exe
tl1map.exe
orb.dll
orb_p.dll
03-Apr-2017 293/311
CA Spectrum - 10.2 and 10.2.1
orb_p.dll
Copy the executables TL1d.exe and tl1map.exe to the preferred locations. Copy the DLL files
to the system area that is used for third-party DLL files.
3. Copy the following resulting files to the proper locations on the Solaris server:
TL1d
tl1map
liborb.so
Copy the executables TL1d and tl1map to the preferred locations. Copy the shared library
liborb.so to the preferred system area for third-party libraries: /usr/lib.
Note: If you are using a location other than /usr/lib, update the environment
variable LD_LIBRARY_PATH to include that location.
03-Apr-2017 294/311
CA Spectrum - 10.2 and 10.2.1
The TL1 Device models are used to check for alarm conditions and initiate corrective action through
Enterprise Alarm Manager. The TL1 devices must be modeled manually as they cannot be modeled
through Spectrum Discovery. For more information about Discovery, see Modeling and Managing
Your IT Infrastructure Administrator (https://wiki.ca.com/display/CSP
/Modeling+and+Managing+Your+IT+Infrastructure).
1. From any OneClick Topology tab view, select the Model by Type toolbar icon.
2. Select the 'All Model Types' tab and enter TL1 into the Filter field.
Model Name
Specifies a unique name for this model.
Note: Sometimes, this address is the IP address of a dedicated TL1 device that acts
as a proxy for all the other TL1 devices in the network.
03-Apr-2017 295/311
CA Spectrum - 10.2 and 10.2.1
TID
Specifies the Target ID for the TL1 device. This parameter is part of the TL1 addressing
concept, and is required to uniquely identify a device. The TID is a predefined
alphanumeric string. Obtain it from the local Network Administrator.
User Name
Specifies the user ID for the maintenance user, as configured in the TL1 device.
Password
Specifies the password for the maintenance user.
Security String
Prevents selected users from viewing this model.
Note: If you increase the time between polling intervals, less bandwidth is required
for traffic management. However, you receive device status updates less
frequently.We recommend using the default polling interval for critical devices and
using 600 seconds for less important devices.
Log Ratio
Defines how many times CA Spectrum polls devices for updates before logging the results.
Default: 10 (CA Spectrum logs the polling results after it polls the device every tenth time).
Note: No entries or adjustments to the defaults are required for the remaining
fields. For more information about field settings, see CA Spectrum Administrator (
https://wiki.ca.com/display/CSP/OneClick+Administration).
5. Click OK.
A TL1 device model icon is displayed.
Max Telnet Sessions and Max Logins Per Telnet Attribute Considerations
03-Apr-2017 296/311
CA Spectrum - 10.2 and 10.2.1
TL1 devices exist in a ring or group. The Gateway Network Element acts as a go between the rest of
the network and the TL1 devices within the ring. Therefore, CA Spectrum makes a telnet connection
to the GNE.
This varies with hardware maximum device specifications. CA Spectrum can use as many sessions as
the Max Telnet Sessions value has been set to allow. You can specify Max Telnet Sessions to one less
than the hardware maximum to leave one available for the Network Administrator, but it is not
required.
For any given ring, the number of telnet sessions that are used is the highest Max Telnet Sessions
value among all the Gen_TL1_Dev models that are associated with that ring. So, if you have ten
devices that are modeled for a single ring, if all the Max Telnet Sessions values are 1, then the TL1
daemon (TL1d) uses at most one telnet session when communicating with all the devices on that ring.
If nine of the models have a Max Telnet Sessions value of 1 and one of the models has a Max Telnet
Sessions value of 4, then the TL1d can use up to four concurrent telnet sessions when communicating
with ANY of the devices on that ring.
The recommended usage for Max Telnet Sessions is to set it to the desired value on the
Gen_TL1_Dev model which represents the TL1 proxy device, and to leave the value at its default for
other Gen_TL1_Dev models. That way, if you want to change the value, you only have to change it on
one model.
As with Max Telnet Session, when two or more devices from the same ring are modeled, the TL1
deamon (TL1d) uses the highest Max Logins Per Telnet value among all the Gen_TL1-Dev models that
are associated with that ring.
The recommended usage for Max Logins Per Telnet is to set it to the desired value on the
Gen_TL1_Dev model which represents the TL1 proxy device, and to leave the value at its default for
other Gen_TL1_Dev models. That way, if you want to change the value, you only have to change it on
one model.
Important Processing Information for Max Telnet Sessions and Max Logins Per Telnet
It is important to understand the difference between having a value for Max Logins Per Telnet of 1
versus a value greater than 1.
03-Apr-2017 297/311
CA Spectrum - 10.2 and 10.2.1
When Max Logins Per Telnet equals one, the telnet connections are time-shared. Therefore, polls
cannot occur simultaneously, but instead are carried out in sequence. The maximum number of
devices manageable is dependent primarily on the polling interval and the value of Max Telnet
Sessions. Congestion and slow device response can adversely affect CA Spectrum's management of
the devices.
When Max Logins Per Telnet is greater than one, polls can occur simultaneously. The maximum
number of devices manageable is a hard limit of Max Telnet Sessions multiplied with Max Logins Per
Telnet. Therefore, congestion and slow device response has less impact on the ability of CA Spectrum
to properly manage the devices.
The TL1 daemon (TL1d) communicates with TL1 devices over shared telnet sessions. That is, if you
have say, ten TL1 devices on a single TL1 ring, TL1 Gateway can send ping requests to and can receive
messages from all ten devices over a single telnet connection.
The TL1 daemon (TL1d) can also have several concurrent telnet sessions open to the same TL1 ring.
So, TL1 Gateway could be using three telnet sessions open simultaneously to communicate with ten
TL1 devices on a single ring.
Congestion Considerations
Because communication is shared over the connections, congestion can occur. The amount of
congestion is determined through:
Number of concurrent telnet sessions available to TL1 Gateway for use to the TL1 ring in question
Time delay in the TL1 devices responding to commands from TL1 Gateway
If congestion over the telnet session is bad enough, ping requests that the SpectroSERVER sends does
not return in time, and the TL1 models will sporadically go into a contact lost state.
If the network congestion is caused by too many alerts from the TL1 devices, a solution might be to
specify an autonomous port for the devices.
If Max Logins Per Telnet equals one, the following two solutions are available:
Increase the polling interval of the TL1 models -- the devices are polled less often causing less
congestion, resulting in better performance.
Increase the telnet sessions to TL1 devices ratio, by either increasing the number of concurrent
telnet sessions the TL1d can use, or by decreasing the number of TL1 devices on the ring.
Upgrade Considerations
03-Apr-2017 298/311
CA Spectrum - 10.2 and 10.2.1
Due to the overhead caused by the new functionality, we have increased the default value for the
DCM Timeout attribute (0x110c4) from 3000 to 5000. However, if the customer is upgrading, this
change is not made because the Timeout attribute has the 'Preserve Value' flag set.
If the DMC timeout value is left at 3000, the ping requests sent by the SpectroSERVER will
probably time out sporadically. After upgrading, customers change the Timeout value for all
Gen_TL1_Dev models that they have currently modeled to be 2000 milliseconds higher than their
current value. Likewise, they must also increase the Gen_TL1_Dev model type default value for
Timeout by 2000 milliseconds.
To use it, highlight the TL1 device icon and select the Information tab in the Component Detail view.
The TL1 Autonomous Port can be set in the TL1 Device Information section.
03-Apr-2017 299/311
CA Spectrum - 10.2 and 10.2.1
SPEC--TL_AutonomousPort
03-Apr-2017 300/311
CA Spectrum - 10.2 and 10.2.1
You can customize the Command on First Logon for any command that requires customization. CA
Spectrum automatically replaces the <TID> and <CTAG> values. The <TID> value uses the TID value
that you specified in the Create Model Type dialog. The <CTAG> value is automatically generated by
the TL1 Gateway for proper communication.
The following image shows an example of the Command on First Logon field in the TL1 Device
Information subview.
Note: The TL1 Device port and TL1 Autonomous port can be same.
SPEC--command_first_logon
For some cases, multiple newlines may be more appropriate. To change the Pre Login Sequence,
highlight the TL1 device icon and select the Information tab in the Component Detail view. The Pre
Login Sequence can be set in the TL1 Device Information section.
The TL1 Gateway AlarmMap is an internal mapping of TL1 events and alarms to CA Spectrum alerts.
The AlarmMap is used by the TL1 daemon to determine whether an incoming TL1 event or alarm is
discarded or be converted to an alert code and forwarded to CA Spectrum. Thus the AlarmMap
functions as a filter to discard unnecessary TL1 events or alarms.
03-Apr-2017 301/311
CA Spectrum - 10.2 and 10.2.1
Another mapping file is also required to support the AlarmMap. The alert code that is specified in the
TL1 AlarmMap is processed by a corresponding AlertMap file on the SpectroSERVER. If the AlertMap
file is missing, TL1 alerts are not properly mapped to events. For more information, see AlertMaps for
TL1 (see page 308).
An AlarmMap usually includes a default entry, which is used for any TL1 events or alarms that lack a
specific mapping. That is, all unmapped TL1 events/alarms result in the same CA Spectrum alert that
is specified in the default entry.
SPEC--TL1_Alarms
03-Apr-2017 302/311
CA Spectrum - 10.2 and 10.2.1
SPEC--TL1_Alarm_Details
<type>,<condition>,<alert-code>,<clr-alert-code>,<process>
<type>
A text string specifying the entry type as either ALM (for alarm) or EVT (for event).
<condition>
A text string identifying a TL1 condition type (TL1 alarms) as specified in the Telcordia standards
document GR-833-CORE. If this string is blank, or empty, the record serves as the default entry for
the AlarmMap. If the string ends in a hyphen (e.g., OGCCS-), all conditions that start with that
string are mapped by this entry. It resembles a wildcard.
<alert-code>
A hexadecimal literal with a leading 0x that specifies the alert code to be used by CA Spectrum
for this TL1 event/alarm.
03-Apr-2017 303/311
CA Spectrum - 10.2 and 10.2.1
<clr-alert-code>
A hexadecimal literal with a leading 0x that specifies the code that CA Spectrum uses to clear
the TL1 event/alarm.
<process>
Is a boolean value (TRUE or FALSE) that specifies whether the event/alarm is processed. If TRUE,
an alert is generated for CA Spectrum. If FALSE, the incoming TL1 event/alarm is discarded and
nothing is forwarded to CA Spectrum.
The following is an example of an AlarmMap:
ALM, ,0x3d50001 ,0x3d50002 ,TRUE <------ DEFAULT
ALM,LINETERM ,0x3d500f3 ,0x3d500f4 ,TRUE
ALM,ECOI ,0x3d501b9 ,0x3d501ba ,TRUE
ALM,SLOR ,0x3d501c9 ,0x3d501ca ,TRUE
EVT,NTYDGSP ,0x3d5009d ,0x3d5009e ,TRUE
The commas can be surrounded by spaces. Everything after the <process> field and a space is
treated as comment for better readability.
The contents of the AlarmMap are critical to the performance of TL1 Gateway. Configure the
AlarmMap such that only those TL1 alarms in which you are interested are processed. In other words,
verify that the <process> value is set to FALSE for all TL1 alarms that you do not want to generate a
CA Spectrum alert.
If an unwanted TL1 event/alarm does not appear in the map, it is still processed through
the default mapping, assuming that the map has a default entry. To prevent this extra
processing, you can take one of the following steps:
Include all unwanted TL1 events/alarms in the map with their <process> values set to
FALSE.
Extract an AlarmMap from either a TL1 device model or from the TL1 device model type
(Gen_TL1_Dev).
Import an AlarmMap in the form of a text file either to a TL1 device model or to the Gen_TL1_Dev
model type.
The tl1map tool is located in your top-level CA Spectrum directory's TL1Apps subdirectory. You can
run tl1map either from the shell command line or from within scripts (if you need to perform more
complicated AlarmMap manipulations). In either case, tl1map is a SpectroSERVER client, so
SpectroSERVER must be up and running.
03-Apr-2017 304/311
CA Spectrum - 10.2 and 10.2.1
Note: The tl1map utility is dedicated to models/model types of the Gen_TL1_Dev hierarchy
only. It is not intended to be used with any other models/model types and could cause
potential data corruption if not used properly.
Syntax
dump
Extracts the internal AlarmMap in text format and saves it to the file specified by the -f option, in
text format.
load
Processes the input file that is specified by the -f option and writes an AlarmMap to the
corresponding attribute.
-f mfile
Indicates that the next entry will provide the name of a particular map file (mfile). In load mode,
the supplied input file is expected to have AlarmMap syntax, and it is converted into an internal
TL1 AlarmMap object. When in dump mode, the contents of the already existing, internal
AlarmMap is extracted, formatted, and written to the specified mfile. This file is then suitable for
visual inspection and processing by a text editor, so it can be changed, and re-imported using the
load option.
-t
Specifies that the handle provided is the model type handle of the TL1 device model type.
-m
Specifies that the handle provided will the model handle of a TL1 device model.
handle
Specifies the handle of either the TL1 device model type (if the -t flag is used) or the TL1 device
model (if the -m flag is used).
Limits: Hexadecimal format
host
The name of the CA Spectrum host. This is only needed when accessing a remote host, or if the
Unix hostname command reports a mixed-case name, while the true host name was advertised
in lower-case format. In any case, tl1map should be run on the local host.
Note: The -f, -t, and -m -f options can appear in any order.
03-Apr-2017 305/311
CA Spectrum - 10.2 and 10.2.1
AlarmMap Extraction
If tl1map is invoked with the dump option, it will read the current AlarmMap attribute value from
either a model (-m option), or a model-type (-t option), convert it into a human-readable format, and
write it to the file specified by the -f option. That file will also contain an informational header, which
includes things like model name, model type name, model handle, model type handle, host name,
and the current time stamp (based on the machine where the utility was invoked). The header is
formatted as a comment, so it will not affect any subsequent import operation using this machine-
generated file.
Typically, you would examine this AlarmMap file with a text editor, make any desired modifications,
and then import the file again by invoking tl1map with the load option.
Note: The entries in the output file are in no particular order. If you want to compare two
different AlarmMaps, you need to do the following:
Importing an AlarmMap
To import an AlarmMap under any of the following scenarios, use the tl1map utility with the load
option:
Creating an initial AlarmMap based on documents from a TL1 device vendor or on TL1 standards
documents.
Extracting a previously stored AlarmMap, applying some changes, and importing the changed
version again.
Extracting the AlarmMap from one model/model type, and importing it to another model/model
type (possibly on another host)
When importing an initial AlarmMap from a file, you have to make sure that the file conforms with
the format specifications for AlarmMap files.
The tl1map utility displays limited diagnostic messages if it encounters illegal entries in the AlarmMap
file. If there were any errors, no data is written to the model/model type attribute.
03-Apr-2017 306/311
CA Spectrum - 10.2 and 10.2.1
Exporting the AlarmMap to a file enables it to be modified. The modified file can be reloaded
/imported.
To copy a model-based map from one host to a model type-based map on another host:
The following example shows a shell script that could be used to implement a simple AlarmMap
editor:
#! /bin/ksh
#
# A simple AlarmMap editor
#
# Syntax: tl1edit { -m | -f } handle [ host ]
#
03-Apr-2017 307/311
CA Spectrum - 10.2 and 10.2.1
Note: The alert code that is specified in the AlertMap is a decimal number rather than an
SNMP trap OID.
Each alert from the TL1 Gateway offers the following standard, unchangeable varbinds:
Varbind 1: AID
Varbind 2: Severity
Varbind 3: Condition
The AlertMap must map these alert variables to event variables, one for one.
The previously mentioned entry maps alert code 64352257 (0x3d5f001 in decimal) to event code
0x3d5f001, and copies each of the five alert variables to the event.
03-Apr-2017 308/311
CA Spectrum - 10.2 and 10.2.1
For more information about the AlertMap, EventDisp, CsEvFormat, and CsPCause files, see Event
Configuration (https://wiki.ca.com/display/CSP/Event+Configuration).
-p gw-port
Specifies that a TL1 Gateway port (gw-port) other than the one specified at model creation will be
designated for communication between the daemon and SpectroSERVER.
Default: 64222
Note: CA recommends that you not use the value 65535, as it is likely to conflict with
other applications.
This procedure varies only slightly (see Step 3) for the Solaris and Windows platforms.
03-Apr-2017 309/311
3.
As soon as you see @(#) followed by the actual port number, the daemon is running. You
can minimize the command shell window.
Take a few steps to start the TL1 Daemon on a remote server on Windows.
TL1d
As soon as you see @(#) followed by the actual port number, the daemon is running. You
can minimize the command shell window.
Take a few steps to start the TL1 Daemon on a remote server on Solaris.
./TL1d
As soon as you see @(#) followed by the actual port number, the daemon is running. You
can minimize the command shell window.
03-Apr-2017 310/311
CA Spectrum - 10.2 and 10.2.1
On NT, bring up the Task Manager, select the TL1d process, and then terminate it.
03-Apr-2017 311/311