6.2 Defining Element or Alarm Properties

6.2.1 Understanding the Key Property

When defining a property, it is possible to define a Key property that ensures unique elements or alarms are brought into Operations Center. For example, define the trouble ticket ID property as the Key property so that alarms that are brought into Operations Center have unique IDs corresponding to trouble ticket IDs in the database.

Defining unique, persistent alarm IDs ensures that in situations where the adapter stops and restarts, the system does not reread and create duplicate alarms when processing the data for alarm history or for use in SLA calculations. Stored alarm values are updated, if necessary.

Defining the key property is explained in Section 6.2.2, Mapping Element or Alarm Properties.

6.2.2 Mapping Element or Alarm Properties

To map element and alarm properties:

  1. Click the Property Details tab at the bottom of the Query Results pane.

    Existing properties display on the left side of the screen:

  2. To add a property, click (Add Property).

    A new property displays in the Property ID List and is open in the tab.

  3. To specify a name for the property, do the following:

    • Enter a unique name in the Property ID field. Do not use spaces.

      For instructions on manually configuring alarm column to include spaces, see Section 9.1, Manually Configuring Alarm Column Names.

    • To automatically create parent elements in a parent/child relationship from database information, enter parentElementID in the Property ID field.

    • To automatically create child elements (under the parentElementID elements) without identifying the property as a Key Property, enter elementName in the PropertyID field.

      If the elementName property ID is not used, then the property selected as Key Property is used to generate child elements.

  4. Specify a description for the property in the Description field.

  5. Click the Property Type drop-down list, then select one of the following types:

    Alarm Severity: Displays data as an alarm severity value (Critical, Major, Minor, and so on).

    For more information, see Section 6.2.4, Understanding Alarm Severity and Element Condition Property Data Types.

    Boolean: Displays data as a True or False value.

    Byte: Displays data as a whole number value ranging from ‑128 to 127.

    Character: Displays data as any symbol value that requires one byte of storage.

    Double: Displays data as a more precise numerical value ranging from 4.9E‑324 to 1.7E+308.

    Element Condition: Displays data as an element condition value.

    For more information, see Section 6.2.4, Understanding Alarm Severity and Element Condition Property Data Types.

    Float: Displays data as a numerical value with a decimal ranging from 1.4E‑45 to 3.4E+38.

    Integer: Displays data as a whole number value.

    Long: Displays data as a numerical value between ‑2,147,483,648 and 2,147,483,648.

    Short: Displays data as a numerical value between ‑32,768 and 32,767.

    String: Displays data as a series of characters manipulated as a group.

    Time Stamp: A date and time value.

  6. Click the Display Format drop-down list, then select a format.

    The options are based on the selected Property Type and can include:

    Composed Text: Displays data as static text while including a table column value within the text. Enclose the table column in brackets. For example: text [table.column] text. This is used with the String property type.

    Date: Displays data as a standard date format.

    DateTime: Displays data as a standard date format, including the time.

    IPAddress: Displays data as an IP address syntax.

    Image: Displays data as the name and address of an image.

    Multiline Text: Displays data as multiline text.

    None: Selected as the default when a display format is not applicable.

    Password: Displays data as a password in encoded format.

    Percentage: Displays data as a number as a percentage.

    Script text: Displays data as script code.

    Text Field: Displays data as a text field

    Time: Displays data as a time format.

    URL: Displays data as the URL as a hypertext link.

    Click the hyperlink to open the URL in a new window. Note the URL displays only in the Property page; it does not display as a column in the Alarms view.

    If this property type (or URL Embedded Text) is imported into the following portlets, it possible to click the URL link and open a new window using the specified URL:

    •      Alarm
    •      Alarm Properties
    •      Element Status
    •      Hotlist Properties
    •      Information
    •      Element Properties

    For details on each of these portlets, see Configuring Operations Center Portlets in the Operations Center 5.6 Dashboard Guide.

    URL Embedded Text: Displays data as The URL within a text string is highlighted as a hypertext link. Used when the “http” string is embedded within a property value.

    Click the hyperlink to open the URL in a new window.

    Requirements for the URL format:

    • URLs must be at the beginning or end of a string or surrounded by spaces.

    • The required URL format is:

      {space or beginning of string}{alphanumeric characters}://{URL characters}{space or end of string}{URL characters}

      URLs cannot contain a double quote, less than, or greater than characters.

    URL Page: Displays data as the URL page.

  7. To specify a default value for the property that is used if the value is null, enter the value in the Default Value field. For example, for a column representing City, the default value might be No city provided.

  8. If the property should be used to ensure unique elements or alarms are extracted from the database, select the Key Property check box. For more information, see Section 6.2.1, Understanding the Key Property.

  9. If the property is to be computed, select the Computed Property option and specify the type.

    For information on computational types, see Section 6.2.3, Understanding Computed Properties.

  10. (Element Properties Only) If performance and scalability issues are of concern, consider selecting the Fetch Property Value on Demand check box to load property values only when a user clicks the associated property sheet.

  11. Link the property to a database column by doing any of the following:

    • Enter the column name in the Column Name field.

    • Drag and drop a column from the Database Navigator pane into the Column Name field.

    • Click (Edit Value) to open an edit dialog box for more space to enter the Column Name value.

  12. For additional information on valid entries for generated vs. custom queries, click the Help button.

6.2.3 Understanding Computed Properties

A computation can be used to define an element or alarm property. The values are assigned based on a column value across all database rows read by the query after the adapter starts.

Various computation types can be selected when defining an element or alarm property:

  • First: Returns the value of the first row found for the specified table column.

  • First With Value: Returns the value of the first row having a non‑null value for the specified table column.

  • Highest: Returns the highest value found for the specified table column.

  • Last: Returns the value found in the last row for the specified table column.

  • Last With Value: Returns the value of the last row having a non‑null value for the specified table column.

  • Lowest: Returns the value of the row having the lowest value for the specified table column.

  • None: Performs no calculation.

  • Regular Expression: Returns a value calculated using the regular expression entered. Click Edit Computed Property Parameter to enter a regular expression.

  • Text Date Highest: Attempts to convert the text into data and return the highest value. Available for text date columns.

  • Text Date Lowest: Attempts to convert the text into data and return the lowest value. Available for text date columns.

  • Text Numeric Highest: Attempts to convert the text into a number and return the highest value. Available for text numeric columns.

  • Text Numeric Lowest: Attempts to convert the text into a number and return the lowest value. Available for text numeric columns.

Notes concerning these computation types:

  • First, First With Value, Last and Last With Value are very useful if an ORDER BY column has been specified. For example, in the Query Page, Editor tab, Where: text field: ID > 0 ORDER BY ID ASC. In this case First, First With Value, Last, and Last With Value can act similar to Highest and Lowest.

  • Text Date Highest and Text Date Lowest are useful if a date is encoded as text instead of an underlying database date type. If two text values 4/5/2006 and Jan 1 2006, are sorted using the Highest computed property, they are ordered 4/5/2006, then Jan 1 2006 based on the underlying text type sort order. Based on the Text Date Highest computed property, they are correctly ordered Jan 1 2006, then 4/5/2006.

For instructions on defining element or alarm properties from a query, see Section 6.2.2, Mapping Element or Alarm Properties.

6.2.4 Understanding Alarm Severity and Element Condition Property Data Types

If the property type is set to Alarm Severity or Element Condition, select the appropriate data type from the Data Type drop-down list, then set the minimum and maximum values in the Value Mapping table.

The Data Type options include:

Byte: Sets the property to a whole number value ranging from ‑128 to 127. Both Min Value and Max Value are inclusive.

Double: Sets the property to a more precise numerical value ranging from 4.9E‑324 to 1.7E+308. In this case, Min Value specified is inclusive (>=) while Max Value specified is exclusive (<) to help avoid potential gaps with decimal numbering values.

Float: Sets the property to a numerical value with a decimal part ranging from 1.4E‑45 to 3.4E+38. In this case, Min Value specified is inclusive (>=) while Max Value specified is exclusive (<) to help avoid potential gaps with decimal numbering values.

Integer: Sets the property to a whole number value. Both Min Value and Max Value are inclusive.

Long: Sets the property to a numerical value between ‑2,147,483,648 and 2,147,483,648. Both Min Value and Max Value are inclusive.

Short: Sets the property to a numerical value between ‑32,768 and 32,767. Both Min Value and Max Value are inclusive.

String: Sets the property to a series of characters manipulated as a group. A regular expression can be used to specify the Column Value when the Data Type is set to String but it must be enclosed within forward slashes(/).

For example, a regular expression such as ^.*\b(NEW|ASSIGNED|NEEDINFO|REOPENED)\b.*$ must be defined as /^.*\b(NEW|ASSIGNED|NEEDINFO|REOPENED)\b.*$/

6.2.5 Using the HierarchyKey Property to Simplify Element Naming

Using the HierarchyKey property

Use the HierarchyKey property to simplify the element name section in distinguished names.

For more information on the HierarchyKey property, see Understanding the HierarchyKey Property.

Understanding the HierarchyKey Property

HierarchyKey can generate simpler element DNames than those DNames that result from using a natural database key to manage a set of elements.

As a simple example, assume there are a table of servers and a table of applications. Each table contains a unique integer (or long, UUID, and so on) key, and a name. Assume serverId or appId is selected as the DBElement key, and serverName or appName is selected as the element name.

Table 6-1 and Table 6-2 show how the example tables of servers and applications are defined and the database key is assigned.

Table 6-1 Servers Table

serverID

serverName

1

Server1

2

Server2

Table 6-2 Applications Table

appID

appName

3

Application 1

4

Application 2

The DBElement types are modeled so that each appears under a separate Data Integrator group; one named “Servers” and one named “Applications”:

Servers
   ServerDBElement
      serverId: marked as key property
      serverName: elementName property
Applications
   AppDBElement
      appId: marked as key property
      appName: elementName property

In Operations Center, the element hierarchy looks similar to this:

MyAdapter
   Servers
      Server1
      Server2
   Applications
      Application 1
      Application 2

Data Integrator uses the DBElement key property for each entity as the hierarchy key. This results in a proper uniqueness in the hierarchy, but makes the distinguished names practically unusable for a correlation. Continuing with the example, the resulting distinguished names are:

  • myBDI=MyAdapter/root=Elements

  • ServerDBElement=1/Servers=Servers/myBDI=MyAdapter/root=Elements

  • ServerDBElement=2/Servers=Servers/myBDI=MyAdapter/root=Elements

  • AppDBElement=3/Applications=Applications/myBDI=MyAdapter/root=Elements

  • AppDBElement=4/Applications=Applications/myBDI=MyAdapter/root=Elements

Note that 1, 2, 3, and 4 in the hierarchy correspond to Server1, Server2, Application 1, and Application 2 respectively in the element names. Figure 6-1 illustrates the three-level nesting of names:

Figure 6-1 Properties for an Element

A problem occurs if you need to perform element correlation, such as creating a SCM definition that correlates to elements named similar to the one shown in the previous figure. It is nearly impossible to properly correlate such named elements from external data sources. Many users wind up changing the DBElement keys to an element name. This solution can work, except when there is a need to model relationships in the application-to-server mapping that use a database mapping of many-to-many, in commonly occurring situations when one server is used by multiple applications.

In these cases, you can use the simpler hierarchyKey property to provide the name of the element segment in the distinguished name. Using hierarchyKey places the DBElement in the resulting element hierarchy using a string-based name, instead of the common case of a numeric key value or other value that is difficult to correlate.

6.2.6 Deleting a Property

To delete a property from a query:

  1. Click the Property Details subtab at the bottom of the Query Results pane.

  2. Select a property in the Property ID List pane.

  3. Click (Delete Selected Properties) to remove the property definition.