Appendix A: Customizing Network Element Information Using Soft Property Builder

Table Of Contents

Customizing Network Element Information Using Soft Property Builder

What Are Soft Properties?

Understanding and Using the Soft Property Builder User Interface

Roles Required to Use the Soft Property Builder

Creating or Editing a Soft Property

Defining the General Properties of a Soft Property

Defining the Parsing Rules for a Soft Property

Defining the Parsing Rules for a Property Type Soft Property

Defining the Parsing Parameters of a Table Type Soft Property

Defining the Event Properties and Thresholds for a Soft Property (Property Type)

Publishing a Soft Property

Deleting a Soft Property

Importing and Exporting a Soft Property

Examples

Basic Soft Property Example

Soft Property Example Including Threshold-Crossing Event

Soft Property Table Example

Parsing Operators and Rules

Event Threshold Triggers

Regular Expressions

Supported Syntax

Unsupported Syntax


Customizing Network Element Information Using Soft Property Builder


Cisco ANA maintains a live model of the network that is based on a network element component modeling architecture. In Cisco ANA's architecture, each network element is modeled as an interconnected hierarchy of network element components, both physical (for example, cards, and ports) and logical (for example, forwarding tables, and profiles). Each network element component maintains a set of properties, which contain its actual data (status, configuration, performance, and so on).

When interacting with northbound clients, the network element component modeling information is translated internally into information model objects in Cisco's northbound information model. This is the public language of the Cisco ANA system with external systems.

The Cisco ANA property management framework enables you to extend (in runtime) the system's coverage and capabilities in two areas:

Soft properties—Extending the network element data collection and modeling, by adding new properties to the network element components, and assigning them to network element MIB variables. The new soft properties are also automatically added to the northbound information model object and displayed in the Inventory perspective

Event thresholds applied to soft properties—Assigning various types of event conditions to existing soft properties, so that an event is displayed in a network element's Active Tickets table when the property threshold is surpassed.

All property definitions and parameters are maintained in XML metadata in the registry. To ease the definition process Cisco ANA provides a user interface called the Soft Property Builder, which guides you through the definition and testing process and hides the underlying XML definitions.

The following topics explain how to use the Soft Property Builder to extend the network element data collection and modeling performed by Cisco ANA:

What Are Soft Properties?

Understanding and Using the Soft Property Builder User Interface

Roles Required to Use the Soft Property Builder

Creating or Editing a Soft Property

Publishing a Soft Property

Deleting a Soft Property

Importing and Exporting a Soft Property

Examples

Parsing Operators and Rules

Event Threshold Triggers

Regular Expressions

What Are Soft Properties?

Cisco ANA VNEs, by default, model a subset of the network element properties, which cover the most important and commonly used properties. Cisco ANA offers the Soft Property Builder so you can extend this network element modeling to cover any MIB variable that the Cisco ANA model does not currently support. Cisco ANA then monitors these new properties in runtime.

The Soft Property Builder also lets you quickly adapt to new software upgrades and new requirements that arise during ongoing operation and deployment. It provides the field engineer with the ability to adapt the currently installed Cisco ANA software to changes in the deployed network, such as new releases of network element operating systems, without having to wait for the next release of Cisco ANA or the VNE.

Every soft property is implemented through a set of definitions that determine the information you want to retrieve from a VNE, and how to parse that information and display it in Cisco ANA. The Soft Property Builder guides you through this process and does not require system restart.

Cisco ANA provides two types of soft properties:

Property type—Uses Telnet/SSH to retrieve property information from a VNE and display it in the Inventory perspective. This is the type you should use if you want Cisco ANA to display an event when a threshold (which you specify) is surpassed; these events are displayed in the network element's Tickets table.

Table type—Uses SNMP to retrieve MIB information from a specific OID and display it as tabular information in the Inventory perspective for that VNE.

For example, consider the case where the Cisco ANA system monitors the port parameters of an ATM switch, and the operator installs a new software version on the switch that is capable of reporting the bit error rate (BER) for each of the ports. Since this capability was not supported in previous software versions of the network element, the Cisco ANA VNE might not support the property. To avoid the need for a new VNE from Cisco, the Soft Property Builder enables you to immediately support the new BER feature in the currently installed version.

Event thresholding is one of the major areas in which Cisco ANA can boost its northbound clients. With this mechanism, Cisco ANA constantly monitors selected properties and generates an event every time they cross a user-defined threshold or violate a condition. This eliminates the need for OSS/BSS applications to constantly upload huge amounts of data and process it. Instead, Cisco ANA filters out irrelevant data and sends only meaningful notifications.

Once you have developed and tested a soft property on a network element, you can publish it and attach it to a wider scope of network elements. However, when you publish the soft property, it is not automatically applied to all network elements in runtime. This is because the new soft property may increase the VNE memory requirement as a result of the additional polling required. If all affected network elements automatically implemented the new soft property, system performance could be negatively impacted because of the extra memory required for processing. For this reason, you should be careful when publishing new soft properties.

Understanding and Using the Soft Property Builder User Interface

The Soft Property Builder is launched from the Inventory perspective from a specific network element or an object within the element (such as a port). This network element is used to develop and test the soft property. Once the soft property has been completed, it can be published and attached to a wider scope of managed elements.

The soft property only applies to the specific object that you are working on during runtime. To apply the soft property to objects of the same type, you must publish it, as described in Publishing a Soft Property.

To open the Soft Property Builder:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder.

Step 3 Click one of the icons described in Table A-1.


Figure A-1 provides an example of the Soft Property Builder main window. It displays soft properties that have been configured for the network element from which the Soft Properties Builder was launched.

Figure A-1 Soft Property Builder Window

Figure A-2 shows the flow of steps required to define a new soft property using the Soft Property Builder.

Figure A-2 Step-by-Step Overview of How to Use the Soft Property Builder

The following tool buttons are located in the Soft Property Builder toolbar.

Table A-1 Soft Property Builder Tool Buttons 

Icon
Tooltip
Description

Add New Soft Property

Create a new soft property.

Edit Soft Property

Edit an existing soft property.

Delete Soft Property

Delete a published or unpublished soft property.

Import Soft Property

Copy a soft property from an exported file and import the soft property to another managed element.

Export Soft Property

Save the soft property to a file that can later be imported to another managed element.

Publish Soft Property

Move the soft property to a different location or change the scope of the soft property across the network hierarchy.


Roles Required to Use the Soft Property Builder

Table A-2 lists the roles that are required to use the Soft Property Builder. For more information on roles, see Creating and Managing Users, Passwords, and Scopes, page 13-34.

Table A-2 Roles Required to Use the Soft Property Builder 

Task
Role Required

Adding, editing, deleting, importing, exporting, and publishing a soft property

Configurator, Administrator


Creating or Editing a Soft Property

To create or edit a soft property:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and locate the network element for which you want to create or edit a soft property.

Step 3 Right-click the network element and choose Soft Property Builder. The Soft Property Builder window is displayed, listing all soft properties for that network element.

Step 4 Do one of the following (see Table A-1 for a description of the icons):

To create a soft property, click the Add Soft Property icon.

To edit an existing soft property, select a soft property and click the Edit Soft Property icon.

Step 5 Define the soft property by working through the following configuration pages:

a. Define General Properties page. This is where you configure general definitions for the soft property, specifying either a Property or Table type. See Defining the General Properties of a Soft Property.

b. Set Parsing Rules page. This is where you configure parsing definitions for the soft property. See Defining the Parsing Rules for a Soft Property.

c. Event Creation page. (Optional) Create an event for Cisco ANA to display when a threshold of the new soft property is surpassed. Events can be created for Property type soft properties only. See Defining the Event Properties and Thresholds for a Soft Property (Property Type).


When you finish, you can view the new or edited soft property in the Inventory perspective. To apply the soft property to network elements of the same type, see Publishing a Soft Property.

Defining the General Properties of a Soft Property

Use the Define General Properties page to configure general definitions for the soft property, such as the label that will be displayed in the Inventory perspective. To define the general properties:


Step 1 Open the Define General Properties page from the Inventory perspective by right-clicking a network element and choosing Soft Property Builder (as described in Creating or Editing a Soft Property). Figure A-3 shows an example of the Define General Properties page.

Figure A-3 Define General Properties Page

Step 2 Enter the general properties for your soft property.

a. Configure the General Properties:

Setting
Description
General Area

Property Name

A unique identifier or key for the soft property (to be used by the information model; this is not displayed in the Inventory perspective).

Property Label

The soft property name that is displayed in the Inventory perspective. This should also be unique.

Description

A description of the soft property.

Enable Property

A check box that instructs the VNE to start collecting information when the soft property is created.

Protocol Area

Type

The soft property type; namely, Property or Table. By default, Property is selected. The fields displayed in the Parsing Rules page depend on your selection. (The selection you make here determines the Protocol retrieval type.)

Polling Rate

The polling rates for the soft property. These are the same as the polling rates you set for the VNE when you added it to Cisco ANA. The values are listed in Table 13-2 on page 13-5.

Reviewers: Will routing_forwarding be removed?

configuration

routing_forwarding

status

system

Protocol1

The protocol to use when retrieving the information.

Telnet/SSH—For Property or Table types. Instructs Cisco ANA to retrieve information using Telnet/SSH.

SNMP—For Table types. Instructs Cisco ANA to retrieve MIB information using an SNMP get command (you specify the OID in the CLI/OID field).

CLI/OID Query

The OID or Telnet command the VNE should use to retrieve the information from the network element.

For SNMP—The OID of the packet.

Note Start the SNMP OID with a dot. For example, if you want to retrieve the OID value of 1.3.6..., then write .1.3.6...

For Telnet/SSH—The Telnet command.

Test CLI/OID Query

Tests the CLI/OID query you entered. This ensures you can connect to the VNE and retrieve the required information.

1 Sometimes, when building a soft property, the SNMP or Telnet command is context sensitive. For example, when you want to retrieve some port-related data through SNMP, checking all the ports each time to find the relevant port is not efficient and can greatly affect system performance. To solve this problem, instrumentation data is available for the soft property. The instrumentation data is a variant between different elements in the system, depending on the context object to which you want to add the soft property. For example, if the instrumentation data is the port ifIndex, to use the ifIndex in the OID, use the following:
1
.3.1.6......$ifIndex$.5.6.4


b. To ensure that you can connect to the VNE and retrieve the information you enetered in the CLI/OID query field, click Test CLI/OID Query. Cisco ANA displays a dialog box containing the query results.

Step 3 If you are creating a Table type soft property, click Next and follow the instructions in Defining the Parsing Parameters of a Table Type Soft Property.

Step 4 If you are creating a Property type soft property, you can do any of the following:

Set up parsing rules for the soft property. Click Next to go to the Set Parsing rules page, and follow the instructions in Defining the Parsing Rules for a Property Type Soft Property.

Create a threshold-crossing alarm without setting up any parsing rules. Click Next twice until you come to the Threshold Crossing Alarm Creation page, and follow the instructions inDefining the Event Properties and Thresholds for a Soft Property (Property Type).

Finish your soft property now, without setting up any parsing rules or threshold-crossing alarms. Click Finish. After 5-10 seconds (depending on your polling settings), your new information is displayed in the network element's properties view in the Inventory perspective.


Defining the Parsing Rules for a Soft Property

Use the Set Parsing Rules page to configure, view, and edit parsing definitions defined for the soft property. The rules you must set depend on the type of soft property you are creating or editing:

For a Property type soft property, see Defining the Parsing Rules for a Property Type Soft Property.

For a Table type soft property, see Defining the Parsing Parameters of a Table Type Soft Property.

Defining the Parsing Rules for a Property Type Soft Property

Property type soft properties use Telnet/SSH to retrieve property information from a VNE and display it in the Inventory perspective. Use this type if you want Cisco ANA to display an event when a threshold (which you specify) is surpassed. To define the parsing parameters for a soft property of the type Property:


Step 1 Open the Set Parsing Rules page after defining the general parameters (as described in Defining the General Properties of a Soft Property). Figure A-4 shows an example of the Set Parsing Rules page.

Figure A-4 Set Parsing Rules Page

The Set Parsing Rules page has two major areas:

Parsing Rules area—Displays existing parsing rules for the soft property. New rules are added to this table when you define a rule and click Apply (in the Expression area).

Index—Order in which the parsing rules are applied.

Operation—Parsing operator type for the rule.

InputBuffer—Input arguments defined for the parsing rule.

OutputBuffer—Output arguments defined for the parsing rule.

Setup Rule/Test area—Where you define and test your parsing rules. This area is activated when you click the Add button.

Step 2 In the Parsing Rules area, click Add to activate the Setup Rule/Test area.

Step 3 Click the Setup Rule tab, and define the parsing rule. You can use the output from a rule as the input to any subsequent rules.

a. From the Operator drop-down list, choose a parsing operator. The operator determines which parameter fields are displayed.

Operator
Description

Header And Footer

Removes a specified number of lines from the header and footer of the input text. For more information see Header and Footer.

Remove Lines

Removes a range of lines from the specified starting row to the specified end row of the input text. For more information see Remove Lines.

Select Lines

Extracts a range of lines from the specified starting row to the specified end row of the input text. For more information see Select Lines.

Replace

Finds one or all occurrences of a substring that matches a specified regular expression, and replaces it with a specified value. For more information see Replace.

Match

Finds and extracts a substring that matches a specified regular expression. If no match can be found, the output buffer receives an empty string. For more information see Match.

Set

Formats the input buffer and local arguments defined in previous operators using a regular expression. For more information see Set.

Substring

Extracts a substring of a specified length from a specified starting point. For more information see Substring.

Note If the substring operator contains any special characters, the parsing integer operator fails.

Parse Integer

Uses the substring rule; when a result is received with the substring; the substring is converted into an integer value. For more information see Parse Integer.


Reviewers: The following is not clear. The 3.x docs say user must select an input buffer. However, no errors are displayed if they don't enter an output buffer. I am not sure about the behavior... they must select an input buffer? See step 3 here:

http://www.cisco.com/en/US/docs/net_mgmt/active_network_abstraction/3.6_sp3/customization/developer/guide/2getstrt.html#wp1043810

b. Configure an output buffer and, if desired, an input buffer. This lets you save the output from one rule and use it as the input to any of the subsequent rules. In this case, the output is redirected to a file you specify.

By default, a rule uses the standard (not redirected) output from the previous rule as its input.

Field Name
Description

Input Buffer

A drop-down list that displays available input buffers for the soft property. The list is empty for the first parsing rule.

3.6.x docs says this is mandatory. Why? Because those docs also say that, by default, standard output from previous rule is the input to following rule. No error appears if they don't enter an ouput buffer.

Output Buffer

File name for the parsing rule output. The name must be unique to the soft property. (Once the rule is created, the output file is added to the dropdown list of Input Buffers, to be used by subsequent rules.)

But there is no error if they do not enter a buffer.


c. Click Apply. The rule is added to the Parsing Rules table.

d. Test the individual rule by proceeding to Step 4, or continue creating more parsing rules.

Step 4 Test individual rules by choosing the Test tab:

a. Click a radio button to indicate whether you want to test one rule or all rules for the soft property. (Click a single rule to activate the Test Single Parsing Rule radio button.) The Testing Rule Index field indicates which rules will be tested.

b. Click the rule you want to test from the Parsing Rules table. The Testing Rule Index field indicates which rule you have selected, using the Index number from the Parsing Rules table.

c. Click Paste Query Results. Cisco ANA runs the query you enetered in the General Properties page and populates the CLI/OID query result box with the information.

d. Click Test. Cisco ANA tests the rule, using the input you specified for that rule.

Step 5 Test multiple rules using Debug Sequence Detail, which will test and debug your entire set of rules. If necessary, use the Delete, Move Up, and Move Down buttons to reorder the rules. (Click in the table to activate the buttons.) Some buttons may be disabled if you have specified input and output buffers; for example, if rule 2 relies on the output of rule 1, you cannot move rule 1 below rule 2.

Step 6 Do either of the following:

Create a threshold-crossing alarm without setting up any parsing rules. Click Next to go to the Threshold Crossing Alarm Creation page, and follow the instructions inDefining the Event Properties and Thresholds for a Soft Property (Property Type).

Finish your soft property now, without setting up any parsing rules or threshold-crossing alarms. Click Finish. After 5-10 seconds (depending on your polling settings), your new information is displayed in the network element's properties view in the Inventory perspective.


Defining the Parsing Parameters of a Table Type Soft Property

Table type soft properties use SNMP to retrieve MIB information from a specific OID and display it as tabular information in the Inventory perspective for that VNE. To define the parsing parameters for a soft property of the type Table:


Step 1 Open the Set Parsing Rules page after defining the general parameters (as described in Defining the General Properties of a Soft Property). Figure A-4 shows an example of the Set Parsing Rules page.

Figure A-5 Set Parsing Rules Page

The Set Parsing Rules page has two major areas:

Parsing Rules area—Displays existing parsing rules for the soft property. New rules are added to this table when you define a rule and click Apply (in the Expression area).

Title—Column heading of the new table.

OID—SNMP get command information.

Expression area—Where you define your parsing rules. This area is activated by clicking the Add button in the Parsing Rules area.

Step 2 In the Parsing Rules area, click Add to activate the Expression area.

Step 3 Define the parsing rules for your table:

Field
Description

Column Title

The column title to be displayed for the soft property.

Column Data

The information to be displayed in the table columns.


a. Click Apply. The rule is added to the Parsing Rules table.

b. Configure additional parsing rules, if desired.

Step 4 Review the Parsing Rules table and use the Delete, Move Up, and Move Down buttons to reorder the rules. (Click in the table to activate the buttons.)

Step 5 Click Finish. After 5-10 seconds (depending on your polling settings), your new information is displayed in the network element's properties view in the Inventory perspective.


Defining the Event Properties and Thresholds for a Soft Property (Property Type)

For Property type soft properties, you can use the Event Creation page to set threshold conditions for the soft property value, and Cisco ANA generates an event when the threshold is crossed. (Table type soft properties do not support this feature.) For each event, you can:

Configure a severity level.

Enable or disable the event.

Configure an event threshold type.

You can also define multiple events for a single soft property. When an event is generated, it is displayed in the Tickets table in the Troubleshooting perspective.

To define the Event Properties parameters:


Step 1 Open the Event Creation page after defining the parsing rules as described in Defining the Parsing Rules for a Property Type Soft Property. Figure A-6 shows an example of the Event Creation page.

Figure A-6 Event Creation Page

The Event Creation page has three major areas:

Threshold Crossing Alarm area—Displays existing events for the soft property. New events are added to this table when you define an event and click Apply.

Description—Event description.

Trigger—Event threshold trigger.

Enabled—Whether event is enabled or disabled.

Severity—Severity level.

Can Be Correlated—Whether the event can be correlated to other events.

Can Correlate—Whether the event can correlate to other events.

Threshold Crossing Alarm Information area—Where you define the event name, description, severity, correlation settings, threshold, and enable/disable settings.

Step 2 To configure the event parameters, click Add under the Event Creation area. The Event Information area is activated. Complete the following fields:

Field
Description

Name

Event name that is displayed in the ticket pane when the alarm is triggered.

Description

User-defined description for the event you are creating.

Severity

Severity level associated with the event: Critical, Major, Minor, Warning, Normal.

Enable

Enables the event. This is checked by default when you click Add.

Can be correlated to other alarms

Allows the correlation of this alarm to other alarms.

Other alarms can correlate to this alarm

Allows other alarms to be correlated to this alarm.

Trigger

Defines when the alarm condition is reached:

Value Equal—Soft property value equal to the value defined in the To Value field, regardless or whether or not it is numeric. For more information see Value Equal.

Value Not Equal—Soft property value not equal to the value defined in the To Value field, regardless of whether or not it is numeric. For more information see Value Not Equal.

Upper Threshold—Upper threshold value, which, when crossed, triggers the alarm for the defined numeric properties. For more information see Upper Threshold.

Lower Threshold—Lower threshold value, which, when crossed, triggers the alarm for the defined numeric properties. For more information see Lower Threshold.

Upper Rate—Upper rate threshold value for the performance counters, which, when crossed, triggers the alarm for the defined numeric properties. For more information see Upper Rate.

Lower Rate—Lower rate threshold value for the performance counters, which, when crossed, triggers the alarm for the defined numeric properties. For more information see Lower Rate.

To Value

The value that, when reached, generates the alarm.

Trigger alarm if persists more than

Triggers the alarm after the threshold has been exceeded for a specified period. Check the box and enter the period value in seconds.


Step 3 Click Apply. The event is added to the Event Creation table.

Step 4 Review the Event Creation table and use the Add and Remove buttons to add or remove rules, as needed.

Step 5 Click Finish. After 5-10 seconds, your new property information is displayed in the network element's properties view in the Inventory perspective. If the error condition for the event occurs, the event appears in the Tickets table.


Publishing a Soft Property

You may want to apply the same property definitions to all network elements of the same type or family. This requires moving the property definition from the specific network element instance to a higher level in the registry hierarchy. This is controlled by the hierarchy manager.

After the soft property has been defined and tested on a specific instance of a managed element, it can be published and applied to a wider scope of managed elements in the network. Because the new soft property may increase the VNE memory requirement (due to the additional polling), when it is published, the new soft property is not implemented on all VNEs in runtime, as a safeguard against performance degradation. You must restart the affected VNEs or AVMs.

The soft properties Hierarchy Manager dialog box enables you to publish the soft property to one or more locations across the inheritance hierarchy (as defined in the system). In other words, you define the scope where the soft property is applied in the hierarchy.

Different variations of a soft property can be used for different managed elements and network elements, where the implementation of the soft property is different for each managed element or network element.

An example of an inheritance hierarchy is displayed below. In this example, the top level of the hierarchy is All network elements, and the lowest level of the hierarchy is Device XYZ.

Figure A-7 Inheritance Hierarchy Example

When a soft property is published to a node in the hierarchy, this overrides any inherited soft properties from a higher level, and automatically applies it to all its children. For example, if a soft property is published to Cisco 7200 it overrides any variant of this soft property, which is defined at a higher level, and is assigned to all devices of the type Cisco 7200 in the system.


Note Before you publish a soft property, measure its effect on system memory usage. For more information on measuring the effect of publishing a soft property, contact ask-ana@cisco.com.


To publish a soft property:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder.

Step 3 Select the soft property you want to publish, and click the Publish Soft Property icon. The Hierarchy Manager dialog box is displayed.


Note If user-friendly VNE names exist in the schema, then the hierarchy manager table displays them in the VNE Hierarchy Location column. A user-friendly VNE name is a hierarchy path that has been defined in the registry and is then displayed in the hierarchy manager table. For more information see Publishing a Soft Property.


Each row that is displayed in the hierarchy manager table represents a different level of the hierarchy. The rows are displayed in descending order; the top row is the highest level of the hierarchy and the bottom row is the lowest level of the hierarchy.

The following information is displayed in the table:

Exist—When a node in the hierarchy is selected, this indicates that a local variant of the soft property exists for that node.

VNE Hierarchy Location—The hierarchy path, as defined in the registry.

IMO Class Name—Information model object class name, currently unavailable in this version.

The following tools are displayed in the Hierarchy Manager window:

Table A-3 Hierarchy Manager Tool Buttons 

Icon
Tooltip
Description

Copy Version

Copies the soft property from a selected node in the hierarchy to copy it to another node in the hierarchy. A copy icon is displayed to the left of the selected node.

Cut Version

Cuts the soft property from a selected node in the hierarchy to move it to another node in the hierarchy. A cut icon is displayed to the left of the selected node.

Paste Version

Pastes the soft property that was copied or cut from a selected node in the hierarchy to another node in the hierarchy. A paste icon is displayed to the left of the selected node.

Note When you paste the soft property to a node, it is immediately applied to that node.

Delete Version

Deletes the soft property from the selected node in the hierarchy.

Note If the soft property has been deleted from all the nodes, the soft property is removed from the list in the Soft Property Builder page.

Export Version

Exports the soft property to a file, so it can be imported to different nodes.

Import Version

Imports a published soft property file, so it can be applied to different nodes.


The Close button is displayed in the Hierarchy Manager window. This button closes the Hierarchy Manager window without publishing the soft property.

Step 4 Select the required node in the hierarchy from which you want to publish the soft property.

Step 5 Click Copy or Cut on the toolbar to copy or cut the soft property.

Step 6 Select the required node in the hierarchy where you want to publish the soft property.

Step 7 Click Paste on the toolbar to paste the soft property. The soft property is now available to the new elements after the VNE is restarted. (The soft property is not applied in runtime because new soft properties increase VNE memory requirements due to additional polling. This is a safeguard against possible system performance degradation.)

Step 8 Restart the affected VNEs or AVMs.


Note You may have to wait a few minutes for the new information to be displayed in the Inventory perspective.



Deleting a Soft Property

Soft properties that you create are, by default, always created as a local instance. A soft property that is defined locally is selected in the Soft Properties Publish Controller dialog box. You can delete soft properties whether or not they have been published.

To delete a soft property:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click the managed element and choose Soft Property Builder.

Step 3 Select the soft property and click the Delete Soft Property icon. A warning message is displayed.

Step 4 Click Yes. The soft property is deleted and no longer displayed in the element properties table of the Soft Property Builder window.


Importing and Exporting a Soft Property

The Soft Property Builder enables you to export (save) a soft property definition to a file on your local server. The soft property definition can then be imported (copied) later to another managed element. In addition, you can export and import a soft property definition to a file and publish it to multiple places in the Hierarchy Manager window.

To export a soft property:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder.

Step 3 Select the soft property you want to export, and click the Export Soft Property icon. The Export Elements dialog box is displayed.

Step 4 From the table in the Export window, select the node that has the version that you want to export.

Step 5 Click OK. A directory browser window opens.

Step 6 Browse to the directory where you want to save the soft property.

Step 7 In the File name field, enter a name and extension (for example, .txt) for the soft property.

Step 8 Click Save. The soft property is saved in the selected directory. The Export dialog box is displayed.

Step 9 Click Close. The Soft Property Builder window is displayed.


To import a soft property:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder.

Step 3 Select the soft property you want to export, and click the Export Soft Property icon. The Import Element dialog box is displayed.

Step 4 Browse to the directory and soft property that you want to import.

Step 5 Click Open. The Import elements window is displayed.

Step 6 From the table in the Import Elements window, select the version that you want to import.

Step 7 Click OK. The Soft Property Builder window is displayed.

Step 8 Click Close. The soft property is imported to the selected managed element or network element and displayed in the Soft Property Builder window.


Examples

These topics provide several examples of creating a soft property from start to finish, including defining the threshold-crossing events and defining a soft property table:

Basic Soft Property ExampleDescribes how to create a simple soft property from beginning to end, including publishing the soft property to another node in the hierarchy.

Soft Property Example Including Threshold-Crossing Event—Describes how to define a threshold-crossing event for a soft property.

Soft Property Table Example—Describes how to define a soft property table.

Basic Soft Property Example

This section describes how to create a simple soft property from beginning to end.

To create a soft property (without a threshold-crossing event):


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder. The Soft Property Builder window is displayed, listing all soft properties for that network element.

Step 3 Configure the Identification parameters:

Event Name—sp01

Label—My Soft Property

Description—Example of soft property

Step 4 Configure the Protocol parameters:

Type—Property

Polling Rate—Status

Protocol—Use Telnet/SSH

CLI/OID—show ip vrf example

Step 5 In the Control area, check the Enable this Soft Property check box.

Step 6 Click Next to save your settings and display the Set Parsing Rules page.

Step 7 In the Parsing Rules area, click Add to indicate you want to add a parsing rule. Cisco ANA activates the choices in the Expression area.

Step 8 In the Expression area, define a parsing operator from the drop-down list:

Operator—Match

Expression—\d\d

Source text box—Enter the information as shown in the example.

Step 9 Click Apply. The rule is added to the Parsing Rules table.

Step 10 Highlight the rule and click Simulate. The result 55 is displayed in the Result text box.

Step 11 In the Parsing Rules area, click Add to indicate you want to add another parsing rule. Cisco ANA activates the choices in the Expression area.

Step 12 Define the information in the Expression area:

Operator—Substring

From Index—1

To Index—1

Source text box—55

Step 13 Click Apply. The rule is added to the Parsing Rules table.

Step 14 Highlight the rule and click Simulate. The result 5 is displayed in the Result text box.

Step 15 Check the Enable Test Rules check box (to test all of the parsing rules after you have finished configuring them) and click Next.

Step 16 In the Input Buffer area, enter the input to parse. This is the text or content you want to simulate for the selected rule.

Step 17 Click Test. The Output Buffer area displays the parsing result log. It may contain only the final parsing result or the entire parsing log with comments per parser used.

Step 18 Click Finish. To view the newly created soft property, click in the right top corner to close the Inventory perspective and then open the Inventory perspective again.

Step 19 From the devices tree, right-click the managed element and choose Soft Property Builder.

Step 20 Select the soft property you created and click the Publish Soft Property icon. The Hierarchy Builder window is displayed.

Step 21 Select the required node in the hierarchy from which you want to publish the soft property.

Step 22 Click Copy or Cut on the toolbar to copy or cut the soft property.

Step 23 Select the required node in the hierarchy where you want to publish the soft property.

Step 24 Click Paste on the toolbar to paste the soft property. The soft property is published to the selected node in the hierarchy.

Step 25 Click Close. The Soft Property Builder window is displayed.


For more information about defining a soft property with a threshold-crossing event, see Soft Property Example Including Threshold-Crossing Event.

Soft Property Example Including Threshold-Crossing Event

This section describes how to define a threshold-crossing event for a soft property.

To create a soft property including threshold-crossing event:


Step 1 Perform steps 1-17, as described in the Basic Soft Property Example.

Step 2 Click Next to open the Event Creation page.

Step 3 Configure the General parameters:

Name—My value is not 5.

Description—Show this event if the value is not equal to 5.

Event Severity—CRITICAL.

Enable check box—Checked.

Step 4 Configure the Trigger parameters:

Trigger—Value Not Equal.

To value—5

Step 5 Click Apply. The event is added to the Event Creation table.

Step 6 Review the Event Creation table and use the following buttons as needed:

Add—Adds the event to the table and allows you to continue creating new events.

Remove—Deletes the selected event from the table.

Step 7 Click Finish. The soft property is added to the Soft Property Builder table.

Step 8 To view the newly created soft property, click in the right top corner to close the Inventory perspective and then open the Inventory perspective again.

Step 9 Perform steps 19-25, as described in Basic Soft Property Example.


For more information about defining a soft property table, see Soft Property Table Example.

Soft Property Table Example

To create a soft property table:


Step 1 In the Inventory perspective, click the Objects tab and the Devices drawer.

Step 2 Open the device tree, and right-click a managed element and choose Soft Property Builder.

The Soft Property Builder window is displayed, listing all soft properties for that network element.

Step 3 Configure the Identification parameters:

Name—sp02

Label—My Soft Table

Description—Example of a soft table

Step 4 Configure the Protocol parameters:

Type—Table

Polling Rate—Status

Protocol—SNMP

CLI/OID—.1.3.6.1.2.1.4.20.1

Step 5 In the Control area, check the Enable this Soft Property check box.

Step 6 Click Next to save your settings and display the Set Parsing Rules page.

Step 7 In the Parsing Rules area, click Add to indicate you want to add a parsing rule. Cisco ANA activates the choices in the Expression area.

Step 8 In the Expression area, define a parsing operator from the drop-down list:

Column Title—My First Column

Column Data—2

Step 9 Click Apply. The rule is added to the Parsing Rules table.

Step 10 In the Parsing Rules area, click Add to indicate you want to add another parsing rule. Cisco ANA activates the choices in the Expression area.

Step 11 Define the information in the Expression area:

Column Title—My Second Column

Column Data—3

Step 12 Click Apply. The rule is added to the Parsing Rules table.

Step 13 Click Finish.

Step 14 To view the newly created soft property, click the network element in the navigation area.

Step 15 Perform steps 19-25, as described in Basic Soft Property Example.


Parsing Operators and Rules

These topics describe the predefined text manipulation operators available for parsing raw network element input and turning it into a soft property that is available in the Set Parsing Rules page. For each operator, its name, description, expected input, validation rules, and unique fields displayed in the page are described. An example of each operator is also provided.

For more information about the Set Parsing Rules page, see Defining the Parsing Rules for a Soft Property.

Header and Footer

Header and Footer removes a specified number of lines from the header and footer of the input text.

Parameter
Description
Validation Rule

Header Lines

The number of header lines to be removed.

Integers only. Mandatory.

Footer Lines

The number of footer lines to be removed.

Integers only. Mandatory.


Remove Lines

Remove Lines removes a range of lines from the specified starting row to the specified ending row of the input text.

Parameter
Description
Validation Rule

From Line

Index of first row to begin removal, inclusive.

Integer only. Mandatory.

To Line

Index of last row to be removed, inclusive.

Integer only. Equal to or greater than From line. Mandatory.


Select Lines

Select Lines extracts a range of lines from the specified starting row to the specified ending row of the input text.

Parameter
Description
Validation Rule

From Line

Index of first row to begin selection, inclusive.

Integer only. Mandatory.

To Line

Index of last row to be selected, inclusive.

Integer only. Equal to or greater than From line. Mandatory.


Replace

Replace finds one or all occurrences of a substring, that matches a specified regular expression, and replaces it with a specified value.

Parameter
Description
Validation Rule

Expression

Search for value or regular expression.

Text. Mandatory.

From Index

Starting index.

Integer. Mandatory.

Note The value entered in this field must be 1 or higher.

With

Replace string with value or regular expression.

Text. Mandatory.

Replace All

Check box. Check this check box to replace all occurrences of the matching substrings; otherwise only the first instance is replaced.

Default is disabled.


Match

Match finds and extracts a substring, that matches a specified regular expression. If no match can be found, the output buffer receives an empty string.

Parameter
Description
Validation Rule

Expression

Search for value or regular expression.

Text. Mandatory.


Set

Set prints the results of the input and output buffers.

Parameter
Description
Validation Rule

Expression

Regular expression template to use for formatting. $_$ specifies the main output buffer.

Text. Mandatory.


Substring

Substring extracts a substring of a specified length from a specified starting point.

Parameter
Description
Validation Rule

From Index

Begin index to select.

Integer. Mandatory

Note The value entered in this field must be 1 or higher.

Length

How many characters to select.

Integer. Mandatory


Parse Integer

Parse Integer uses the substring rule, and when a result is received with the substring it is converted into an integer value.


Note If the substring operator contains any characters, the parsing integer operator fails.


Parameter
Description
Validation Rule

From Index

Starting index to select.

Integer. Mandatory

Note The value entered in this field must be 1 or higher.

Length

How many characters to select.

Integer. Mandatory


Event Threshold Triggers

These topics describe the predefined event threshold triggers available for defining threshold-crossing events that are displayed in the Event Creation page. For each event threshold trigger, its name, description, and the unique fields displayed in the Event Creation page are described. You can define multiple events for the same soft property. The event is displayed in the ticket pane of the Inventory perspective. A counter value, as described in these topics, is a numeric value that always increases. For more information about the Event Creation page, see Defining the Event Properties and Thresholds for a Soft Property (Property Type).

The following are the predefined event threshold triggers for defining threshold-crossing events:

Value Equal

Value Not Equal

Upper Threshold

Lower Threshold

Upper Rate

Lower Rate

Value Equal

The event condition is reached when the soft property value is equal to the value defined in the To Value field regardless of whether or not it is numeric.

The following fields are displayed when the Value Equal threshold type is selected:

To value—The target value.

Trigger event only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field. For example, if CPU usage is over 85% (the event criterion) and this condition persists for more than one minute (the defined period), then the event is triggered. (Keep in mind that if the property polls the network element every x seconds, and if the defined period is less than x, the trigger setting is meaningless.)

Value Not Equal

The event condition is reached when the soft property value is not equal to the value defined in the To Value field regardless of whether or not it is numeric.

The following fields are displayed when the Value Not Equal threshold type is selected:

To value—The target value.

Trigger alarm only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field.

Upper Threshold

The upper threshold value which, when crossed, triggers the event for the defined numeric properties.

This threshold trigger must receive a numeric value. To receive a numeric value, the parse integer rule must be applied on the soft property as an ending rule. For more information about parsing integers, see Parsing Operators and Rules.

The following fields are displayed when the Upper Threshold type is selected:

Trigger alarm when value is above—The value which, when crossed, generates the event.

Clear alarm when value is below—The value which, when crossed (when going back), clears the event.

Trigger alarm only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field.

Lower Threshold

The lower threshold value which, when crossed, triggers the event for the defined numeric properties.

This threshold trigger must receive a numeric value. To receive a numeric value, the parse integer rule must be applied on the soft property as an ending rule. For more information about parsing integers, see Parsing Operators and Rules.

The following fields are displayed when the Lower Threshold type is selected:

Trigger alarm when value is below—The value which, when crossed, generates the event.

Clear alarm when value is above—The value which, when crossed (when going back), clears the event.

Trigger alarm only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field.

Upper Rate

The upper rate trigger is used for checking the counter value changes over a period of one second. When the specified rate is crossed, it triggers the event for the defined numeric property. When this is used with the Trigger event, described in Upper Threshold, you can check that the rate is maintained above the specified value over time.


Note The calculation for the rate per second is as follows: If the property is sampled every x seconds, the calculation is the current value minus the previous value, divided by x seconds. (For example, if the current value is 40, the previous value is 20, and the number of seconds is 5, the rate per second would be 4.


This threshold trigger must receive a numeric value. To receive a numeric value, the parse integer rule must be applied on the soft property as an ending rule. For more information about parsing integers, see Parsing Operators and Rules.

The following fields are displayed when the Upper Rate threshold type is selected:

Trigger alarm when value is above—The value which, when crossed, generates the event.

Clear alarm when value is below—The value which, when crossed (when going back), clears the event.

Trigger alarm only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field.

Lower Rate

The lower rate trigger is used for checking the counter value changes over a period of one second. When the specified rate is crossed, it triggers the event for the defined numeric property. When this is used with the Trigger event, described in Upper Threshold, you can check that the rate is maintained below the specified value over time.


Note The calculation for the rate per second is as follows: If the property is sampled every x seconds, the calculation is the current value minus the previous value, divided by x seconds. (For example, if the current value is 40, the previous value is 20, and the number of seconds is 5, the rate per second would be 4.


This threshold trigger must receive a numeric value. To receive a numeric value, the parse integer rule must be applied on the soft property as an ending rule. For more information about parsing integers, see Parsing Operators and Rules.

The following fields are displayed when the Lower Rate threshold type is selected:

Trigger alarm when value is below—The value which, when crossed, generates the event.

Clear alarm when value is above—The value which, when crossed (when going back), clears the event.

Trigger alarm only if change persists more than—Select this option to trigger the event if the event criterion persists for the defined period. This period is defined in seconds in the trigger event field.

Regular Expressions

This section is based on the documentation of the package GNU RegExp.

A regular expression consists of a character string where some characters are given special meaning with regard to pattern matching. Regular expressions have been in use from the early days of computing, and provide a powerful and efficient way to parse, interpret, and search and replace text within an application.

See these topics for details about regular expressions:

Supported Syntax

Unsupported Syntax

Supported Syntax

Within a regular expression, the following characters have special meaning.

Positional Operators

^

Matches at the beginning of a line

$

Matches at the end of a line

\A

Matches the start of the entire string

\Z

Matches the end of the entire string

\b

Matches at a word break (Perl5 syntax only)

\B

Matches at a nonword break (opposite of \b) (Perl5 syntax only)

\<

Matches at the start of a word (egrep syntax only)

\>

Matches at the end of a word (egrep syntax only)


One-Character Operators

.

Matches any single character

\d

Matches any decimal digit

\D

Matches any nondigit

\n

Matches a newline character

\r

Matches a return character

\s

Matches any whitespace character

\S

Matches any nonwhitespace character

\t

Matches a horizontal tab character

\w

Matches any word (alphanumeric) character

\W

Matches any nonword (alphanumeric) character

\x

Matches the character x, if x is not one of the above listed escape sequences


Character Class Operators

[abc]

Matches any character in the set a, b or c

[^abc]

Matches any character not in the set a, b or c

[a-z]

Matches any character in the range a to z, inclusive

Leading or
trailing dash

Interpreted literally


Within a character class expression, the following sequences have special meaning if the syntax bit RE_CHAR_CLASSES is enabled:

[:alnum:]

Any alphanumeric character

[:alpha:]

Any alphabetical character

[:blank:]

A space or horizontal tab

[:cntrl:]

A control character

[:digit:]

A decimal digit

[:graph:]

A nonspace, noncontrol character

[:lower:]

A lowercase letter

[:print:]

Same as graph, but also space and tab

[:punct:]

A punctuation character

[:space:]

Any whitespace character, including newline and return

[:upper:]

An uppercase letter

[:xdigit:]

A valid hexadecimal digit


Subexpressions and Backreferences

(abc)

Matches whatever the expression abc would match, and saves it as a subexpression. Also used for grouping

(?:...)

Pure grouping operator; does not save contents

(?#...)

Embedded comment; ignored by engine

\n

Where 0 < n < 10, matches the same thing the nth subexpression matched


Branching (Alternation) Operator

a|b

Matches whatever the expression a or b would match


Repeating Operators

These symbols operate on the previous atomic expression.

?

Matches the preceding expression or the null string

*

Matches the null string or any number of repetitions of the preceding expression

+

Matches one or more repetitions of the preceding expression

{m}

Matches exactly m repetitions of the one-character expression

{m,n}

Matches between m and n repetitions of the preceding expression, inclusive

{m,}

Matches m or more repetitions of the preceding expression


Stingy (Minimal) Matching

If a repeating operator (above) is immediately followed by a question mark (?), the repeating operator stops at the smallest number of repetitions that can complete the rest of the match.

Lookahead

Lookahead refers to the ability to match part of an expression without consuming any of the input text. There are two variations to this:

(?=foo)

Matches at any position where foo would match, but does not consume any characters of the input

(?!foo)

Matches at any position where foo would not match, but does not consume any characters of the input


Unsupported Syntax

Some flavors of regular expression utilities support additional escape sequences. The following is not meant to be an exhaustive list. In the future, gnu.regexp may support some or all of the following:

(?mods)

Inlined compilation/execution modifiers (Perl5)

\G

End of previous match (Perl5)

[.symbol.]

Collating symbol in class expression (POSIX)

[=class=]

Equivalence class in class expression (POSIX)

s/foo/bar/

Style expressions as in sed and awk