JetBrains Floating License Manager
Introduction
Open iT supports JetBrains usage reporting by polling the license servers at regular intervals to get the current status of its license use and availability.
For this collection, the data source is through an API. The data collector/preprocessor initiates the license status utility every hour using a 5-minute sample interval, triggering the data collection process. The license status utility requests the current license usage data from the license manager portal. After the license manager portal provides the requested data, the license status utility passes this information to the data collector/preprocessor. The data collector/preprocessor processes the data, preparing it for transmission. Finally, the preprocessed data is sent to the Core Server every night, according to the client's timezone, for further storage, completing the license usage data collection and processing.
This will produce the following aggregated data types used for historical reporting:
The following sections will guide you in setting up the necessary configuration to collect and send the required data to the server.
Apply the configurations shown in the Open iT Core Client.
Requirements
- Configured JetBrains license server
- Valid URL with the port number of the JetBrains API
- The unique token used for JetBrains authentication
- An Open iT Core Client connected to an Open iT Core Server or a coexistent Open iT Core setup
- Activated LicenseAnalyzer collection and license poller
Configuring Data Collection
These are the required steps to activate and configure collection of JetBrains usage data.
-
Go to the Components directory, which is by default in
C:\Program Files\OpeniT\Core\Configuration\Components
, and back up thelicpoll.xml
configuration file. -
Open a command prompt with Administrator level privileges.
-
Go to the bin directory, which is by default in
C:\Program Files\OpeniT\Core\bin
, run the command:Command Syntaxcd $BIN_DIR
Examplecd C:\Program Files\OpeniT\Core\bin
-
Once in the directory, copy the object node
genericlicense-sample
and rename it to your desired name. In this example, we will usejetbrains
. Run the command:Command Syntaxopenit_confinit -c "licpoll.license-types.genericlicense-sample=>licpoll.license-types.jetbrains"
warningElement names cannot contain parentheses
(
or)
because they are not valid for XML element names. -
Activate the collection of JetBrains data, run the command:
Command Syntaxopenit_confinit -c "licpoll.license-types.jetbrains.active=true"
-
Set the arguments to the status command, run the command:
Command Syntaxopenit_confinit -c "licpoll.license-types.jetbrains.status-command.arguments=JetBrains <api_url> /token:<token>"
where:
<api_url>
is the corresponding valid URL with the port number of the JetBrains API.<token>
is a unique token used for authentication.
Exampleopenit_confinit -c "licpoll.license-types.jetbrains.status-command.arguments=JetBrains http://desktop123win:8080 /token:abcdefgh12345678ijklmnop"
-
Update the configuration file, run the command:
Command Syntaxopenit_confbuilder --client
Make sure no errors are encountered.
Advanced Configuration
Refer to the JetBrains Data Collection Configuration table to learn more about JetBrains configuration in licpoll.xml
.
Object Name | Accepted Value | Description |
---|---|---|
active | Boolean (true or false ) | Setting this to true activates JetBrains usage data collection. |
type | String (e.g., GenericLicense ) | The license manager type. |
interval | Timespan (e.g., P30S , P5M , P1H ) | The span of time between each polling round (it is recommended to set a value no less than P1M). |
offset | Timespan (e.g., P30S , P5M , P1H ) | The span of time the aligned poll time decided by interval is shifted. |
product-name | String (e.g., server;daemon ) | This object is defined if a vendor license name other than the default GenericLicense=%hosttype% will be used. |
license-server | String (e.g., desktop123win ) | The license server name. |
status-command | FileName (i.e., ${OpeniT. directories.bin}/ genlicutil ) | The binary used to obtain status from the license manager. |
status-command.arguments | String (e.g., JetBrains http://desktop123win:8080 /token:abcdefgh 12345678ijklmnop ) | The arguments used for the status command. Use the format JetBrains<api_url> /token:<token> . |
Verifying Data Collection
After configuration, you can verify that the data is collected by following these steps:
-
Open a command prompt with Administrator level privileges.
-
Go to the bin directory, which is by default in
C:\Program Files\OpeniT\Core\bin
, run the command:Command Syntaxcd $BIN_DIR
Examplecd C:\Program Files\OpeniT\Core\bin
-
Run the command:
Command Syntaxopenit_licpoll -# 1
-
Verify that the temp directory, which is by default in
C:\ProgramData\OpeniT\Data\temp
, contains a LicPoll directory containing.data
andstatus-*.log
files.