Hitachi

JP1 Version 12 JP1/Integrated Management 2 - Manager Command, Definition File and API Reference


Suggestion definition file

Organization of this page

Format of the whole suggestion definition file

{
    "meta":{
        "version":"1"
    },
    "suggestions":[
        {
            "suggestionId":"suggestion-ID",
            "label":"label-name-of-the-suggestion",
            "node":"node-on-which-suggestion-information-is-shown",
            "permissions":[
                ["JP1-permission-for-showing-suggestion-information",...],
                ["JP1-permission-for-showing-suggestion-information",...],
                ...
            ],
            "cases":[
                [
                    "suggestion-activation-criteria",
                    "suggestion-activation-criteria",
                    ...
                ],
                [
                    "suggestion-activation-criteria",
                    "suggestion-activation-criteria",
                    ...
                ],
                ...
            ],
            "action":{
                "response-action-information"
            }
        },
        ...    
    ]
}

Files

imdd_suggestion_any-file-name.conf (user-created suggestion definition file)

imdd_suggestion.conf (suggestion definition file)

imdd_suggestion.conf.model (model file for the suggestion definition file)

Storage directory

In Windows
For a physical host:

Manager-path\conf\imdd\suggestion

For a logical host:

shared-folder\jp1imm\conf\imdd\suggestion

In UNIX
For a physical host:

/etc/opt/jp1imm/conf/imdd/suggestion

For a logical host:

shared-directory/jp1imm/conf/imdd/suggestion

For user-created suggestion definition files, copy the imdd_suggestion.conf file and store it in a given directory, and use the argument of the jddupdatesuggestion command to specify a directory path.

Description

A suggestion definition file defines criteria for suggesting response actions (suggestion display criteria and suggestion activation criteria) and what the actions do.

You can create more than one suggestion definition file. You can also create multiple suggestion definitions in one suggestion definition file. You should specify a suggestion ID (suggestionId) for each suggestion definition, so that it will be identified as an individual suggestion definition. Therefore, unique suggestion IDs must be specified in all suggestion definition files. If a specified suggestion ID is duplicated, an error occurs when the suggestion definition files are applied.

When the definitions are applied

When the jddupdatesuggestion command is completed successfully, the information in the suggestion definition file takes effect in the Intelligent Integrated Management Base.

Information that is specified

Save the suggestion definition file in UTF-8 format, with no byte order mark (BOM) added to it. The following shows the information that is specified in the whole suggestion definition file.

"meta"

Specifies meta information. The data type is object. This member cannot be omitted.

"version":"1"

Is the version of the suggestion definition file. Specify 1. The data type is string. This member cannot be omitted.

"suggestions"

Is an array of suggestion definition objects. You can specify 0 to 1,000 definitions in a suggestion definition file (the total number of definitions for all suggestion definition files is 1,000). The data type is object[]. This member cannot be omitted.

"suggestionId":"suggestion-ID"

Specifies a unique suggestion ID throughout all suggestion definition files.

The suggestion ID can consist of half-width alphanumeric characters, hyphens (-), and underscores (_). You can specify from 1 to 255 characters.

Use an easy-to-understand suggestion ID because it is specified in a request for the REST API or used for message padding.

Note that in the suggestion list area on the Suggestion tab of the Integrated Operation Viewer window, the suggestions are sorted in order of activation status and character code of the suggestion ID. Therefore, define a suggestion ID with characters that come earlier in the character code order for a suggestion definition with higher priority.

Any string starting with JP1, jp1, hitachi, or HITACHI is not available for the suggestion ID.

The data type is string. This member cannot be omitted.

"label":"label-name-of-the-suggestion"

on the Suggestion tab of the Integrated Operation Viewer window and as Suggestion name in the Suggestion details area. You specify it as a string from 1 to 60 characters without any control characters. The data type is string. This member cannot be omitted.

"node":"IM-management-node-on-which-suggestion-information-is-shown"

Specifies the tree SID of the IM management node on which the suggestion is shown, with the regular expression. It can consist of half-width alphanumeric characters and symbols.

The suggestion information can be shown only on the IM management node with the tree SID that partially matches the specified regular expression. The data type is string. This member cannot be omitted.

"permissions":[["JP1-user-permission-under-which-the-suggestion-information-is-shown"]]

Specifies the JP1 user permission under which the suggestion information is shown in double arrays.

A set of conditions specified in interior square brackets ([]) is evaluated as an AND condition, whereas one specified in exterior square brackets is evaluated as an OR condition. You can specify 1 to 100 JP1 permissions as a combination of interior and exterior square brackets. The data type is string[][].

This member can be omitted. If it is omitted, the system follows the view condition for IM management nodes in the Integrated Operation Viewer window.

"cases":[["suggestion-activation-criteria"]]

Specifies information on suggestion activation criteria in double arrays.

A set of conditions specified in interior square brackets ([]) is evaluated as an AND condition, whereas one specified in exterior square brackets is evaluated as an OR condition. You can specify 1 to 100 sets of suggestion activation criteria as a combination of interior and exterior square brackets. The data type is object[][].

This member can be omitted. If it is omitted, the system assumes that the condition is always true.

"action":"response-action-information"

Specifies information on a response action. The data type is object. This member cannot be omitted.

You can use variables in the definition of suggestion activation criteria and response actions. For details about the use of variables, see (3) Variables.

(1) Suggestion activation criteria

Specify criteria when the suggestion function suggests response actions as suggestion activation criteria. Each criterion you specify has a criterion key, comparison keyword, and value to be compared with. Whether a criterion is true is determined by evaluating the target specified as the criterion key and the value specified as the value to be compared with using the comparison methods specified as the comparison keyword.

The suggestion activation criteria should be specified as an element of the cases parameter in the suggestion definition file. An interior array within the double array uses an AND condition, whereas an exterior array uses an OR condition. One AND-condition array is called a suggestion activation criteria group. The following shows an example of the suggestion activation criteria group:

cases:[
    [suggestion-activation-criterion-1,suggestion-activation-criterion-2],   <- Suggestion activation criteria group a
    [suggestion-activation-criterion-3,suggestion-activation-criterion-4]    <- Suggestion activation criteria group b
]

In the above examples, suggestion activation criteria 1 and 2 are evaluated as an AND condition, whereas the suggestion activation criteria groups a and b are evaluated as an OR condition.

The suggestion activation criteria are evaluated in the order specified in the cases members. In the above example, the criteria are evaluated in the order of suggestion activation criterion 1, suggestion activation criterion 2, suggestion activation criterion 3, and suggestion activation criterion 4.

However, the evaluation can be skipped if a suggestion activation criteria group is not met or the suggestion activation criteria in the applicable suggestion definition are met.

For example, if a failed suggestion activation criterion is found in a suggestion activation criteria group, the evaluation is skipped even when some suggestion activation criteria have not been evaluated yet, because the suggestion activation criteria group is not met as an AND condition. If a suggestion activation criteria group is met, the evaluation is skipped even when some suggestion activation criteria groups have not been evaluated yet because the suggestion activation criteria in the applicable suggestion definition are met as an OR condition.

The following shows an example in which the evaluation of some suggestion activation criteria is skipped:

cases:[
    [suggestion-activation-criterion-1 (false), suggestion-activation-criterion-2 (skipped)],   <- Suggestion activation criteria group a
    [suggestion-activation-criterion-3 (true), suggestion-activation-criterion-4 (true)],     <- Suggestion activation criteria group b
    [suggestion-activation-criterion-5 (skipped), suggestion-activation-criterion-6 (skipped)]   <- Suggestion activation criteria group c
]

In the above example, when suggestion activation criterion 1 is determined to be false, suggestion activation criteria group a is not met and the evaluation of suggestion activation criterion 2 is skipped. When suggestion activation criteria 3 and 4 are determined to be true, suggestion activation criteria group b is met. This results in the suggestion activation criteria in the applicable suggestion definition being met, causing the evaluation of suggestion activation criteria 5 and 6 to be skipped.

Furthermore, if a suggestion activation criterion is determined to be an error due to a failure to get criterion information or to convert a variable, the suggestion activation criteria in the applicable suggestion definition are determined to be an error, causing all the subsequent evaluations to be skipped.

The following shows an example where all evaluations are skipped:

cases:[
    [<suggestion-activation-criterion-1(true)>, <suggestion-activation-criterion-2(error)>],
    [<suggestion-activation-criterion-3(skipped)>, <suggestion-activation-criterion-4(skipped)>],
    [<suggestion-activation-criterion-5(skipped)>, <suggestion-activation-criterion-6(skipped)>]
]

If suggestion activation criterion 2 is determined to be an error, then the suggestion activation criteria in the applicable suggestion definition are determined to be an error, causing the evaluations of suggestion activation criteria 3 to 6 to be skipped.

The cases members in interior [] are evaluated as an AND condition and those in exterior [] as an OR condition, and thus a set of OR conditions cannot be connected as an AND condition. To specify the same condition, you can rewrite the condition as follows:

(Before rewriting)

(condition A OR condition B) AND (condition C OR condition D)

(After rewriting)

(condition A AND condition C) OR (condition A AND condition D) OR (condition B AND condition C) OR (condition B AND condition D)

Although you have to specify the same condition twice, it takes no time to evaluate it because the second evaluation uses the criterion information for evaluating the suggestion activation criterion obtained from JP1/IM or linked products at the time of the first evaluation.

If you want to connect AND and OR conditions in a complicated manner, you can also use plug-in functions or batch shell scripts to evaluate the conditions in these programs, in addition to the above method.

Note

If you want to check the criterion information acquired when judging the respective suggestion activation criteria (such as the standard output for a command or the REST API status code) when a suggestion is established, specify the variable of the suggestion activation criteria execution result in the description member of the response action. For details about variables, see (3) Variable.

Format of suggestion activation criterion

{
    "type":"type-of-criterion",
    "key":"criterion-key",
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified in a suggestion activation criterion

"type":"type-of-criterion"

Specifies the type of the suggestion activation criterion. For details about possible values, see the table below. The data type is string. This member cannot be omitted.

Table 2‒6: Members available for type

No.

Value

Description

1

event

Specify it when you define a criterion for a JP1 event.

2

eventCount

Specify it when you define a criterion for the number of JP1 events.

3

trendCount

Specify it when you define a criterion for the number of time-series data sets.

4

restApi

Specify it when you define an execution result of the REST API.

5

plugin

Specify it when you define a criterion for an execution result of a product plug-in.

6

cmd#

Specify it when you define a criterion for an execution result of a command. For details about commands you can execute, the execution host, and the login user, see 4.5.10 jp1Imdd.execCmd.

7

struct

Specify it when you define a criterion for IM management nodes.

#

You can specify this value when JP1/Base on the execution host for the command is version 12-10 or later. If the version is earlier than 12-10, the command execution fails, and the return value of 0 as well as empty standard output and standard error output are returned.

"key":"criterion-key"

Specifies the target of the suggestion activation criterion. Possible values vary depending on the value specified for the type member. The data type is object. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values vary depending on the value specified for the type member. The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies the value to be compared with. Possible values vary depending on the value specified for the type member. The data type depends on the ope member. This member cannot be omitted.

"cache":"availability-of-criterion-information-cache"

Specifies whether the cache of criterion information is used to evaluate the suggestion activation criterion.

  • When the cache is used

    If a suggestion activation criterion is evaluated with the suggestion activation criterion having the same key before the cache expires, the information in the cache is used without getting the criterion information. The cache expires in 10 minutes.

  • When the cache is not used

    Criterion information is always obtained to evaluate a suggestion activation criterion.

Specify either true or false. Specify true if you use the cache, or false if not.

This member is not available if the type member is set to struct. It is ignored if specified. When you specify true, the cache is created and updated when criterion information is obtained using the response action suggestion API.

The data type is Boolean. This member can be omitted. If it is omitted, the system assumes false for operation.

"description":"description-of-the-criterion"

Specifies the description of the suggestion activation criterion that is displayed in the Suggestion details area on the Suggestion tab of the Integrated Operation Viewer window, as a string from 1 to 512 characters without any control characters. The data type is string. This member cannot be omitted.

(A) Possible values for each of the key, ope, and val members

Different values can be specified for each of the key, ope, and val members depending on type (type of criterion) of a suggestion activation criterion. The possible values for each member are described here. Note that the cache and description members can be specified regardless of what type is.

(a) Suggestion activation criterion when type is set to event

When type (type of criterion) is set to event, whether any JP1 event that meets particular conditions exists can be specified as a suggestion activation criterion.

Format
{
    "type":"event",
    "key":{
        "sid":"tree-SID-of-the-node-with-which-the-event-is-associated",
        "statusFilter":status-of-node,
        "attribute-name":"attribute-value",
        "REGEX_attribute-name":"attribute-value"
    },
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on JP1 events which are subject to the suggestion activation criterion. The data type is object. This member cannot be omitted.

"sid":"tree-SID-of-the-node-with-which-the-event-is-associated"

Specifies the tree SID of the node with which the event is associated. Possible characters conform to the specifications of the tree SID. The data type is string. This member can be omitted. If it is omitted, the system assumes that the selected node is specified.

"statusFilter":status-of-node

Specifies the statuses of nodes as an array if you narrow down to only events that have applicable node statuses. Possible values are as follows:

  • 10: Green

    It narrows down events to processed events, released or deleted severe events, and events other than severe events.

  • 20: Yellow

    It narrows down events to severe events with the severity of Warning, Debug, and Information and the event status of Unprocessed, Processing, and Held.

  • 30: Orange

    It narrows down events to severe events with the severity of Error and the event status of Unprocessed, Processing, and Held.

  • 40: Red

    It narrows down events to severe events with the severity of Emergency, Alert, and Critical and the event status of Unprocessed, Processing, and Held.

When multiple values are specified, events are searched for in the OR condition.

When the severe events filter function or the severe event release and delete function is used to change events that correspond to the severe event, the events are narrowed down according to the status after the change when suggestion activation criteria are evaluated.

The data type is number[]. This member can be omitted. However, we recommend that you specify it in order to improve the performance of the event search.

"attribute-name":"attribute-value"

Specifies the value of the attribute specified by the attribute name for the event. The attribute names available as a member are the same as those values that can be specified for key in the event search condition object. The values that can be specified for each attribute name are the same as those values that can be specified for val in the search condition object. A single value can contain up to 4,096 bytes, and a single suggestion activation criterion can contain up to 4,096 bytes (total size of values specified for <attribute-name> and <REG_attribute-name> of a single suggestion activation criterion). For details about criterion information objects, see 7.2.1 (3)Event search condition object. However, if a half-width space is specified in the value of each attribute, the system assumes that %20 is specified.

An event that exactly matches the value is searched for. If the value is an array, an event that exactly matches one of the values is searched for.

If neither the attribute name B.TIME (registered time) nor the attribute name B.ARRIVEDTIME (arrived time) is specified, the system assumes that the following value is specified as a value of the attribute name B.TIME:

["one-day-before-the-current-time","current-time"]

If the attribute name E.START_TIME (start time) and the attribute name E.END_TIME (end time) have one of the following values, the system assumes no match, no matter what dates and times are specified:

  • Value that is not a number

  • Number less than 0

  • Number of 2,147,483,648 or more

The data type depends on attribute-name. This member can be omitted.

"REGEX_attribute-name":"attribute-value"

Specifies the value of the attribute specified by attribute-name for the event. The attribute names available as a member are those values that can be specified for key of the event search condition object, which are attribute names for attributes containing a regular expression for the comparison keyword that can be specified. The values that can be specified for each attribute name are the same as those values that can be specified for val in the search condition object. A single value can contain up to 4,096 bytes, and a single suggestion activation criterion can contain up to 4,096 bytes (total size of values specified for <attribute-name> and <REG_attribute-name> of a single suggestion activation criterion). For details about criterion information objects, see 7.2.1 (3) Event search condition object. However, if a half-width space is specified in the value of each attribute, the system assumes that %20 is specified.

Events that partly match the value of the specified regular expression are searched for.

The data type is string. This member can be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. A possible value is as follows:

  • EXIST: Whether JP1 events that meet all the conditions specified in key exist

The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies whether JP1 events that meet all the conditions specified in key exist.

Specify either true or false. Specify true if JP1 events exist, or false if they do not.

The data type is Boolean. This member cannot be omitted.

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

..

Example

Here is an example of evaluating whether JP1 events that meet the following conditions are issued:

  • They are associated with the selected IM management node.

  • Events that have the status of Yellow (Warning) or higher.

  • The registration dates of the events are within the past 60 minutes.

  • Their event ID is 00004860, which is the one for the JP1/PFM health check event.

  • The message of the event contains the health check status indicating that the host has stopped.

  • The event status of the event is Unprocessed. (Its status is not Processing or Held.)

{
    "type":"event",
    "key":{
        "statusFilter":[20,30,40],
        "B.TIME":["${:time:-60.m.:}","${:time::}"],
        "B.ID":["00004860"],
        "REGEX_B.MESSAGE":"KAVL15022-E.*hcsstatus=Host Not Available",
        "E.@JP1IM_DEALT":[0]
    },
    "ope":"EXIST",
    "val":true,
    "description":"A JP1 event indicating that the host stopped has been issued"
}

(b) Suggestion activation criterion when type is set to eventCount

When type (type of criterion) is set to eventCount, the number of JP1 events that meet particular conditions can be specified as a suggestion activation criterion.

Format
{
    "type":"eventCount",
    "key":{
        "sid":"tree-SID-of-the-node-with-which-the-event-is-associated",
        "statusFilter":status-of-node,
        "attribute-name":"attribute-value",
        "REGEX_attribute-name":"attribute-value"
    },
    "ope":"comparison-keyword",
    "val":value-to-be-compared-with,
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on JP1 events which are subject to the suggestion activation criterion. The data type is object. This member cannot be omitted.

"sid":"tree-SID-of-the-node-with-which-the-event-is-associated"

This is an object that specifies the information on JP1 events which are subject to the suggestion activation criterion. The data type is string. This member can be omitted. If it is omitted, the system assumes that the selected node is specified.

"statusFilter":status-of-node

Specifies the statuses of nodes as an array if you narrow down to only events that have applicable node statuses. Possible values are as follows:

  • 10: Green

    It narrows down events to processed events, released or deleted severe events, and events other than severe events.

  • 20: Yellow

    It narrows down events to severe events with the severity of Warning, Debug, and Information and the event status of Unprocessed, Processing, and Held.

  • 30: Orange

    It narrows down events to severe events with the severity of Error and the event status of Unprocessed, Processing, and Held.

  • 40: Red

    It narrows down events to severe events with the severity of Emergency, Alert, and Critical and the event status of Unprocessed, Processing, and Held.

When multiple values are specified, events are searched for in the OR condition.

When the severe events filter function or the severe event release and delete function is used to change events that correspond to the severe event, the events are narrowed down according to the status after the change when suggestion activation criteria are evaluated.

The data type is number[]. This member can be omitted. However, we recommend that you specify it in order to improve the performance of the event search.

"attribute-name":"attribute-value"

Specifies the value of the attribute specified by the attribute name for the event. The attribute names available as a member are the same as those values that can be specified for key in the event search condition object. The values that can be specified for each attribute name are the same as those values that can be specified for val in the search condition object. A single value can contain up to 4,096 bytes, and a single suggestion activation criterion can contain up to 4,096 bytes (total size of values specified for <attribute-name> and <REG_attribute-name> of a single suggestion activation criterion). For details about criterion information objects, see 7.2.1 (3) Event search condition object. However, if a half-width space is specified in the value of each attribute, the system assumes that %20 is specified.

An event that exactly matches the value is searched for. If the value is an array, an event that exactly matches one of the values is searched for.

If neither the attribute name B.TIME (registered time) nor the attribute name B.ARRIVEDTIME (arrived time) is specified, the system assumes that the following value is specified as a value of the attribute name B.TIME:

["one-day-before-the-current-time","current-time"]

If the attribute name E.START_TIME (start time) and the attribute name E.END_TIME (end time) have one of the following values, the system assumes no match, no matter what dates and times are specified:

  • Value that is not a number

  • Number less than 0

  • Number of 2,147,483,648 or more

The data type depends on attribute-name. This member can be omitted.

"REGEX_attribute-name":"attribute-value"

Specifies the value of the attribute specified by attribute-name for the event. The attribute names available as a member are those values that can be specified for key of the event search condition object, which are attribute names for attributes containing a regular expression for the comparison keyword that can be specified. The values that can be specified for each attribute name are the same as those values that can be specified for val in the search condition object. A single value can contain up to 4,096 bytes, and a single suggestion activation criterion can contain up to 4,096 bytes (total size of values specified for <attribute-name> and <REG_attribute-name> of a single suggestion activation criterion). For details about criterion information objects, see 7.2.1 (3) Event search condition object. However, if a half-width space is specified in the value of each attribute, the system assumes that %20 is specified.

Events that partly match the value of the specified regular expression are searched for.

The data type is string. This member can be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values are as follows:

  • GT: The number of JP1 events that meet the conditions specified in key is greater than the value specified in val.

  • LT: The number of JP1 events that meet the conditions specified in key is less than the value specified in val.

The data type is string. This member cannot be omitted.

"val":value-to-be-compared-with

Specifies the number of JP1 events that meet the conditions specified in key, as an integer from 0 to 100.

The data type is number. This member cannot be omitted.

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether more than 10 JP1 events that meet the following conditions are issued:

  • They are associated with the selected IM management node.

  • Events that have the status of Yellow (Warning) or higher.

  • The registration dates of the events are within the past 60 minutes.

  • Their event ID is 00004860, which is the one for the JP1/PFM health check event.

  • The message of the event contains the health check status indicating that the host has stopped.

  • The event status of the event is Unprocessed. (Its status is not Processing or Held.)

{
    "type":"eventCount",
    "key":{
        "B.TIME":["${:time:-60.m.:}","${:time::}"],
        "B.ID":["00004860"],
        "REGEX_B.MESSAGE":"KAVL15022-E.*hcsstatus=Host Not Available",
        "E.@JP1IM_DEALT":[0]
    },
    "ope":"GT",
    "val":10,
    "description":"More than 10 JP1 events indicating that the host has stopped have been issued within the past one hour"
}

(c) Suggestion activation criterion when type is set to trendCount

When type (type of criterion) is set to trendCount, the number of time-series data sets that meet particular conditions can be specified as a suggestion activation criterion.

Format
{
    "type":"trendCount",
    "key":{
        "sid":"tree-SID",
        "metric":"metric-name",
        "startTime":"start-date-and-time",
        "endTime":"end-date-and-time",
        "countPerInstance":upper-limit-for-the-number-of-data-sets-per-instance,
        "instanceCount":upper-limit-for-the-number-of-instances,
        "instance":"instance-name",
        "threshold":threshold-value,
        "thresholdType":"threshold-value-type"
    },
    "ope":"comparison-keyword",
    "val":value-to-be-compared-with,
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on time-series data which is subject to the suggestion activation criterion.

The data type is object. This member cannot be omitted.

"sid":"tree-SID"

Specifies the tree SID of time-series data. Possible characters conform to the specifications of the tree SID.

If multiple configuration information SIDs are associated with the specified tree SID, the time-series data from one configuration information SID is obtained.

If the time-series data is obtained successfully, it is used to evaluate the conditions. If obtaining it fails, the next time-series data is obtained.

When time-series data is unable to be obtained for all configuration information SIDs, obtaining criterion information is a failure. The order of obtaining time-series data is undefined.

The data type is string. This member can be omitted. If it is omitted, the system assumes that the selected node is specified.

"metric":"metric-for-time-series-data"

Specifies a metric for time-series data. You specify it with half-width alphanumeric characters, hyphens (-), and underscores (_) of 255 characters or fewer. The data type is string. This member cannot be omitted.

"startTime":"start-date-and-time-of-the-time-series-data"

Specifies the start date and time of time series data as the UTC time in ISO 8601 format. Do not specify the seconds after the decimal point. The data type is string. This member cannot be omitted.

"endTime":"end-date-and-time-of-the-time-series-data"

Specifies the end date and time of time-series data as the UTC time in ISO 8601 format. Do not specify the seconds after the decimal point. The data type is string. This member cannot be omitted.

"countPerInstance":upper-limit-for-the-number-of-data-sets-per-instance

Specifies the upper limit for the number of data sets per instance to be obtained. An integer from 1 to 30,000 can be specified. Specify it so that the number obtained by multiplying countPerInstance by instanceCount is 30,000 or less. The data type is number. This member can be omitted. If it is omitted, the system assumes 60 for operation.

"instanceCount":upper-limit-for-the-number-of-instances

Specifies the upper limit for the number of instances. An integer from 1 to 30,000 can be specified. Specify it so that the number obtained by multiplying countPerInstance by instanceCount is 30,000 or less. The data type is number. This member can be omitted. If it is omitted, the system assumes 10 for operation.

"instance":"instance-name"

Specifies the instance name of the instance that is subject to the suggestion activation criterion when there are multiple instances in the time-series data. The data type is string. This member can be omitted. If it is omitted, the first instance is subject to the suggestion activation criterion.

A string of up to 255 characters without any control character can be specified.

"threshold":threshold-value

Specifies the threshold value for the target time-series data. The data type is number. This member cannot be omitted.

"thresholdType":"threshold-value-type"

Specifies the range of the target time-series data. Possible values are as follows:

  • <: The range of targets is less than the value specified for threshold.

  • <=: The range of targets is less than or equal to the value specified for threshold.

  • >: The range of targets is more than the value specified for threshold.

  • >=: The range of targets is more than or equal to the value specified for threshold.

The data type is string. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values are as follows:

  • GT: The number of time-series data sets that meet the conditions specified in key is greater than the value specified in val.

  • LT: The number of time-series data sets that meet the conditions specified in key is less than the value specified in val.

The data type is string. This member cannot be omitted.

"val":value-to-be-compared-with

Specifies the number of time-series data sets that meet the conditions specified in key. An integer from 0 to 30,000 can be specified. The data type is number. This member cannot be omitted.

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether one or more time-series data sets that meet the following conditions exist:

  • Target node: Selected node

  • Metric: CPU usage

  • Start date and time: One hour ago

  • End date and time: Current time

  • Upper limit for the number of data sets per instance: 60

  • Upper limit for the number of instances: 10

  • Threshold value: 80

  • Threshold value type: Greater than the threshold value

{
    "type":"trendCount",
    "key":{
        "sid":"${.:tree:sid:}",
        "metric":"cpu_used_rate",
        "startTime":"${:time:-60.m.:}",
        "endTime":"${:time::}",
        "countPerInstance":60,
        "instanceCount":10,
        "threshold":80,
        "thresholdType":">"
    },
    "ope":"GT",
    "val":0,
    "description":"One or more time-series data sets that exceeded 80% are found in the time-series data of CPU usage for the past one hour"
}

(d) Suggestion activation criterion when type is set to restApi

When type (type of criterion) is set to restApi, the execution result of the REST API (the status code, response header, and response body) can be specified as a suggestion activation criterion.

Format
{
    "type":"restApi",
    "key":{
        "method":"method-of-the-REST-API",
        "url":"URL-of-the-REST-API",
        "headers":"request-header-of-the-REST-API",
        "body":"request-body-of-the-REST-API",
        "param":"parameter-to-be-compared-with-in-the-response-of-the-REST-API"
    },
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on the REST API which is subject to the suggestion activation criterion.

The data type is object. This member cannot be omitted.

"method":"method-of-the-REST-API"

Specifies a method of the REST API. Possible values are as follows:

  • GET

  • HEAD

  • POST

  • PUT

  • PATCH

  • DELETE

  • OPTIONS

  • TRACE

The data type is string. This member cannot be omitted.

"url":"URL-of-the-REST-API"

Specifies the URL of the REST API. Possible characters are half-width alphanumeric characters and the following symbols that conform to the RFC 2396 specifications:

;, /, ?, :, @, &, =, +, $, ,, -, _, ., !, ~, *, ', (, ), %

Begin the URL with http:// or https://.

The data type is string. This member cannot be omitted.

"headers":"request-header-of-the-REST-API"

Specifies the request header of the REST API. The data type is object. This member cannot be omitted.

"body":"request-body-of-the-REST-API"

Specifies the request body of the REST API. The data type is object. When the GET or DELETE method is used and the body is not required, omit this member. This member can be omitted.

"param":"parameter-to-be-compared-with-in-the-response-of-the-REST-API"

Specifies the parameter to be compared with in the response of the REST API. Possible values are as follows:

  • status: Status code

  • headers: Response header

  • body: Response body

The data type is string. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values are as follows:

  • IN: The response of the REST API specified in key matches the value specified for val.

  • NOTIN: The response of the REST API specified in key does not match the value specified for val.

  • GT: The response of the REST API specified in key is greater than the value specified for val.

  • LT: The response of the REST API specified in key is less than the value specified for val.

  • REGEX: The response of the REST API specified in key partly matches the value specified for val by a regular expression.

The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies the value to be compared with the execution result of the REST API. Possible values vary depending on the value of param. For details, see the table below. If the type is string, specify a string of less than 1 megabyte in size. This member cannot be omitted.

Table 2‒7: Combinations of param, ope, and the type of val available for restApi

No.

param value

Value available for ope

Type of val

Value to be specified for val

1

status

  • IN

  • NOTIN

  • GT

  • LT

number

Value to be compared with the status code of the REST API

2

headers

  • IN

  • NOTIN

  • REGEX

string

Value to be compared with the response header of the REST API

3

body

  • IN

  • NOTIN

  • REGEX

string

Value to be compared with the response body of the REST API

Format of the string for the REST API response header

When param is set to headers, the response header obtained will be a string in the following format:

<field-name-1>:<field-value-1-1>,<field-value-1-2>,...,<field-value-1-n><CRLF>
<field-name-2>:<field-value-2-1>,<field-value-2-2>,...,<field-value-2-n><CRLF>
<field-name-3>:<field-value-3-1>,<field-value-3-2>,...,<field-value-3-n><CRLF>
...

Note: All the field names are converted into uppercase characters. The fields are arranged in ascending order of the field names in ASCII code.

The following shows an example of how they are specified:

CACHE-CONTROL:no-store,no-cache,max-age=0<CRLF>
CONTENT-TYPE:application/json<CRLF>
EXPIRES:Thu,01 Jan 1970 00:00:00 GMT<CRLF>
PRAGMA:no-cache<CRLF>

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether the status code of the following REST API is 200:

  • Method: POST

  • URL: https://test

  • Request header:

    Authentication information: yyyy/zzzz

    Media type of the request body: application/json

  • Request body:

    Request body parameter body1: test1

    Request body parameter body2: test2

  • Parameter to be compared with in the REST API response: Status code

{
    "type":"restApi",
    "key":{
        "method":"POST",
        "url":"https://test",
        "headers":{
            "Authorization":"yyyy/zzzz",
            "Content-Type":"application/json"
        },
        "body":{
            "body1":"test1",
            "body2":"test2"
        },
        "param":"status"
    },
    "ope":"IN",
    "val":200,
    "description":"The status code of REST API test is 200"
}

(e) Suggestion activation criterion when type is set to plugin

When type (type of criterion) is set to plugin, the execution result of the plug-in function can be specified as a suggestion activation criterion.

Format
{
    "type":"plugin",
    "key":{
        "sid":"tree-SID",
        "method":"name-of-the-plug-in-function",
        "args":"arguments-of-the-plug-in-function"
    },
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on the plug-in function which is subject to the suggestion activation criterion. The data type is object. This member cannot be omitted.

"sid":"tree-SID"

Specifies the tree SID. Possible characters conform to the specifications of the tree SID. The plug-in function is executed by specifying the configuration information SID associated with the specified tree SID. If multiple configuration information SIDs are associated with the specified tree SID, the plug-in function is executed by specifying one configuration information SID, and if it is executed successfully, the criterion is evaluated with the response of the plug-in function. The subsequent configuration information SIDs are ignored.

The order of specifying configuration information SIDs is undefined.

If the args.setError method is executed in the plug-in, or if suggestion is not found in the member of the response, a failure in the execution of the plug-in function is determined, resulting in execution of the plug-in function with the next configuration information SID.

If the execution of the plug-in function fails with the all configuration information SIDs, obtaining criterion information fails. The data type is string. This member can be omitted. If it is omitted, the system assumes that the selected node is specified.

"method":"name-of-the-plug-in-function"

Specifies the name of the plug-in function. After adding the plug-in function, check if the JP1/IM2 service is restarted. The plug-in function to be specified must meet all of the following conditions:

  • It is modularized in module.exports.

  • It has only the args argument of object type.

  • It returns the response with the args.setResult(Object result) method, not with return.

    Specify the response for result.

  • It notifies an error with the args.setError(String message) method, not via an exception.

    Specify the error message for message.

  • suggestion (data type: string) is found in the member of the response.

The data type is string. This member cannot be omitted.

For details about the plug-in function, see 4. User-created Plug-ins.

"args":"arguments-of-the-plug-in-function"

Specifies arguments of the plug-in function to be executed. If there is no information to pass, specify an empty object. The specified object is passed to the args.methodArgs argument of the plug-in function to be executed. For details about other values passed to args of the plug-in function, see 5.7.1 Plug-in processing execution.

The data type is object. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values are as follows:

  • IN: The value of suggestion in the response of the plug-in function specified in key matches the value specified for val.

  • NOTIN: The value of suggestion in the response of the plug-in function specified in key does not match the value specified for val.

  • REGEX: The value of suggestion in the response of the plug-in function specified in key partly matches the value specified for val by a regular expression.

The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies the value to be compared with the value of suggestion in the response of the plug-in function. Specify a string of less than 1 megabyte in size. The data type is string. This member cannot be omitted.

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether the suggestion member of the following plug-in function has the OK value:

  • Target IM management node: Selected IM management node

  • Plug-in function: jp1pfmSuggestionCreateReportURL

    The function creates the URL of a JP1/PFM report. For details about the jp1pfmSuggestionCreateReportURL function, see the manual JP1/Performance Management Reference.

  • Argument: ID of the report

{
    "type":"plugin",
    "key":{
        "sid":"${.:tree:sid:}",
        "method":"jp1pfmSuggestionCreateReportURL",
        "args":{
            "reportId":"ac102ce0:3b9952:ec20ca1bfc:-7b99"
         }
    },
    "ope":"NOTIN",
    "val":"",
    "description":"Successful creation of the report URL"
}

(f) Suggestion activation criterion when type is set to cmd

When type (type of criterion) is set to cmd, the execution result of the command (the return value, standard output, and standard error output) can be specified as a suggestion activation criterion.

Format
{
    "type":"cmd",
    "key":{
        "host":"execution-host-name-of-the-command",
        "cmd":"command-to-be-executed",
        "env":"environment-variables",
        "envFile":"environment-variable-file-name",
        "param":"type-of-the-command-execution-result"
    },
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "cache":"availability-of-criterion-information-cache",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on the command which is subject to the suggestion activation criterion. The data type is object. This member cannot be omitted.

host:"execution-host-name-of-the-command"

Specifies the execution host name of the command. The range allowed is from 1 to 254 bytes. The data type is string. This member cannot be omitted.

"cmd":"command-to-be-executed"

Specifies the command to be executed and its arguments. The range allowed is from 1 to 4,095 bytes.

Enclose the command name containing any space characters in double quotation marks ("). The data type is string. This member cannot be omitted.

"env":"environment-variables"

Specifies the environment variable values as the value of the object, using the environment variables when the command is executed on the execution host as the key of the object.

You can specify up to 30 variables. Specify the keys and values of the objects in the range from 1 to 7,107 bytes in total. The data type is object. This member can be omitted.

"envFile":"environment-variable-file-name"

Specifies the name of the file on the execution host in absolute path format. The range allowed is from 1 to 255 bytes. The data type is string. This member can be omitted.

"param":"value-to-be-compared-with"

Specifies the target to be compared with. Possible values are as follows:

  • rc: Return value

  • stdout: Standard output

  • stderr: Standard error output

The data type is string. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. Possible values are as follows:

  • IN: The value of param for the command specified in key matches the value specified for val.

  • NOTIN: The value of param for the command specified in key does not match the value specified for val.

  • REGEX: The value of param for the command specified in key partly matches the value specified for val by a regular expression.

  • GT: The value of param for the command specified in key is greater than the value specified for val.

  • LT: The value of param for the command specified in key is less than the value specified for val.

For details about the combinations of param and ope available, see Table 2-8.

The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies the value to be compared with the execution result of the command. Possible values vary depending on the value specified for param. For details, see the table below. Note that if the type is string, you must specify a string of less than 1 megabyte in size. This member cannot be omitted.

Table 2‒8: Combinations of param, ope, and the type of val available for cmd

No.

param value

Value available for ope

Type of val

Value to be specified for val

1

rc

  • IN

  • NOTIN

  • GT

  • LT

number

Value to be compared with the return value of the command

2

stdout

  • IN

  • NOTIN

  • REGEX

string

Value to be compared with the standard output from the command

3

stderr

  • IN

  • NOTIN

  • REGEX

string

Value to be compared with the standard error output from the command

If a variable is specified in a suggestion activation criterion with the type of cmd, the following character conversion is performed after the conversion of the variable:

  • If the variable specified in the suggestion activation criterion contains any of the following control characters, it is converted into a half-width space character (0x20):

    - 0x01 to 0x1F (except a tab (0x09))

    - 0x7F

  • The character conversion is performed according to the configuration file for converting information. For details, see Configuration file for converting information (event_info_replace.conf) in Chapter 2. Definition Files.

For details about the cache and description members, see the description for each member in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether the standard output from the command with the following conditions contains DISPLAY_NAME: JP1/AJS service (whether the JP1/AJS service is running).

  • Execution host name of the command: Node name of the selected IM management node#

    #: Node of the JP1/AJS manager host

  • Command to be executed: sc query

  • Environment variable file name: C:\envFile.txt on the target host

  • Type of the command execution result: Standard output

{
    "type":"cmd",
    "key":{
        "host":"${.:tree:value.label:}",
        "cmd":"sc query",
        "envFile":"C:\\envFile.txt",
        "param":"stdout"
    },
    "ope":"REGEX",
    "val":"DISPLAY_NAME: JP1/AJS3",
    "description":"The JP1/AJS service is running"
}

(g) Suggestion activation criterion when type is set to struct

When type (type of criterion) is set to struct, whether the configuration of a specific IM management node exists can be specified as a suggestion activation criterion.

Format
{
    "type":"struct",
    "key":{
        "idType":"type-of-the-node",
        "sid":"configuration-information-SID-or-tree-SID"
    },
    "ope":"comparison-keyword",
    "val":"value-to-be-compared-with",
    "description":"description-of-the-criterion"
}

Information that is specified

"key"

This is an object that specifies the information on the IM management node which is subject to the suggestion activation criterion. The data type is object. This member cannot be omitted.

"idType":"type-of-the-node"

Specifies the ID type of the target node. Possible values are as follows:

  • target: Configuration information SID

  • tree: Tree SID

The data type is string. This member cannot be omitted.

"sid":"configuration-information-SID-or-tree-SID"

Specifies the configuration information SID or tree SID. Possible characters conform to the SID specifications.

If the conversion of the variable specified as an sid member fails, the system considers the SID as not existing, instead of regarding the evaluation as a failure, and continues processing when the conversion failure is caused by either of the following:

  • The target node does not exist.

  • The target type is set to target or target[product-name], but the SID of the applicable configuration information does not exist.

The data type is string. This member cannot be omitted.

"ope":"comparison-keyword"

Specifies a keyword for comparison. A possible value is as follows:

  • EXIST: Whether the IM management node that meets the conditions specified in key exists

The data type is string. This member cannot be omitted.

"val":"value-to-be-compared-with"

Specifies whether the IM management node with the conditions specified in key exists.

Specify either true or false. Specify true if the IM management node exists, or false if it does not.

The data type is Boolean. This member cannot be omitted.

For details about the description member, see the description in (1) Suggestion activation criteria.

Example

Here is an example of evaluating whether the IM management node of JP1/AJS - Agent on the same host as the selected IM management node of JP1/PFM - Agent exists.

  • ID type: Tree SID

  • SID: SID that meets the following conditions:

  • A tree SID agrees with that of the selected JP1/PFM - Agent in the part of the tree SID from the beginning to the three-level higher IM management node (IM management node of the host).

  • The tree SID after the host is the following tree SID that indicates JP1/AJS-Agent:

    _CATEGORY_managementApplications/_OBJECT_JP1AJSAGT

{
    "type":"struct",
    "key":{
        "idType":"tree",
        "sid":"${../../..:tree:sid:}/_CATEGORY_managementApplications/_OBJECT_JP1AJSAGT"
    },
    "ope":"EXIST",
    "val":true,
    "description":"A node of JP1/AJS - Agent exists on the same host as the selected IM management node of JP1/PFM - Agent"
}

(2) Response action

The following describes the response action.

Response action format

{
    "type":"type-of-response-action",
    "params":"parameters-of-the-response-action",
    "description":"description-of-the-response-action"
}

Response action definition

"type":"type-of-response-action"

Specifies the type of response action. Possible values are as follows:

  • restApi: Specify this type when you define the execution of the REST API.

  • plugin: Specify this type when you define the execution of a product plug-in.

  • cmd: Specify this type when you define the execution of a command.

  • eventStatus: Specify this type when you define the change in the event status of an event.

  • jump: Specify this type when you define a jump to a particular URL or the Repeated event list window.

The data type is string. This member cannot be omitted.

Note that you specify cmd when JP1/Base on the execution host of the command is version 12-10 or later. If the version is earlier than 12-10, the command execution fails, and the return value of 0 as well as empty standard output and standard error output are returned.

"params":"parameters-of-the-response-action"

Specifies the parameters of the response action. Possible members vary depending on type. The data type is object. This member cannot be omitted.

"description":"description-of-the-response-action"

Specifies the description of the response action. A string of up to 512 characters without any control character can be specified. An empty string is not allowed.

The data type is string. This member cannot be omitted.

(A) Possible values for each response action type

Different values can be specified for members depending on type (response action type) of the response action. The following describes the values available for each type. Note that you can specify the description member regardless of what type is.

(a) Response action when type is set to restApi

When type (response action type) is set to restApi, the execution of the REST API can be specified as response action.

Format
{
    "type":"restApi",
    "params":{
        "method":"method-of-the-REST-API",
        "url":"URL-of-the-REST-API",
        "headers":"request-header-of-the-REST-API",
        "body":"request-body-of-the-REST-API"
    },
    "description":"description-of-the-response-action"
}

Information that is specified

"params"

This is an object that specifies the information on the REST API on which the response action is taken. The data type is object. This member cannot be omitted.

"method":"method-of-the-REST-API"

Specifies a method of the REST API. Possible values are as follows:

  • GET

  • HEAD

  • POST

  • PUT

  • PATCH

  • DELETE

  • OPTIONS

  • TRACE

The data type is string. This member cannot be omitted.

"url":"URL-of-the-REST-API"

Specifies the URL of the REST API. Possible characters are half-width alphanumeric characters and the following symbols that conform to the RFC 2396 specifications:

;, /, ?, :, @, &, =, +, $, ,, -, _, ., !, ~, *, ', (, ), %

Begin the URL with http:// or https://.

The data type is string. This member cannot be omitted.

"headers":"request-header-of-the-REST-API"

Specifies the request header of the REST API. The data type is object. This member cannot be omitted.

"body":"request-body-of-the-REST-API"

Specifies the request body of the REST API. When the GET or DELETE method is used and the body is not required, omit this member. The data type is object. This member can be omitted.

For details about the description member, see the description in (2) Response action.

Example

Here is an example of executing the REST API with the following JP1 event information:

  • URL: https://test

  • Request header

    Authentication information: yyyy/zzzz

    Media type of the request body: application/json

  • Request body

    Request body parameter body1: ${:event[1]:B.ID:}

    This is the event ID of the JP1 event that meets the first suggestion activation criterion with type specified for cases set to event.

  • Request body parameter body2: ${:event[1]:B.MESSAGE:}

    This is the message of the JP1 event that meets the first suggestion activation criterion with type specified for cases set to event.

{
    "type":"restApi",
    "params":{
        "method":"POST",
        "url":"https://test",
        "headers":{
            "Authorization":"yyyy/zzzz",
            "Content-Type":"application/json"
        },
        "body":{
            "body1":"${:event[1]:B.ID:}",
            "body2":"${:event[1]:B.MESSAGE:}"
        }
    },
    "description":"Use JP1 event information to execute a REST API test"
}

(b) Response action when type is set to plugin

When type (response action type) is set to plugin, the execution of a plug-in function can be specified as response action.

Format
{
    "type":"plugin",
    "params":{
        "sid":"tree-SID",
        "method":"name-of-the-plug-in-function",
        "args":"arguments-of-the-plug-in-function"
    },
    "description":"description-of-the-response-action"
}

Information that is specified

"params"

This is an object that specifies the information on the plug-in function on which the response action is taken. The data type is object. This member cannot be omitted.

"sid":"tree-SID"

SID. The plug-in function is executed by specifying the configuration information SID associated with the specified tree SID. If multiple configuration information SIDs are associated with the specified tree SID, the plug-in function is executed by specifying one configuration information SID, and if it is executed successfully, the subsequent configuration information SIDs are ignored. The order of specifying configuration information SIDs is undefined.

If the args.setError method is executed in the plug-in, a failure in the execution of the plug-in function is determined, resulting in execution of the plug-in function with the next configuration information SID.

The data type is string. This member can be omitted. If it is omitted, the system assumes that the selected node is specified.

"method":"name-of-the-plug-in-function"

Specifies the name of the plug-in function. After adding the plug-in function, check if the JP1/IM2 service is restarted. The plug-in function to be specified must meet all of the following conditions:

  • It is modularized in module.exports.

  • It only has the args argument of object type.

  • It returns the response with the args.setResult(Object result) method, not with return.

    Specify the response for result.

  • It notifies an error with the args.setError(String message) method, not via an exception.

    Specify the error message for message.

  • The function name does not start with two underscores (__).

The data type is string. This member cannot be omitted.

"args":"arguments-of-the-plug-in-function"

Specifies arguments of the plug-in function to be executed. If there is no information to pass, specify an empty object. The specified object is passed to the args.methodArgs argument of the plug-in function to be executed. For details about other values passed to args of the plug-in function, see 5.7.1 Plug-in processing execution.

The data type is object. This member cannot be omitted.

For details about the description member, see the description in (2) Response action.

Example

Here is an example of executing the plug-in function under the following conditions:

  • Target IM management node: Selected IM management node

  • Plug-in function: jp1pfmSuggestionSetStatusOfEventsToProcessed

    This function turns a JP1 event into processed. For details about the jp1pfmSuggestionSetStatusOfEventsToProcessed function, see the manual JP1/Performance Management Reference.

  • Argument: Event SID

    This is the value of response suggestion of the plug-in function that was executed under the third suggestion activation criterion with type specified for cases set to plugin.

{
    "type":"plugin",
    "params":{
        "sid":"${.:tree:sid:}",
        "method":"jp1pfmSuggestionSetStatusOfEventsToProcessed",
        "args":{
            "eventSids":"${:plugin[3]::}"
        }
    },
    "description":"Turn the alarm or the event status of the event on an agent in normal status into Processed"
}

If linkage with JP1/PFM is enabled, the plug-in methods of JP1/PFM will be available. For details, see the manual JP1/Performance Management User's Guide.

(c) Response action when type is set to cmd

When type (response action type) is set to cmd, the execution of the command can be specified as response action.

Format
{
    "type":"cmd",
    "params":{
        "host":"execution-host-of-the-command",
        "cmd":"command-to-be-executed",
        "env":"environment-variables",
        "envFile":"environment-variable-file-name"
    },
    "description":"description-of-the-response-action"
}

Information that is specified

"params"

This is an object that specifies the information on the command on which the response action is taken. The data type is object. This member cannot be omitted.

"host":"execution-host-of-the-command"

Specifies the execution host name of the command. The range allowed is from 1 to 254 bytes. The data type is string. This member cannot be omitted.

"cmd":"command-to-be-executed"

Specifies the command to be executed and its arguments. The range allowed is from 1 to 4,095 bytes.

Enclose the command name containing any space characters in double quotation marks ("). The data type is string. This member cannot be omitted.

"env":"environment-variables"

Specifies the environment variable values as the value of the object, using the environment variables when the command is executed on the execution host as the key of the object.

You can specify up to 30 variables. Specify the keys and values of the objects in the range from 1 to 7,107 bytes in total. The data type is object. This member can be omitted.

"envFile":"environment-variable-file-name"

Specifies the name of the file on the execution host in absolute path format. The range allowed is 1 to 255 bytes. The data type is string. This member can be omitted.

If a variable is specified in a response action with the type of cmd, the following character conversion is performed after the conversion of the variable:

  • If the variable specified in a response action contains any of the following control characters, it is converted into a half-width space character (0x20):

    - 0x01 to 0x1F (except a tab (0x09))

    - 0x7F

  • The character conversion is performed according to the configuration file for converting information. For details, see Configuration file for converting information (event_info_replace.conf) in Chapter 2. Definition Files.

For details about the description member, see the description in (2) Response action.

Example

Here is an example of executing the command under the following conditions:

  • Execution host name of the command: Node name of the selected IM management node (node of a JP1/IM host)

  • Command to be executed: "C:\Program Files (x86)\Hitachi\JP1IMM\tools\jim_log" -f C:\\temp -q

    This is the data collection command of JP1/IM.

  • Environment variable file name: C:\envFile.txt on the target host

{
    "type":"cmd",
    "params":{
        "host":"${.:tree:value.label:}",
        "cmd":"\"C:\\Program Files (x86)\\Hitachi\\JP1IMM\\tools\\jim_log\" -f C:\\temp -q",
        "envFile":"C:\\envFile.txt"
    },
    "description":"Execution of the data collection command of JP1/IM"
}

(d) Response action when type is set to eventStatus

When type (response action type) is set to eventStatus, a change in the event status of a JP1 event can be specified as response action.

Format
{
    "type":"eventStatus",
    "params":{
        "dealt":event-status,
        "sid":"JP1-event-SID,..."
    },
    "description":"description-of-the-response-action"
}

Information that is specified

"params"

This is an object that specifies the event and its event status on which the response action is taken. The data type is object. This member cannot be omitted.

"dealt":event-status

Specifies the new event status. The following values can be specified:

  • 0: Unprocessed

  • 1: Processed

  • 2: Processing

  • 3: Held

The data type is number. This member cannot be omitted.

"sid":"JP1-event-SID"

Specifies the SIDs of JP1 events whose status you want to get.

If you specify SIDs of multiple JP1 events, use commas (,) to concatenate the SIDs of the JP1 events. Possible characters conform to the SID specifications. You can specify SIDs of events from 1 to 2,000. The data type is string. This member cannot be omitted.

For details about the description member, see the description in (2) Response action.

Example

Here is an example of changing the event status of an event to 1 (Processed) under the following condition:

  • Event SID: ${:event[1]:sid:},${:event[2]:sid:}

    This is the event SID of the JP1 event that meets the first and second suggestion activation criteria with type specified for cases set to event.

{
    "type":"eventStatus",
    "params":{
        "dealt":1,
        "sid":"${:event[1]:sid:},${:event[2]:sid:}"
    },
    "description":"Change the event ID: ${:event[1]:B.ID:}, ${:event[2]:B.ID:} to Processed"
}

(e) Response action when type is set to jump

When type (response action type) is set to jump, a jump to a particular URL or the Repeated event list window can be specified as a response action.

Format
{
    "type":"jump",
    "params":{
        "url":"URL",
        "target":"target-attribute-of-HTML",
        "relatedEvent":repeated-event-list-window-information
    },
    "description":"description-of-the-response-action"
}

Information that is specified

"params"

This is an object that specifies the information on the jump destination on which the response action is taken. The data type is object. This member cannot be omitted.

"url":"URL"

Specify the URL of a jump destination in either of the following formats.

Possible characters are half-width alphanumeric characters and the following symbols that conform to the RFC 2396 specifications:

;, /, ?, :, @, &, =, +, $, ,, -, _, ., !, ~, *, ', (, ), %

Begin the URL with one of http://, https://, or index?.

  • Any URL

    Specify a given URL.

  • Direct access URL of JP1/IM

    Specify a direct access URL of JP1/IM by using index in the Integrated Operation Viewer window. The window currently open jumps to the specified URL, without refreshing the window. For details about the format of the direct access URL, see 4.12 Setting up the direct access URL in the manual JP1/Integrated Management 2 - Manager Configuration Guide.

The data type is string. You must specify either this member or the relatedEvent member.

"target":"target-attribute-of-HTML"

Specify the HTML target attribute when the URL of the jump destination is opened. If it is omitted, the system assumes that _blank is specified. The following values cannot be specified:

  • _self

  • _parent

  • _top

  • Value starting with JP1IM_

If the url member is omitted or a URL starting with index is specified for the value of the url member, the value of the target member is ignored. The data type is string. This member can be omitted.

"relatedEvent":search-criterion-number

Specify it when you show the Repeated event list window. The target events are those that are searched for under the suggestion activation criteria with type set to event. Specify a suggestion activation criterion number from 1 to 100 of suggestion activation criteria with type specified for cases set to event.

If more than one JP1 event that meets the criterion is found, the Repeated event list window for the JP1 event with the latest registration date and time is displayed.

The data type is number. You must specify either this member or the url member.

For details about the description member, see the description in (2) Response action.

Example 1

Here is an example of jumping to a specific URL by specifying a target name:

{
    "type":"jump",
    "params":{
        "url":"https://sample/web/application",
        "target":"sampleWebApplication"
    },
    "description":"Jump to https://sample/web/application"
}
Example 2

Here is an example of specifying a direct access URL:

{
    "type":"jump",
    "params":{
        "url":"index?sid=${../../..:tree:sid:URLENC}%2F%5FCATEGORY%5FmanagementApplications%2F%5FOBJECT%5FJP1AJSAGT&view=tree&eou=1"
    },
    "description":"Screen transition of JP1/IM (JP1/AJS - Manager node on the same host)"
}
Example 3

Here is an example of specifying the Repeated event list window:

{
    "type":"jump",
    "params":{
        "relatedEvent":1
    },
    "description":"Open the Repeated event list window"
}

(3) Variable

You can specify variables for suggestion activation criteria and response actions. With variables, the information and current time of the selected IM management node can be replaced with the information obtained when the suggestion activation criterion is evaluated. The use of variables allows you to dynamically define suggestion activation criteria and response actions.

Example of specifying suggestion activation criteria with variables

Suggestion activation criteria

  • Suggestion activation criterion 1: A JP1 event with the event ID of xxx exists.

  • Suggestion activation criterion 2: JP1 events with the registration date and time that falls on or after the registration date and time of the event which meets suggestion activation criterion 1 exists.

Define the registration date and time of the event which meets suggestion activation criterion 1 as a variable. When a variable is specified in suggestion activation criteria, it is converted when each suggestion activation criterion is evaluated. If the evaluation is skipped, the variable is not converted. For details about skipping the evaluation, see the description in (1) Suggestion activation criteria.

Variables specified in a response action are converted after suggestion criteria of the response action are evaluated. If the evaluation result is false, the variables are not converted.

Example
"cases":[
  ["suggestion-activation-criterion-1","suggestion-activation-criterion-2"],
  ["suggestion-activation-criterion-3"]
],
"action":"response-action"

In the above example, the processing is performed in the following order:

  1. Convert variables specified in suggestion activation criterion 1

  2. Evaluate suggestion activation criterion 1 (true)

  3. Convert variables specified in suggestion activation criterion 2

  4. Evaluate suggestion activation criterion 2 (false)

  5. Convert variables specified in suggestion activation criterion 3

  6. Evaluate suggestion activation criterion 3 (true)

  7. Convert variables specified in the response action

  8. Suggest the response action

You can specify variables in suggestion activation criteria, string-type members of response actions (other than type), string-type elements of arrays, and string-type members of objects (except for the member name). The format of a variable is as follows:

${"target-node":"type-of-target":"target-key":"encoding-type"}
Important

The colons (:) in the variable format cannot be omitted. Furthermore, $, {, and } are not available in the target node. :, $, {, and } are not available in the type of target, the target key, and the encoding type.

(A) Target node

Specify the IM management node from which information is obtained, in the relative path format from the tree SID or the selected IM management node. It can be omitted depending on the type of conversion target of the variable. For details, see Table 2-10 Possible values for the type of target. If a target node is specified for the type of target that does not require it, it is ignored.

The table below describes the format of the relative path. Use slashes (/) for concatenation.

Table 2‒9: Format of the relative path

No.

Format of the relative path

Node indicated when specified at the beginning of the target node

Node indicated when specified after the first slash (/) of the target node

1

.

Specify it to indicate the selected IM management node or the node of the tree SID specified by the request of the response action suggestion API.

Not available.

2

..

Specify it to indicate the upper-level node of the selected IM management node or the upper-level node of the tree SID specified by the request of the response action suggestion API.

Specify it to indicate the upper-level node of the current node.

3

Structured identifier

Specify a structured identifier in the absolute path to specify a node in the absolute path format.

For details about possible characters in the structured identifier, see 7.1 SID.

Specify the structured identifiers of subsequent tree SIDs of the current node to specify a lower-level node of the current node.

For details about possible characters in the structured identifier, see 7.1 SID.

4

link-direction<linkType>

Not available.

Specify it to indicate a related node by using the current node and the link for the type of link information <linkType>.

You can specify whichever link information of the tree SID or the configuration information SID.

You can specify either of the following for link-direction:

  • <: Preceding node

  • >: Succeeding node

Tree cannot be specified for <linkType>. In addition, if there are multiple links that correspond to link-direction<linkType>, the system assumes that the related node of the first link is specified for operation. For details about characters available in <linkType>, see the description of type (information-type) in IM management node link definition file (imdd_nodeLink_def.conf) in Chapter 2. Definition Files.

(B) Type of target

In the type of target, specify the type of target of conversion, i.e., how a variable is converted, such as when a variable is converted into event information or a REST API execution result. The following table describes the values available for the type of target.

Table 2‒10: Possible values for the type of target

No.

Type of target

Description

Necessity of specifying the target node

1

target[product-name]

A variable is converted into the SID information of configuration information created by the product plug-in of [product-name] in the SIDs of the configuration information of the target node.

If the target node has multiple SIDs of configuration information created by the product plug-in of the target, a variable is converted into the SID information of the configuration information obtained first. The order of obtaining the information is undefined.

You can omit [product-name]. If it is omitted, a variable is converted into the SID information of the configuration information obtained first. The order of obtaining the information is also undefined in this case.

The value specified [product-name] can accept the same value that can be specified for product in the target host definition file for configuration collection. For details, see Target host definition file for configuration collection (imdd_target_host.conf) in Chapter 2. Definition Files.

Required

2

tree

A variable is converted into the information of the tree SID of the target node.

Required

3

time

A variable is converted into the time information.

Optional

4

event[n]

A variable is converted into the information of the JP1 event that meets the nth suggestion activation criterion in the suggestion activation criteria with type specified for cases set to event.

If multiple JP1 events meet the criterion, a variable is converted into the information of the JP1 event with the most recent registration date and time.

Specify a number from 1 to 100 for [n].

Optional

5

eventCount[n]

A variable is converted into the information of the JP1 event that meets the nth suggestion activation criterion in the suggestion activation criteria with type specified for cases set to eventCount.

If multiple JP1 events meet the criterion, a variable is converted into the information that contains the information of all applicable JP1 events altogether.

Specify a number from 1 to 100 for [n].

Optional

6

restApi[n]

A variable is converted into the information of the response of the REST API executed under the nth suggestion activation criterion in the suggestion activation criteria with type specified for cases set to restApi.

Specify a number from 1 to 100 for [n].

Optional

7

plugin[n]

A variable is converted into the information of the execution result of the plug-in function executed under the nth suggestion activation criterion in the suggestion activation criteria with type specified for cases set to plugin.

Specify a number from 1 to 100 for [n].

Optional

8

cmd[n]

A variable is converted into the information of the execution result of the command executed under the nth suggestion activation criterion in the suggestion activation criteria with type specified for cases set to cmd.

Specify a number from 1 to 100 for [n].

Optional

(C) Target key

For the target key, specify an element for the type of target of which a variable is converted. For example, specify the status code element or body element of the response for the execution of the REST API. The value that can be specified for the target key varies depending on the type of target. The following explains the target key you can specify for each type of target.

(a) When the type of target is target

When the type of target is target, specify the SID element of configuration information for the target key. Possible target keys are as follows:

sid

A variable is converted into the value of the configuration information SID of the target node.

value.member-name

A variable is converted into the value of the member specified as member-name for the value value assigned to the configuration information SID of the target node.

If you want to specify more members in the object, specify them in the following format:

object-name.member-name

However, they cannot be specified if the specified member is of an array or object type.

If you convert the value of a property configured by the product plug-in that appears in the Properties for the related node area on the Related node tab in the Integrated Operation Viewer window, specify it in the following format:

value.property.property-name
Example

Here is an example of obtaining the service ID from the SID of the selected IM management node (IM management node of the JP1/PFM agent) and executing the command to suspend monitoring.

Note that it assumes that the service ID has been obtained by specifying the following values in variables:

  • Target node: Selected IM management node

  • Type of target: target (Configuration information SID)

  • Target key: value.property.SerViceId (ServiceId member of property in the Value value)

{
    "type":"cmd",
    "params":{
        ...
        "cmd":"\"C:\\Program Files (x86)\\Hitachi\\jp1pc\\tools\\jpctool\" monitor suspend -noquery -id ${.:target:value.property.ServiceId:}"
    },
    "description":"Execute the command to suspend monitoring of JP1/PFM"
}

(b) When the type of target is tree

When the type of target is tree, specify the SID element of the tree for the target key. Possible target keys are as follows:

sid

A variable is converted into the SID value of the tree of the target node.

value.member-name

A variable is converted into the value of the member specified as member-name for the value value assigned to the tree SID of the target node.

If you want to specify more members in the object, specify them in the following format:

object-name.member-name

However, members of an array or object type cannot be specified.

Example

Here is an example of specifying the tree SID of the selected node:

{
    "type":"event",
    "key":{
        "sid":"${.:tree:sid:}",
        ...
    },
    ...
}

(c) When the type of target is time

When the type of target is time, specify the relative date and time from the current time (UTC time in ISO 8601 format) for the target key. The relative date and time is specified in the following format:

[+|-]value.unit.segmentation

You can omit the target key. If it is omitted, a variable is converted into the current date and time in ISO 8601 format. Possible target keys for time are as follows:

[+|-]

Specify whether the target key is in the future or in the past based on the current date and time.

  • +: The target key is converted into a future date and time.

  • -: The target key is converted into a past date and time.

You can omit this key. If it is omitted, a variable is converted into the current time.

value.unit

Specify how far the time is in the future or past from the current date and time.

Specify an integer from 1 to 2147483647 as the value. Specify one of the following values as the unit:

  • y: Year

  • M: Month

  • d: Day

  • h: Hour

  • m: Minute

  • s: Second

When [+|-] is omitted, this key cannot be specified. When [+|-] is specified, this key cannot be omitted. Note that an error occurs if the variable is converted into the following date and time:

  • Date and time before 1970-01-01T00:00:00Z

  • Date and time after 9999-12-31T23:59:59Z

segmentation

Specify a segmented part of a specified date and time if you want to convert only part of the date and time. The following values can be specified:

  • y: Year part

  • M: Month part

  • d: Day part

  • h: Hour part

  • m: Minute part

  • s: Second part

You can omit this key. If it is omitted, the whole date and time is converted.

Example

Here is an example of specifying events in the time period from yesterday's 23:00 UTC to today's 2:00 UTC under an event criterion.

Note that it assumes that the following combination of variables has been used to get yesterday's 23:00 UTC and today's 2:00 UTC.

Yesterday's 23:00 UTC
  • ${:time:-1.d.y:} Year part of the date one day before the current time

  • ${:time:-1.d.M:} Month part of the date one day before the current time

  • ${:time:-1.d.d:} Day part of the date one day before the current time

These variables get the value of segmentation of the date one day before the current time by specifying time for the type of target and -1.d.segmentation for the target key.

Today's 2:00 UTC
  • ${:time:..y:} Year part of the current time

  • ${:time:..M:} Month part of the current time

  • ${:time:..d:} Day part of the current time

These variables get the value of segmentation of the current date and time by specifying time for the type of target and segmentation for the target key.

{
    "type":"event",
    "key":{
        "B.TIME":["${:time:-1.d.y:}-${:time:-1.d.M:}-${:time:-1.d.d:}T23:00:00Z", "${:time:..y:}-${:time:..M:}-${:time:..d:}T02:00:00Z"],
            ...
    },
    ...
}

(d) When the type of target is event[n]

When the type of target is event[n], specify the JP1 event element for the target key. Possible target keys are as follows:

sid

A variable is converted into the SID of the JP1 event.

attribute-name

A variable is converted into the attribute value of <attribute-name> of the JP1 event. For details about possible attribute names, see 5.6.1 Event search.

Example

Here is an example of specifying the conditions where the event ID of the unprocessed event of YYYY has been issued after the event ID of the unprocessed event of XXXX under event criteria.

Note that it assumes that the condition of the YYYY event after XXXX has been specified by designating the registration date and time of the event that meets the first event criterion for the first element of B.TIME (registration time) of the second event criterion and designating the current time as the second element. Also note that it assumes that the registration date and time of the event that meets the first event criterion is obtained by specifying the following values for the variables:

  • Type of target: event[1] First event criterion

  • Target key: B.TIME Registration date and time of the event

"cases":[
    [
        {
            "type":"event",
            "key":{
                "sid":"${.:tree:sid:}",
                "statusFilter":[30],
                "B.ID":["XXXX"],
                "E.@JP1IM_DEALT":[0]
            },
            ...
        },
        {
            "type":"event",
            "key":{
                "sid":"${.:tree:sid:}",
                "statusFilter":[30],
                "B.TIME":["${:event[1]:B.TIME:}","${:time::}"],
                "B.ID":["YYYY"],
                "E.@JP1IM_DEALT":[0]
            },
            ...
        }
    ]
]

(e) When the type of target is eventCount[n]

When the type of target is eventCount[n], specify the JP1 event element for the target key. Possible target keys are as follows:

sid

A variable is converted into the SID of the JP1 event. If multiple JP1 events meet the criterion, it is converted into a string with each event separated by a comma (,).

Example

Here is an example of using the response action for changing the event statuses of JP1 events to change all JP1 events that meet the event criterion to Processed.

{
    "type":"eventStatus",
    "params":{
        "sid":"${:eventCount[1]:sid:}",
        "dealt":1
    },
    "description":"Change all the applicable JP1 events to Processed"
}

(f) When the type of target is restApi[n]

When the type of target is restApi[n], specify the response of the REST API for the target key. Possible target keys are as follows:

status

A variable is converted into the status code of the response of the REST API.

headers

A variable is converted into the response header of the REST API. For details about the format after the conversion, see the description in Format of the string for the REST API response header of (1)(d) Suggestion activation criterion when type is set to restApi.

body

A variable is converted into the response body of the REST API.

Example

Here is an example of specifying the response body of the REST API executed under a REST API criterion, as an argument of the response action on the execution of a plug-in function.

Note that it assumes that the response body of the REST API executed under the REST API criterion is obtained by specifying the following values for the variables:

  • Type of target: restApi[1] First REST API criterion

  • Target key: body Response body

"cases":[
    [
        {
            "type":"restApi",
            ...
        }
]
...
 
"action": {
    "type":"plugin",
    "params":{
        ...
        "args":{
            "apiResponse":"${:restApi[1]:body:}"
        }
    },
    ...
}

(g) When the type of target is plugin[n]

When the type of target is plugin[n], you do not have to specify the target key. The plug-in function specified in key of a suggestion activation criterion is converted into the value of the suggestion member in the object passed to the args.setResult method.

Example

Here is an example of specifying the response of the plug-in function executed under a plug-in criterion, as an argument of the response action on the execution of a plug-in function.

Note that it assumes that the response of the plug-in function executed under the plug-in criterion is obtained by specifying the following values for the variables:

  • Type of target: plugin[1] Plug-in function criterion

  • Target key: Not specified

"cases":[
    [
        {
            "type":"plugin",
            ...
        }
]
...
 
"action": {
    "type":"plugin",
    "params":{
        ...,
        "args":{
            "pluginResult":"${:plugin[1]::}"
        }
    },
    ...
}

(h) When the type of target is cmd[n]

When the type of target is cmd[n], specify the execution result element of the command for the target key. Possible target keys are as follows:

rc

A variable is converted into the return value of the command.

stdout

A variable is converted into the standard output of the command.

stderr

A variable is converted into the standard error output of the command.

Example

Here is an example of specifying the standard output of the command executed under a command execution criterion, as an argument of the response action on the execution of a plug-in function.

Note that it assumes that the standard output of the command executed under the command execution criterion is obtained by specifying the following values for the variables:

  • Type of target: cmd[1] First command criterion

  • Target key: stdout Standard output

"cases":[
    [
        {
            "type":"cmd",
            ...
        }
]
...
 
"action": {
    "type":"plugin",
    "params":{
        ...,
        "args":{
            "cmdStdOut":"${:cmd[1]:stdout:}"
        }
    },
    ...
}

(i) Encoding type

Specify the encoding type when you encode variables when they are converted. You can omit the encoding type. If it is omitted, the variables are not encoded.

Possible encoding types are as follows:

  • ENC: The variables are Base64-encoded.

  • URLENC: The variables are URL-encoded.

Notes

Definition example

The following explains a definition example of the suggestion definition file under the conditions below.

Suggestion display criteria
  • Suggestions are displayed on the JP1/PFM - Agent node to which health check events are mapped.

  • The JP1 permission of JP1_AJS_Admin or JP1_AJS_Editor is granted to the user.

  • Suggestion activation criteria

  • The JP1/AJS - Agent node exists on the same host as the selected IM management node, to which a health check event indicating that the host stopped was issued within the past one hour, and the event status is now Unprocessed.

Response action
  • Navigate the window to the Related node tab on the JP1/AJS - Agent that exists on the same host as the selected IM management node.

    Figure 2‒2: Example of the tree structure when JP1/AJS - Agent and JP1/PFM - Agent exist on the same host

    [Figure]

In the above figure, JP1/AJS3 - Agent represents the JP1/AJS - Agent node. The tree SID is as follows:

_ROOT_AllSystems/_HOST_HOSTA/_CATEGORY_managementApplications/_OBJECT_JP1AJSAGT

In the above figure, HostA<Windows> represents the JP1/PFM - Agent node to which the health check event is mapped. The tree SID is as follows:

_ROOT_AllSystems/_HOST_HOSTA/_CATEGORY_managementApplications/_SUBCATEGORY_JP1%2FPFM%20-%20Windows/_OBJECT_JP1PFM-ATA1HostAJP1AGENTSERVICE

The following shows the definition in the suggestion definition file:

{
  "meta":{
    "version":"1"
  },
  "suggestions":[
    {
      "suggestionId":"check_affected_rootJobnet",
      "label":"Impact on root jobnets affected by host going down",
      "node":"_CATEGORY_managementApplications.*_OBJECT_JP1PFM-A",
      "permissions":[
        ["JP1_AJS_Admin"],
        ["JP1_AJS_Editor"]
      ],
      "cases":[
        [
          {
            "type":"struct",
            "key":{
              "idType":"tree",
              "sid":"${../..:tree:sid:}/_OBJECT_JP1AJSAGT"
            },
            "ope":"EXIST",
            "val":true,
            "description":"A JP1/AJS - Agent node exists on the same host where the selected node (PFM - Agent) exists"
          },
          {
            "type":"event",
            "key":{
              "sid":"${.:tree:sid:}",
              "statusFilter":[20,30,40],
              "B.TIME":["${:time:-1.h.:}","${:time::}"],
              "B.ID":["00004860"],
              "REGEX_B.MESSAGE":"KAVL15022-E.*hcsstatus=Host Not Available",
              "E.@JP1IM_DEALT":[0]
            },
            "ope":"EXIST",
            "val":true,
            "description":"A JP1 event indicating that the host stopped has been issued"
          }
        ]
      ],
      "action":{
        "type":"jump",
        "params":{
          "url":"index?sid=${../..:tree:sid:URLENC}%2F%5FOBJECT%5FJP1AJSAGT&view=tree&tab=relation&eou=1"
        },
        "description":"Move to the Related node tab displaying the JP1/AJS - Agent node"
      }
    }
  ]
}