0 Replies Latest reply: Dec 30, 2008 1:34 PM by Susan Miller RSS

Using Composite Parameters

Susan Miller

Creating Expressions and Composite Parameters


Composite parameters give you the capability to create parameters whose values are dependent on one or more existing PATROL parameters. You can then use PATROL alarm settings and recovery actions on the newly created parameters in the same way that you use alarm settings and recovery actions on other parameters.

Composite parameter expressions consist of one or more relational clauses joined by Boolean (logical) operators. A relational clause may have one of the following forms:

KM parameter (relational operator) constant
Constant (relational operator) KM parameter
KM parameter (relational operator) KM parameter where (relational operator) can be any of the standard PSL relational operators (that is, <, >, ==, <=, and >=). For information about valid relational and Boolean operators, see the PSL Reference Manual.

Relational clauses can be combined using the logical operators AND (&&) and OR (||).

The result of a composite parameter expression is a PATROL parameter condition, such as "alarm when true" or "warn when false."

For example, you can build a composite parameter that triggers a PATROL alarm indicating low memory conditions only when both of the following conditions are true:

MEMmemPagesPerSec > 10 && MEMmemPageFaultsPerSec > MEMmemCacheFaultsPerSec

You can enter and edit composite parameter expressions manually or by using the expression entry wizard. After you enter a composite parameter using the expression entry wizard, you can still edit the expression manually, and you may need to do so for complex expressions. For example, if the expression needs to contain parentheses grouping relational clauses in a hierarchy.

Examples of Composite Parameter Expressions 

Example 1:
CPU Processor Time Percent for CPU 0 is greater than 91 percent

'/NT_CPU/CPU_0/CPUprcrProcessorTimePercent' > 91

Example 2:
Memory Pages Per Second is greater than 10 AND Memory Page Faults Per Second is greater than Memory Cache Faults Per Second

'/NT_MEMORY/NT_MEMORY/MEMmemPagesPerSec' > 10 && '/NT_MEMORY/NT_MEMORY/MEMmemPageFaultsPerSec' > '/NT_MEMORY/NT_MEMORY/MEMmemCacheFaultsPerSec'

Example 3:
Memory Pages Per Second is greater than or equal to 10 OR Memory Page Faults Per Second is equal to Memory Cache Faults Per Second

'/NT_MEMORY/NT_MEMORY/MEMmemPagesPerSec' >= 10 || '/NT_MEMORY/NT_MEMORY/MEMmemPageFaultsPerSec' == '/NT_MEMORY/NT_MEMORY/MEMmemCacheFaultsPerSec' 

Syntax Rules for Composite Parameter Expressions  
The following syntax rules apply when you create a composite parameter expression:

1.  All NT_Composites menu commands require the use of a PATROL Developer Console

2.   A valid composite parameter name consists of alphanumeric characters. It cannot contain any special characters, such as /, *, or #, or a space character.

3.   All parameters in the expression must be valid PATROL parameters. The parameter name must specify the application class, the application instance, and the parameter name.

4.   The parameter name must be surrounded in single quotes (').

5.   Although the expression entry wizard displays all parameters within an application class, including collector parameters, the application cannot use collector parameters in calculations.

6.   Expressions cannot contain arithmetic operators.

7.   String terms must be enclosed in double quotes (").

8.   You can enclose a double quote in a string by "escaping" it using a backslash (\). A string with an enclosed double quote looks like "this \"string\""

You cannot use the backslash to escape any other special characters.

9.   Although the expression entry wizard does not enable you to enter parentheses in an expression, you can enter parentheses manually to control the order of expression evaluation. If parentheses are not used, expression evaluation is strictly left to right, with the relational operators having higher precedence than the Boolean operators.

10.   The active state for the composite parameter does not affect the active state for the PATROL parameters used in the definition of the composite parameter; that is, you can make the composite parameter inactive, but the parameters used in the expression will remain active.

11.   If the parameters used in a composite parameter expression are inactive, the composite parameter will not be calculated.