Consumption Analytics Documentation

Home > Documentation for older versions > Cloud Cruiser 3 > Setting Up Collection > Native collectors > HP CloudSystem Matrix > Mapping data to Cloud Cruiser

Mapping data to Cloud Cruiser

There are many ways to collect data and define costs. To use the pricing set in CSM, templates should be imported as passthrough resources using HPIOTemplateImportTasklet . To control pricing per template in the resource model, the template importer can still be used with passthrough turned off. This imports new templates only so that pricing data is not overwritten.

Another option is to map the data more generically and capture server, network, and disk resource allocation without concern for template specific pricing. The template import step is not required in this case.

The HP CSMCollector generates XML data that you can map to CC Record output using XPath expressions and standard output field mapping. This works the same as does mapping output from the XML Collector. For information about mapping output for that collector that also applies to the HP CSMCollector, see Mapping data to Cloud Cruiser.

Feed configuration

Use HPIOCollector with the CCRecordCollectTasklet to create multiple feed files per day. The service details from HPIOCollector are converted to an XML document per service for mapping. Default mappings are applied if the feed configuration has no outputs defined. These documents can be dumped to the console by setting the collector’s printEntityXML property to true. The HPIO feed configuration extends the XmlFeedConfiguration bean and supports all the same parsing behaviors.

Time and date

Usage history with computed costs are available from the chargeback API. This is the most accurate way to collect historical usage in terms of allocation hours per day and exact costs as per CSM pricing. In CSM 7.1, you can use HPIOMeterCollector with CCRecordCollectTasklet to collect for any given select date.

If the service name is included in the account structure, service details from polling can be combined with usage detail from the chargeback API on reports. In the event that a service is short lived and not picked up by polling, the usage and cost will still be captured even though service details will not be available. This combined approach is recommended.


An identifier is anything in the file you can associate with the resource. For example, consider this condensed tree view of a snippet of XML that contains identifiers in the ServiceDetail hierarchy.

ServiceDetail elements


The following snippet of the XML job file will use the sterotypeName of Disk1 to create a new identifier from a lookup table using an existing identifier value of Disk1 .

<bean class="com.cloudcruiser.batch.transform.CreateIdentifierFromTable">
  <property name="active" value="true"/>
  <property name="filter">
    <bean class="com.cloudcruiser.batch.filter.IdentifierExistsCondition">
      <property name="identifierName" value="ServiceDisk" />
  <property name="lookupFile" value="${env.processDir}/stereotype_lookup.csv" />
  <property name="sourceIdentifier" value="ServiceDisk"/>
  <property name="targetIdentifier" value="StereotypeName"/>


The template import process creates only a resource per template and should not reflect the entire cost of the service. A complete solution requires importing resources for service components in the transform step using the ImportNewResources transform processor. The main benefit of using the IO template import instead of the generic transform import is that the template description is picked up as a resource comment. Otherwise, the same result is attained.

Last modified


This page has no custom tags.


This page has no classifications.

 (c) Copyright 2017-2020 Hewlett Packard Enterprise Development LP