Inventory Transform

Inventory Transform

This document will cover the basics of the CM evolveIT Dashboard Inventory Transformation.  

After completing this document, you should have a basic understanding of where the inventory transform process gets its data, how to determine a process has been completed, how to run the transform process manually and how to do some simple debugging if the process did not run.   

 

1. Inventory Transform Process Background 

 Dashboard Inventory Data 

  • The dashboard data is stored in a separate graph database used by CM evolveIT 
  • Graph databases are based on graph theory and employ nodes, edges, and properties. 
  • Nodes represent entities such as people, businesses, accounts, 
  • Edges, also termed graphs or relationships, are the lines that connect nodes to other nodes; 
  • Properties are general information of nodes. 

 

 2. Inventory Viewer  

The inventory viewer is stored at in the folder, %EVOLVEIT_DATA%\databases,  

This location is based on the environment variable, EVOLVEIT_DATA 

The default location is: C:\Users\Public\CMFirst\EvolveIT\databases 

 

 3. The Dashboard Inventory Transform Process 

 

The process creates and updates the dashboard inventory database.  

The CM evolveIT cross-reference process automatically triggers the inventory transform process at the end of cross-reference processing.   

The OrientDB Service and the CM evolveIT Dashboard WebAPI must be running for the transform process to execute.   

Determining the Snapshot Date 

The cross-reference process generates an InventoryStatistics.csv file under <Inventory>\Dashboard\Statistics folder. This file contains the Snapshot date.  

If the Inventory doesn’t have the InventoryStatistics.csv file, the current date/time becomes the snapshot date.  

 

 4. Transform Processing Results 

 

Initial Load and Incremental Load 

The dashboard inventory database provides a historical view of your assets.  

The inventory database identifies and tracks the initial load and all subsequent incremental loads.   

 

5. Prevent unnecessary Incremental Load 

 

The Inventory Transform will do nothing in the following conditions 

The Snapshot already exists in Inventory Database. 

The Inventory has prior Snapshot date than the last Snapshot Date in Inventory Database. 

The inventory load will not occur when there are no source changes.   

 

 6. Load Limitation 

The transform process will not process the removal of an asset. 

 

7. Logging 

 The Inventory Transform Process output two kinds of logs, please provide these logs to CM First Support when you have an issue with Inventory Transform. 

The Result Log 

%EVOLVEIT_DATA%\Logs\TransformReport\<Invenotry Name> folder contains InventoryTransformReport_<snapshotdate>.json file 

The Process Activity Log 

%EVOLVEIT_DATA%\Logs\Transform folder contains detailed process log for Inventory Transform 

 

8. Notification 

The Transform Process Create Notification can be viewable in the Dashboard  Notifications section.  


   

9. Manual execution 

 

Open a command prompt and change the current directory to 

            <CMEvolve Installdir>\WebData\Configtool 

The default location is: 

             C:\CMFirst\evolveIT-10.6\WebData\Configtool 

 


 

Execute the following command 

EvITInventoryTransformUtil.exe -m <path to Inventory root folder> -i <Name of Inventory>  

  1. Sample call 

 


 

 10. Troubleshooting 

 

Access folders, use Dashboard Configuration tool to access Data folder and Log folder 

 


 

When debugging the Inventory Transform The first place to look at

      %EVOLVEIT_DATA%\Logs\TransformReport\<Invenotry Name> InventoryTransformReport_<snapshotdate>.json file 

Inventory Transform retry, there is no auto retry feature available. Please contact CM First Support for assistance.  

  • Stop Orientdb service 
  • Restore Inventory Database from the Last backup 
  • Re-start Orientdb Service 
  • Start Inventory Transform process manually 

    • Related Articles

    • Inventory Data Unit and Snapshot Date

      This document will cover the basics of the CM evolveIT Dashboard data unit snapshot. We will discuss what the data unit is and how multiple snapshots can be managed. After completing this document, you should be able to determine what data units are ...
    • Inventory Management

      Dashboard - Inventory Management This document will cover the basics of how to map Inventories to Object Groups in the CM EvolveIT Dashboard. There will be a discussion of how to assign and remove Inventories form an Object Group. After completing ...
    • What is 'Building Inventory'?

      About this page, CM evolveIT provides both Desktop and Web user interface to provides analysis. The data is called Inventory. There are two type of Inventory, Desktop and Web. CM evolveIT provides parser/scanner for various source code types. This ...
    • Building CM evolveIT Inventory

      Desktop Inventory 1. Prepare Source File Folders Preparing folder and copy all sources - {Root}\Sources In this example, the Root folder is Discovery, the source subfolder is DemoSrcCode. 2. How to Create Inventory and Workarea Create WorkAreas and ...
    • Inventory Building CLI

      CLI (Command Line Interface) for Inventory Building Execute ETL Projects SET INVNAME=MyInv :: Set CM evolveIT installed root Folder Path SET EVIT_ROOT=C:\CMFirst\evolveIT-11.7 :: Set Workarea root Folder Path SET WAPATH=C:\CMEvolveIT\Workareas :: Set ...