Creating a Wrapper to Pre-process lmstat Output before parsing by Altair Monitor (all versions).


This article describes how to create a wrapper to pre-process lmstat output before the usage data is parsed by the Altair®Monitor™ parser.

Usage Scenario #1:

When a user has multiple usernames from different NIS domains (i.e., Unix and Windows), the license usage by this user is logged under multiple usernames, which is undesirable.

Usage Scenario #2:

Usernames may contain unusual characters (e.g., #, *) or contain white space that could cause parsing issues . All these string entries can be pre-processed and corrected by applying an lmstat wrapper to alter the username/feature_name before feeding the data to the Monitor parser.

Example without Pre-processing

The following case shows the user "Jason L" has 2 different usernames, "jlin" and "jasonl".
The license usage without pre-processing is shown as:


Example with Pre-processing

Here is the license usage with pre-processing (username shown as "jlin"). This is achieved by setting up an lmstat wrapper:


Configuring a license monitor

Here is how a license monitor is configured normally (using the status command "lmstat" provided by the tool vendor):



Configuring an Imstat wrapper

Here is how an lmstat wrapper is configured:

Note: This wrapper script runs the original lmstat command, then performs a string edit to replace 'jasonl" with "jlin".

Name change string

Here is the content of name_change_sed.txt (sample):

s/\<jasonl\>/jlin/


Imstat Output without Pre-processing

For reference, here is lmstat output, which Monitor parses without pre-processing (username shown as "jlin" and "jasonl"):


Imstat Output with Pre-processing

For reference, here is lmstat output, which Monitor parses with pre-processing (username shown as "jlin"):