How to get device components (such as CPU, memory, partitions etc) into Groups in CA Performance Management (CAPM)
search cancel

How to get device components (such as CPU, memory, partitions etc) into Groups in CA Performance Management (CAPM)

book

Article ID: 137939

calendar_today

Updated On:

Products

CA Performance Management - Usage and Administration DX NetOps

Issue/Introduction

We have a device which discovers the CPU metric family and need to configure the Threshold or Create a Group only for CPU's components. Similarly for memory and partitions. How can this be done?

 

Environment

DX NetOps CAPM all currently supported releases

Cause

By default some of components are not synchronized to the NetOps Portal.

Resolution

Here are the steps to get the component to synchronize to PC to be used in groups or rules.

Please use the RestClient

  1. Using a REST API client, do a GET request for http://<DAHOST>:8581/typecatalog/components and find the component you want. For example CPU, Memory, Partition...

    I.e.: http://<DAHOST>:8581/typecatalog/components/CPU


  2. The return contents from the GET request will be as follows for CPU:



    And for Partition will be:



  3. Increase the version from 1.0 to 1.01, 1.1 to 1.11, etc

  4. Add the following before </FacetType>:

    <ItemSyncDefinition categorize="false" context="true" groupBy="false" itemSubtypeName="cpu" itemTypeLabel="CPU" itemTypeLabelPlural="CPUs" itemTypeName="component" mapped="false" />

    replace cpu/CPU/CPUs with name that would makes sense.    partition, Partition, Partitions...  

    For Example:

    <DataModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" namespace="http://im.ca.com/inventory" xsi:noNamespaceSchemaLocation="ComponentFacet.xsd">
    <Author>CA</Author>
    <Version>1.01</Version>
    <FacetType name="CPU">
        <Documentation>A CPU resource.</Documentation>
        <FacetOf namespace="http://im.ca.com/core" name="Item"/>
        <Component>true</Component>
        <WebService version="1.0.0">
           <EndPoint create="false" delete="false" get="true" getList="true" update="false" url="cpus" createOnlyIfUnique="false"/>
           <Reference ref="{http://im.ca.com/inventory}DeviceComponent" use="Required"/>
        </WebService>
        <ItemSyncDefinition categorize="false" context="true" groupBy="false" itemSubtypeName="cpu" itemTypeLabel="CPU" itemTypeLabelPlural="CPUs" itemTypeName="component" mapped="false" />
    </FacetType>

    </DataModel>

  5. Then do a PUT request on http://<DAHOST>:8581/typecatalog/components/CPU


    with body of the new xml, and Content-Type: application/xml




  6. Then do GET http://<DAHOST>:8581/typecatalog/CPU to check that the new ItemSyncDefinition was added:





  7. Do a full sync from DA to sync the new (ex.) CPU components.

Now you can see all CPU's components example in group, create a new Group with this rule:

Results:

Additional Information

Note: This increases the amount of items to sync, and also is not reversible.