< All Topics
Print

Client Diagnostics

When troubleshooting you can generate an RLM client diagnostic report. Generating this report requires setting the “RLM_DIAGNOSTICS” environment variable. You can read more about setting environment variables here. When the RLM Client library is run (developers: specifically the rlm_init() API call), RLM will generate the diagnostic report to the file location specified in the environment variable.

 

The diagnostic report will be broken into 5 sections:

  1. A Header with system information
  2. Environment – The RLM related environment variables when the diagnostic report was generated
  3. License files – The license files on the local computer that RLM was able to identify
  4. rlm_init() parameters – Helpful to developers
  5. Licenses which can be checked out

 

1. Header

The header will detail when the report was generated, as well as information about the system the report was created on.

 

Here is an example section:

RLM Diagnostics at 09/02/2024 07:00

RLM version: 16.0BL1
RLM platform: x64_w4
OS version: 6.2

ISV name: [ISV name]
Hostname: [Computer name]
User: [Username]
Working directory: C:\Example-Directory

 

2. Environment

The Environment section will list out off of the RLM specific environment variables, and list their value. Note that these values will be collected when the diagnostic report is run, and that some applications may change environment variable values afterwards.

 

The Environment section will also list all of the hostids that are present on the client system.

 

Here is an example section:

Environment:
RLM_CONNECT_TIMEOUT=<not set>
RLM_EXTENDED_ERROR_MESSAGES=<not set>
RLM_LICENSE=<not set>
RLM_NO_UNLIMIT=<not set>
RLM_PATH_RANDOMIZE=<not set>
RLM_PROJECT=<not set>
RLM_QUEUE=<not set>
RLM_ROAM=<not set>
RLMSTAT=<not set>
HTTP_PROXY=<not set>
HTTP_PROXY_CREDENTIALS=<not set>
DEMO_LICENSE=<not set>
demo_LICENSE=<not set>

RLM hostid list:

10ac0307 uuid=699A4D56-58BF-1C83-D63C-27A8BEB8011A disksn=WDWX60AC946860 ip=192.168.0.2

 

3. License Files

The License Files section will list the license files, on the local system, the RLM client library was able to locate. When troubleshooting it can be helpful to make sure RLM is able to read the license file on the file system (ex: permission issues).

 

Note: License files contain licenses, and licenses are what applications then perform checkouts on. So the license file is the “container”, and the license is the “object.”

 

Here is an example section:

License files:
example.lic
roam.lic
token.lic

 

4. rlm_init() parameters

The rlm_init() parameters section is for software developers. It let’s them know what parameters were passed into the rlm_init() API call.

 

Here is an example section:

rlm_init() parameters:
1: .
2: rlmclient
3: <empty>

 

5. Licenses which can be checked out

This section will list the licenses that are available for the client device to checkout. Note that license files contain licenses, and licenses are what applications then perform checkouts on. So the license file is the “container”, and the license is the “object”. Licenses that can be checked out can either be in local license files, passed into rlm_init() directly, found on a local RLM license server, found on an RLM Cloud license server, or be a locally roamed/cached license.

 

 

Here is an example section:

Local licenses which can be checked out:

Client Cached Licenses (only the highest version # shown):

<none>


In license file example.lic
(no server)

rlmclient v1.0 OK

In license file roam.lic
(no server)

rlm_roam v1.0 OK

In license file token.lic
(no server)

<none>

Roaming Licenses:

<none>

 

For more information on debugging a license, please see Debugging Licensing Problems in the Field in the RLM documentation.

RLM and RLM
Activation Pro

What’s the difference?

Reprise License Manager (RLM)

Software License Manager

RLM provides runtime checking that verifies that your application is licensed to run and that the current usage of your application is within the limits you have ser every time your application runs.

As a Software publisher, you integrate RLM into your product, and RLM keeps track at runtime of who is using the licenses of your software.

RLM can do this entirely within the client library (linked into your application), or, more commonly, your application makes a request of the RLM Lincese Server to check out a license.

The lincese server runs either on your customers network, or in the cloud if you are using our RLMCloud™ service.

RLM provides runtime checking that verifies that your application is licensed to run and that the current usage of your application is within the limits you have ser every time your application runs.

RLM Activation Pro

Software Activation Manager

Activation Pro is
used once when your customer purchases your software in order to retrieve the license which is specific to that customer.

Software Activation’s purpose in life is to get the licenses for your product to your customers with a minimum of fuss.

Activation Pro also has a server component wich we call the activation server.

Your application contacts the activation server and supplies a short text activation key, and in exchange, the activation server returns the license which enables your product.

Generally, this is done once, right after your customer purchases your software, not every time your software is invoked.