Altium License Manager
Introduction
Open iT supports Altium usage reporting by collecting log files and converting them to Open iT format.
An Open iT Core Client is installed on your license server for this collection. The data collector monitors and gathers the license usage history logs from the license manager hourly. Once the logs are collected, the data collection process triggers and the logs are passed to the data preprocessor. After the data is preprocessed, it is transferred to the Core Server for further storage, completing the history logs collection and processing.
This will produce the following aggregated data types used for historical reporting:
Record Log Data:
- (89) Total License Use Licenseevents
- (90) Individual License Use Licenseevents
- (91) Usergroup License Use Licenseevents
- (108) Host License Use Licenseevents
- (109) Hostgroup License Use Licenseevents
Event Log Data:
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
- An Open iT Core Client connected to an Open iT Core Server or a coexistent Open iT Core setup
- License server administrative rights
- Full path to the debug log file
Configuring Log File Collection
These are the required steps to configure collection of Altium log files.
-
Go to the Components directory, which is by default in
C:\Program Files\OpeniT\Core\Configuration\Components
, and openlogfilecollector-altium.xml
. -
Locate object node
dir
and set its value to the location of the Altium log files.logfilecollector-altium.xml14 <Object>
15 <Name>dir</Name>
16 <Description>Directory containing the log files</Description>
17 <Value type="DirName">%ALTIUM%</Value>
18 </Object>Example: logfilecollector-altium.xml14 <Object>
15 <Name>dir</Name>
16 <Description>Directory containing the log files</Description>
17 <Value type="DirName">C:\Users\Administrator\Desktop\altium</Value>
18 </Object>Sample Log File Content
4/4/2018 1:06:26 PM jdoe HRRUV38262111 x.x.361.23 trying to check-out All Users NLWL-WLX6 Altium Designer 0 1
4/4/2018 1:06:26 PM jdoe HRRUV38262111 x.x.361.23 check-out completed, group "All Users" All Users NLWL-WLX6 Altium Designer 1 1
4/4/2018 1:08:26 PM jdoe HRRUV38262111 x.x.361.23 trying to check-in All Users NLWL-WLX6 Altium Designer 1 1
4/4/2018 1:08:26 PM jdoe HRRUV38262111 x.x.361.23 check-in completed All Users NLWL-WLX6 Altium Designer 0 1
4/4/2018 2:17:01 PM jdoe HRRUV38262111 x.x.361.23 trying to check-out All Users NLWL-WLX6 Altium Designer 0 1
4/4/2018 2:17:01 PM jdoe HRRUV38262111 x.x.361.23 check-out completed, group "All Users" All Users NLWL-WLX6 Altium Designer 1 1
4/4/2018 2:27:01 PM jdoe HRRUV38262111 x.x.361.23 trying to check-in All Users NLWL-WLX6 Altium Designer 1 1
4/4/2018 2:27:01 PM jdoe HRRUV38262111 x.x.361.23 check-in completed All Users NLWL-WLX6 Altium Designer 0 1 -
Save the changes.
-
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
-
Update the configuration file, run the command:
Command Syntaxopenit_confbuilder --client
Make sure no errors are encountered.
Advanced Configuration
Refer to the Altium Log File Collection Configuration table to learn more about Altium configuration in logfilecollector-altium.xml
.
Object Name | Accepted Value | Description |
---|---|---|
source.dir | DirName (e.g., C:\Users\Administrator\Desktop\altium ) | Location of the Altium log files. |
source.pattern | String (i.e., *.log ) | The glob pattern identifying source files in the source directory. |
source.seen | String (collect , ignore , or tail ) | Seen files are the previously collected source files.
|
source.cmplines | Integer (e.g., 6 , 10 , 20 ) | This is required if the value of source.seen is tail . This is the number of lines compared to source files collected before to determine where to start the collection. Note: If this number is too low, you can end up with an incorrect position, and duplicate data may be in the log files. Usually, it is better to have a few lines more than strictly necessary than even a single line too little. |
target.dir | DirName (i.e., ${OpeniT.directories.temp}/LogFileCollector ) | This is the location of the directory containing the collected log data. |
target.module | String (i.e., license ) | The target type of module (in general). |
target.datatype | String (i.e., altium ) | The specific type of target data. |
target.interval | Timespan (e.g., P30S , P5M , P1D ) | The span of time between collector runs. |
target.rotation-size | Integer (e.g., 6 , 10 , 20 ) | The log file rotates if it goes beyond the number (in mb) defined. |
target.rotation-glob | String (e.g., * ) | The glob pattern to match before the log file rotates. |
Activating Log Data Collection
These are the required steps to activate collection of Altium log data.
-
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, activate the collection of Altium log data, run the command:
Command Syntaxopenit_oconfinit -u "collect_license_altium-logs.root.scheduler.jobs.collect_altium_licenselogs.general.active=true"
Advanced Configuration
The collection runs hourly by default. To configure the intervals, locate the instances
attribute under collect_altium_licenselogs
, preprocess_altium_licenselogs-events
, preprocess_altium_licenselogs-records
, or transfer_altium_licenselogs
in the same file and configure the attributes.
Refer to the Altium Log Job Scheduler Instances Configuration table to learn the attributes used to configure Altium data collection and transfer.
Attribute Name | Accepted Value | Description |
---|---|---|
max-instances | Uint (e.g., 5 , 8 , 9 ) | The number of instances allowed to run at the same time. |
max-handling | String (end-oldest , end-all-old , or end-new ) | The action done upon reaching the maximum number of instances:
|
end-timeout | Timespan (e.g., P30S , P5M , P1H ) | The maximum waiting time before terminating a running instance. |
quarantine | Timespan (e.g., P30S , P5M , P1H ) | The waiting time before starting a new instance after a previous one. |
Deactivating Record Log Data Collection
Turning on log data collection automatically aggregates record and event log data. If you want to collect event log data only, follow 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
-
Once in the directory, deactivate the collection of record log data, run the command:
Command Syntaxopenit_oconfinit -u "collect_license_altium-logs.root.scheduler.jobs.preprocess_altium_licenselogs-records.general.active=false"
-
Change the handling of event logs, run the command:
Command Syntaxopenit_oconfinit -u "collect_license_altium-logs.root.scheduler.jobs.preprocess_altium_licenselogs-events.operations.arguments=--srcdir \"${OpeniT.directories.temp}/LogFileCollector\" --srcpattern raw-altium-license-LogFileCollector*.data --srcfilehandling rename --trgdir \"${OpeniT.directories.temp}/LogParserAltium\" --module license --datatype event --resolution PT1H --matchobjects \"${OpeniT.directories.conf}/matchobjects-event-altium.oconf\" --type event --disable-statlogging"
-
Change the data transfer schedule, run the command:
Command Syntaxopenit_oconfinit -u "collect_license_altium-logs.root.scheduler.jobs.transfer_altium_licenselogs.scheduling.start-triggers.trigger#1.job-name=preprocess_altium_licenselogs-events"
Verifying Log Data Collection
After configuration, you can verify that the data is collected and sent to the Core Server 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_executor -r collect_license_altium-logs
-
Verify that there are
archiver*.in
files created in the Core Server's archiver directory, which is by default inC:\ProgramData\OpeniT\Data\incoming\archiver
.