ILMT / SUA – REST API – Obtaining the installed software per device that includes bundling

I have previously been integrating with ILMT 7.x at a database level, but as this does not seem to be supported in 9.x, I’ve been transitioning to using the REST API. Some data relationships that were quite easy to access at the database level, seems not to be available via the REST API.

I am trying to obtain a list of all of the software installs per device which also takes the bundling process into account.

I can get the installed software instances via a call to ‘/api/sam/software_instances’, but there does not appear to be a way to relate the installed component to a product (Component -> Release -> Version -> Product). We would like to see the software installs after the bundling process, and have access to the product metric (PVU, RVU, Other).

I can get a list of products that are installed with a call to ‘/api/sam/swinventory/products’ and from this to the products releases ‘/api/sam/swinventory/product/{product_id}/releases’ and from the release to the release instances ‘/api/sam/swinventory/release/{release_id}/instances’; but there does not appear to be a way to relate this release instance information to the data pulled from ‘/api/sam/software_instances’.

Within the attributes pulled from ‘/api/sam/swinventory/release/{release_id}/instances’, there also does not appear to be a clean way to link to the ‘/api/sam/computer_systems’ data, as there is no computer_id or computer_system_id, only the ‘hostname’ is available.

How can I obtain a list of the installed software per device, with bundling taken into account, which also includes the product metric, via the REST API?

Thanks

Gary

Hello

Please fin the link to ILMT 9.2 software instances API.

https://www-01.ibm.com/support/knowledgecenter/api/content/SS8JFY_9.2.0/com.ibm.lmt.doc_9.2/com.ibm.license.mgmt.doc/integration/r_get_software_instances.html?locale=en

There is a list of columns visible by default and the hidden ones. To get the information software_title_name from catalog dimension use the following param in the API url - columns[]=catalog_dimension.software_title_name.

To determine the license usage for PVU/RVU for your computer systems please follow the scenarios described here:
https://www-01.ibm.com/support/knowledgecenter/api/content/SS8JFY_9.2.0/com.ibm.lmt.doc_9.2/com.ibm.license.mgmt.doc/integration/c_license_api_scenarios.html?locale=en

Hello Lukasz

Thanks for your response.

The API call ‘/api/sam/software_instances’ appears to return all of the discovered components, ignoring the bundling that has been applied. As the title of the post mentions, I’m looking to obtain installed software per device that takes the bundling into account. Is this possible?

Does navigating down the tree:

/api/sam/swinventory/products
/api/sam/swinventory/product/{product id}/releases
/api/sam/swinventory/release/{release id}/instances

Give me this information?

Additionally, the API call ‘/api/sam/license_usages’ does not return any rows in the installation I am working with, why would this be? Does it rely on more than just the inventory data?

Does the ‘licenseType’ attribute on the API call ‘/api/sam/swinventory/products’ provide the metric that the installed instances should be measured by?

Thanks

Gary
-=-

Hello Gary,

Currently it is not possible to easy combine output from software instances and from ‘bundling API’.
First is just to return all software discovered in environment. Second one is to retrieve all IBM Software with applied bundling and gives ability to perform actions like reassign, confirm or exclude.

About license usages, there could be some things to check.
Did you run capacity scan on your computers?
Is PVU table updated?
Is your product PVU or RVU?
Are you requesting data from good period of time?

About last thing, licenseType attribute is related to product, not software instance (component). It is telling under what type of license your product is licensed. You can have of course software components bundled to some product, but still license type is for product.

Regards,
Łukasz

Hi Lukasz

Thanks for your response.

Just taking one of the point further regarding the license usages, I’m getting the following error during a data import which is likely the reason I’m not seeing the data:

“2015-10-13 23:02:41 (+0:00:00.001) INFO: (ImportThread) com.ibm.license.mgmt.etl.core.actions.AbstractNoTransactionEtlAction::process()::Starting execution of step: ImportCapacity
2015-10-13 23:02:42 (+0:00:01.004) WARN: (ImportCapacity-Thread:1) CapacityScanFileHandler::processTask::Some error occured during importing the capacity scan from file : tlm_hw_201510131032_1444728759.xml for endpoint : 3.
2015-10-13 23:02:42 (+0:00:00.002) WARN: (ImportCapacity-Thread:0) CapacityScanFileHandler::processTask::Some error occured during importing the capacity scan from file : ./tlm_hw_201510131140_1444732840.xml for endpoint : 1.
2015-10-13 23:02:42 (+0:00:00.144) WARN: (ImportCapacity-Thread:1) CapacityScanFileHandler::processTask::Some error occured during importing the capacity scan from file : tlm_hw_201510131421_1444742488.xml for endpoint : 3.
2015-10-13 23:02:42 (+0:00:00.026) WARN: (ImportCapacity-Thread:0) CapacityScanFileHandler::processTask::Some error occured during importing the capacity scan from file : ./tlm_hw_201510131421_1444742506.xml for endpoint : 1.
2015-10-13 23:08:01 (+0:05:18.599) INFO: (ImportThread) com.ibm.license.mgmt.etl.core.actions.CitScanImportStep::processCapacityScans::STATISTICS: 2 file packages were uncompressed. 0 files with capacity scan data were successfully imported. For 4 files the import failed.
2015-10-13 23:08:01 (+0:00:00.001) INFO: (ImportThread) com.ibm.license.mgmt.etl.core.actions.AbstractNoTransactionEtlAction::process()::Finished execution of step: ImportCapacity, with total time: 319776 ms.”

These are for VMware virtual machines. I’ve only found one article regarding this error, which suggested adding “SMBIOS.reflectHost = “true”” into the virtual machine’s .VMX file, but this has not corrected the issue.

Do you have any ideas what the problem is going to be?

This is with an ILMT all in on installation on Linux running 9.2.0 and the clients are running BigFix Client 9.2.1.

Cheers

Gary

@GarySmith
Gary,
Can you grab one of those files from the endpoints and send it over to me, I will take a look at content of those files which may cause the problem. I will send you my email address via private msg.

Thanks for your help Michal.

I can confirm that upgrading ILMT from 9.2.0 to 9.2.1 fixed the issue with importing the capacity data.

Kind Regards

Gary