7.4.2 Node generation function
The function generates tree information of all nodes under the system node of a tree, joins it with the tree information from the root node to the system node generated by the system node generation function, and generates tree information of the entire tree.
The following table shows the input and output information of the node generation function.
No. |
Input information / Output information |
Description |
|
---|---|---|---|
1 |
Input information |
System configuration information |
System configuration information of a linked product that was collected using adapter commands and plug-ins. The system configuration information is shown in the SID and additional information of the SID. For details on the SID, see 7.1 SID. |
2 |
Tree information to the system node |
Tree information generated by the system node generation function |
|
3 |
Category name definition file for IM management nodes (imdd_category_name.conf) |
A file that defines the names and orders of IM management node categories for management groups when data collected by the Intelligent Integrated Management Base is shown in sunburst chart format or in tree format |
|
4 |
Host name definition file (imdd_host_name.conf) |
Definition information for mapping alias names to actual host names, if a product in which an alias name can be assigned to a host name is added to the configuration of IM management nodes |
|
5 |
Output information |
Tree information |
Information necessary to show IM management nodes in sunburst chart format or in tree format. The tree information is shown in the tree SID and additional information of the tree SID. For details on the SID, see 7.1 SID. |
The node generation function consists of the node generation function using JP1/IM and the node generation function using a plug-in. Each of the functions is described below.
-
Node generation function using JP1/IM
JP1/IM generates the tree SID and additional information of the nodes under the system node. The following table shows additional information of nodes under the system node to be generated.
Table 7‒33: Additional information of nodes under the system node No.
Structured identifier
1
target
2
resourceGroup
3
label
-
Node generation function using a plug-in
A plug-in can generate the tree SID of the entire tree. When a plug-in generates a node, use the __createTreeNode method. For details, see 4.4.4(3) __createTreeNode method.
The following table shows what to do on the additional information of the newly created tree SID in relation to the additional information of the tree SID already created if the tree SID under the system node created by the plug-in is the same as the one under the system node created using JP1/IM.
No. |
Structured identifier |
Action |
---|---|---|
1 |
target |
add |
2 |
label |
label of the tree SID already generated takes precedence |
3 |
resourceGroup |
resourceGroup of the tree SID already generated takes precedence |
- Organization of this subsection
(1) Default tree SID
If a node does not meet the definition of the system node and is not generated by a plug-in, the tree nodes of the object root node and objects are generated according to the following rule for creating the default tree SID:
_ROOT_AllSystems/_SYSTEM_type-of-the-object-root-node/_type-of-the-object-root-node_name-of-the-object-root-node/_CATEGORY_category-of-the-object/_SUBCATEGORY_subcategory-of-the-object/_OBJECT_name-of-the-object
The following table shows the default tree SIDs.
No. |
IM management node type |
Structured identifier name |
label value |
Creation condition |
---|---|---|---|---|
1 |
SYSTEM |
Value of the meta.objectRoot.defaultSystem.name configuration information# Type of the object root node if the above value is not found |
Value of the meta.objectRoot.defaultSystem.label configuration information# No value if the above value is not found |
If the SID of configuration information contains the structured identifier of the object root node and meta.objectRoot.defaultSystem# of the configuration information is found |
2 |
Object root node type |
Name of the object root node |
label value in the configuration information |
If the SID of configuration information contains the structured identifier of the object root node |
3 |
CATEGORY |
Additional information's category value in the configuration information |
Name resolved by the category name definition file for IM management nodes based on the additional information's category value in the configuration information |
If the additional information in the configuration information has category |
4 |
SUBCATEGORY |
Additional information's subCategory name in the configuration information |
None |
If the additional information in the configuration information has category and subCategory |
5 |
OBJECT |
Name that joins Class and Name of a structured identifier under the object root node with the SID in the configuration information |
label value in the configuration information |
If the SID of configuration information contains the structured identifier of the object root node and its subordinate structured identifier is found |
The tree structure is shown in the following figure.
In the Intelligent Integrated Management Base, the tree structure is maintained in JSON format. This tree structure is referred to as a tree object. The following tree object depicts the tree structure shown in the figure above:
{ "meta":{ "format":"conf", "timestamp":"2018-11-11T11:11:11Z" }, "simtData":[ {"sid":"_ROOT_AllSystem","value":{"target":[],"label":""}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA","value":{"target":[],"resourceGroup":["userA"],"label":"System A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA","value":{"target":[],"label":"Host A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA/_CATEGORY_Job","value":{"target":[],"label":"Job"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA/_CATEGORY_Job/_SUBCATEGORY_SubCategoryA","value":{"target":[],"label":""}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA/_CATEGORY_Job/_SUBCATEGORY_SubCategoryA/_OBJECT_ServiceA", "value":{"target":[],"label":"Service A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA/_CATEGORY_Job/_SUBCATEGORY_SubCategoryA/_OBJECT_ServiceA/_OBJECT_JobGroupA", "value":{"target":[],"label":"Job group A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_HOST_HostA/_CATEGORY_Job/_SUBCATEGORY_SubCategoryA/_OBJECT_ServiceA/_OBJECT_JobGroupA/_OBJECT_RootJobnetA", "value":{"target":["_JP1AJS-M_HostA/_HOST_HostA/_JP1SCHE_ServiceA/_JP1JOBG_JobGroupA/_JP1ROOTJOBNET_RootJobnetA"],"label":"Root jobnet A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_SYSTEM_SubSystemA","value":{"target":[],"label":"Subsystem A"}}, {"sid":"_ROOT_AllSystem/_SYSTEM_SystemA/_SYSTEM_SubSystemA/_SYSTEM_SubSystemAA","value":{"target":[],"label":"Subsystem AA"}}, {"sid":"_ROOT_AllSystem/_HOST_HostB","value":{"target":["_JP1IM_IMMGR/_JP1BASE_HostB/_HOST_HostB"],"label":"Host B"}}, {"sid":"_ROOT_AllSystem/_HOST_HostB/_CATEGORY_Job","value":{"target":[],"label":"Job"}}, {"sid":"_ROOT_AllSystem/_HOST_HostB/_CATEGORY_Job/_OBJECT_ServiceB", "value":{"target":["_JP1IM_IMMGR/_JP1BASE_HostB/_HOST_HostB/_JP1BASEAGT_"],"label":"Service B"}} ] }
- Tip
-
The order in which the simtData objects are arranged signifies the order in which the components in the same layer appear in the window.