Mapping Netcool/OMNIbus fields in Node-RED
You can see how the JSON formatted messages received from the Internet of Things are mapped to Necool/OMNIbus fields using the Node-RED GUI.
Within the GUI, the node is shown as a form with two columns:
- Column one contains the ObjectServer fields.
- Column two contains the values to be set for each
field.For fields other than the
Severityfield, the value in Column two can be one of the following:
- A fixed string.
- A variable specified in mustache format:
field1is the variable to which the field will be set when the probe sends the event to the ObjectServer.
Severityfield, map the field to an object within the msg.payload and apply conditions to set the final severity value. For details, seeConfiguring the Severity field.
Note: If you use double quotes in column two, they must be properly escaped using the backslash character; otherwise it will break JSON format.
You can add more, optional ObjectServer fields by using the Add button at the foot of the EventFieldMap node GUI.
Configuring the Severity field
you want to assign an element or token and apply further conditions
Severity field to reflect the final severity
level to be set, you can do so by updating the value for the Severity
field in column 2. This gives better flexibility and node re-usability
in a flow without having to duplicate the Event Map node to support
different severity events.
The following example allows you to add a severity of Catastrophic:
Severity = field2 if == "catastrophic" set Severity = 5 (Critical) if == "critical" set Severity = 5 (Critical) if == "major" set Severity = 4 (Major) if == "minor" set Severity = 2 (Minor) else , set Severity = 1 (Clear)
The following example allows you to apply conditions to the integer values associated with the Severity field:
Severity = field2 if > "5" set Severity = 5 (Critical) if > "3" set Severity = 4 (Major) if > "2" set Severity = 2 (Minor) else , set Severity = 1 (Clear)