Attributes And Instance Identifiers

The attributes that you enter in watch expression formulas must always begin with a letter and consist of a combination of letters, digits and underscore characters (_). Enclose attributes with names identical to primitives (TRUE, FALSE, TIME, DELTA, COUNTER_DELTA) in single quotes. You can also specify attributes by attribute ID using the ATTR primitive.
casp1032
The attributes that you enter in watch expression formulas must always begin with a letter and consist of a combination of letters, digits and underscore characters (_). Enclose attributes with names identical to primitives (TRUE, FALSE, TIME, DELTA, COUNTER_DELTA) in single quotes. You can also specify attributes by attribute ID using the ATTR primitive.
A watch expression can consist of a single attribute. To create a multi-attribute expression, select an operator from the button palette, then select another attribute and so on.
If a list attribute is specified in the expression, you must include instance information. To specify an instance, append a '.' followed by the instance ID number (for example,
ifInOctets.2
). Or append '.#' (for example, ifInOctets.#), and select either All or Range in the Instance field. For Range, specify the low and high IDs in the From and To fields. List attributes are indicated with "[]" in the Type column in the Attribute Selector dialog.
In addition to the attributes that you enter as part of watch expressions, you can also dynamically create the attributes that are required to store watch information and destination attributes.
Instance Identifiers
You can use instance identifiers to specify a particular object when you are using list attributes in a watch expression formula.
List attributes require instance IDs to fully identify an object. You can specify a specific instance, a range of instances, or all the possible instances of an attribute in a watch expression. When an OID is built, it uses up to two different sub-OIDs: the standard
SpectroSERVER
OID mechanism or the Watch Instance Specifier. The
SpectroSERVER
creates an OID from the OID prefix and the OID reference (optional). When you specify an instance for the watch expression on the Expression page, it is appended to the OID as follows:
OID = OID prefix + OID reference + Watch instance
If you use the Instance Specifier to specify a range, a result for each instance in the range is computed. If the range specified is larger than the actual instances, results are only computed for the actual instances. That is, if you specify a range of 1-10, and there are only 3 instances, only 3 results are computed.
For example, you want to set a watch on If_In_Octets for a router. You supply a range of 1-3 as the Instance Specifier. Because the OID prefix that the
DX NetOps Spectrum
database uses for If_In_Octets is 1.3.6.1.2.1.2.2.1.10, the following OIDs are assigned:
  • OID = 1.3.6.1.2.1.2.2.1.10 + .1
  • OID = 1.3.6.1.2.1.2.2.1.10 + .2
  • OID = 1.3.6.1.2.1.2.2.1.10 + .3
If you use ALL as the Instance Specifier, all of the instances for the If_In_Octets object are dynamically determined. You can also specify an instance in the watch expression, or you can mix specific instances of an object with RANGE or ALL Instance Specifiers. Using the Instance _of primitive (“.”) to specify an instance of an object overrides the Instance Specifier for that object.
For example, in the following formula, the Instance_of primitive (followed by a value) is used to specify instance number 3 of the If_In_Errors object, and the .# primitive indicates that the current Instance Specifier should be used for the If_In_Octets object.
If_In_Errors.3 / If_In_Octets.#
Assume that the current Instance Specifier is ALL, and both If_In_Errors and If_In_Octets are list attributes with the OIDs 1.3.6.1.2.1.2.2.1.14 and 1.3.6.1.2.1.2.2.1.10 respectively. The division operation for each instance would be performed, using the following OIDs:
If_In_Errors OID = 1.3.6.1.2.1.2.2.1.14 + .3 If_In_Octets OID = 1.3.6.1.2.1.2.2.1.10 + .1 If_In_Errors OID = 1.3.6.1.2.1.2.2.1.14 + .3 If_In_Octets OID = 1.3.6.1.2.1.2.2.1.10 + .2 If_In_Errors OID = 1.3.6.1.2.1.2.2.1.14 + .3 If_In_Octets OID = 1.3.6.1.2.1.2.2.1.10 + .n
Notice how the Instance_of primitive overrides the Instance Specifier for the If_In_Errors attribute OID. Instead of each attribute using each possible instance as a result of selecting ALL, the Instance_of primitive allows specification of a particular instance. However, the Instance Specifier still determines the number of instances of a particular watch.
The INSTANCE_ID of the model and the Instance Specifier is applied to each list attribute in the watch expression. If the watch expression contains attributes that use different instances, an error is returned when you attempt to add the watch.
For example, if you enter one formula that contains an attribute that uses board number as an instance and another formula that uses board port as an instance, an error is returned.
Watch Definition Attributes
When you create a watch for a model, an attribute is created to store the watch details. The attribute has a computer-generated name. It is created using the active database Developer ID (registered or default) in the Watch Definition group under the model type to which the model belongs.
Watch Destination Attributes
When you create a watch for a model, a destination attribute is also created with the same name and data type as the watch. This attribute resembles any other model type attribute. When it is read, the watch expression is automatically evaluated. The result of the evaluation is the result of the read operation.