Skip to main content
Version: 10.2

Generic License Type Format

Introduction

The generic license format is an Open iT text data format designed for data parsing different license managers. It helps the LicenseAnalyzer easily support different license managers.

The generic license format is a flexible key-value base format with a semicolon as the separator. It is designed for easy human reading, with indentation used per level. It can handle various special characters, requiring only the addition of an escape character for each. This format contains all the necessary data for reporting. Some keys must be supplied with the correct values, while others can be left blank or disregarded, giving you control over the information you include in your license report.

Levels and Keys

Vendor License

Refer to the Vendor License Attributes table to learn more information about a license set/group.

AttributeDescriptionFormatSize
license-typeRequired. The name of the license type collected.String (e.g., license-type=flex)50
license-fileProvide only if available. The full path to the license file.FileName (e.g., license-file=C:\Program\Files\alpha\license.dat)500
hostRequired. A fully qualified domain name.String (e.g., host=lserver.mycompany.com)100
server-startProvide if available. The time when the server was last restarted.ISO-8601 (e.g. server-start=2013-02-06T11:09:32.091)-
Vendor License Attributes

Package

Refer to the Package Attributes table to learn more information about feature packages.

AttributeDescriptionFormatSize
idRequired. The shortest possible string/number that uniquely identifies the package.String (e.g., id=feature_1.0)50
nameRequired. The name of the package.String (e.g., name=feature1)500
versionProvide only if available. The version of the package.String (e.g., version=1.0)100
issuedProvide if available. The time when the package was issued.ISO-8601 (e.g. issued=2001-09-30)-
expiresProvide if available. The time when the package will expire.ISO-8601 (e.g. expires=2026-03-31)-
licensesRequired. The total number of licenses available.Number (e.g., licenses=3)BIGINT
typeProvide if available. The license type.String (e.g., type=floating)50
vendorProvide if available. The name of the vendor.String (e.g., vendor=delta)50
componentsRequired. A comma-separated list of component identifiers identical to the feature ID value of the components.String (e.g. components=componentfeature1:v1, componentfeature2:v1.2)500
Package Attributes

Feature

Refer to the Feature Attributes table to learn more information about a regular license feature.

AttributeDescriptionFormatSize
idRequired. The shortest possible string/number that uniquely identifies the package.String (e.g., id=feature_1.0)50
nameRequired. The name of the package.String (e.g., name=feature1)500
versionProvide only if available. The version of the package.String (e.g., version=1.0)100
issuedProvide if available. The time when the package was issued.ISO-8601 (e.g. issued=2001-09-30)-
expiresProvide if available. The time when the package will expire.ISO-8601 (e.g. expires=2026-03-31)-
licensesRequired. The total number of licenses available.Number (e.g., licenses=3)BIGINT
typeProvide if available. The license type.String (e.g., type=floating)50
vendorProvide if available. The name of the vendor.String (e.g., vendor=delta)50
Feature Attributes

Usage

This should be indented below a package or a feature. Refer to the Usage Attributes table to learn more information about package and feature usage.

AttributeDescriptionFormatSize
idRequired. The shortest possible string/number that uniquely identifies the license use.String (e.g., id=1539)50
userRequired. The name of the user.String (e.g., user=jdoe)100
hostRequired. The name of the host where the license is used.String (e.g., host=aa.abc.de.meme)100
licensesRequired. The number of licenses used.Number (e.g., licenses=3)BIGINT
exeProvide if available. The executable's name in the license user's host.FileName (e.g., myapp.exe)500
startRequired. The time when the license use started.ISO-8601 (e.g. issued=2001-09-30)-
Usage Attributes

Examples

Each line lists a group of key-value pairs describing the element represented by the line. The line starts with a keyword identifying the type of element represented, followed by a colon (:), and then the key-value pairs separated by a semi-colon (;). Keys can contain lowercase letters (a-z), hyphens (for word separation if necessary), numerals (0-9), periods (.), and commas (,). Values can contain anything except new lines, but if you include a semi-colon, you must place the value within double quotes (e.g.,data="alpha;beta";count=4;). Elements that include double quotation marks must escape these: data=alpha-\"beta\".

For regular license data, the following elements should be included (if possible):

Example 1
product: license-type=alpha; host=beta; port=1700; license-file=C:\Program\Files\alpha\license.dat;
feature: id=feature_1.0; name=feature1; version=1.0; licenses=20; vendor=delta;
usage: id=1539; user=guess; host=myhost; display=193.217.12.14; licenses=1; version=1.0; start=2012-02-18T15:21:00.000;
Example 2
product: license-type=alpha; host=beta;
feature: id=Enabling[20]; name=Enabling[20]; issued=2001-09-30; expires=2026-03-31; licenses=1;
feature: id=Network[21]; name=Network[21]; issued=2001-09-30; expires=2026-03-31; licenses=134;
usage: id=Network[21]_shimoura@tkserv5; user=shimoura; host=tkserv5; licenses=4; start=2012-10-15T21:10:00.000;
usage: id= Network[21]_itoh@aa.abc.de.meme; user=itoh; host=aa.abc.de.meme; display=i; licenses=3; start=2012-10-15T10:58:00.000;

LicPoll Configuration

Before proceeding with the configuration, we need to create a utility application that will convert your raw data into our generic license format. The format should be the same when written to a file when std-out. This std-out will be the LicPoll’s input data.

Configuring the Generic License Converter in LicPoll

  1. Go to the Components directory, which is by default in C:\Program Files\OpeniT\Core\Configuration\Components, then open the licpoll.xml configuration file.
  2. Search for genericlicense-sample.
  3. Configure LicenseAnalyzer to use the utility application by copying the utility to ${OpeniT.directories.bin}genlicutil.exe, which is by default in C:\Program Files\OpeniT\Core\bin or modify the licpoll.xml configuration file to point to the path of the utility application.
  4. If the utility application requires command line arguments, set it under genericlicense-sample.status-command.arguments.
  5. Activate the collection of data by setting genericlicense-sample.active to true.
  6. Save the changes, then restart the OpenitClient service.