#Introduction
#Supported Report Types
Level 2 includes historical reporting, real-time monitoring, and a proactive pop-up alert.
#Historical
#Process Accounting
This report type periodically logs the processes used by users, including CPU or memory usage, and the number of times the application runs. To generate reports using the following data types, make sure that the collection of application usage data is activated.
- (0) Unix Pacct
- (32) Unix Application Usage
- (54) Extended-Pacct
- (87) Process Accounting
#Active vs Inactive
This report type provides an overview of application disable status and the events associated with applications monitored. To generate reports using the following data types, make sure that freezemonitor is activated.
- (62) License Optimizer Use
- (64) License Optimizer Events
- (70) License Optimizer Total Use
- (92) License Optimizer Actions
- (97) Olap Freeze Raw Hourly
- (98) License Optimizer Individual Usage
- (99) License Optimizer Usergroups
- (141) Freeze Feature Usage
#Work and Break
This report type shows the collected statistics regarding keyboard and mouse activities. You can also use this to assess the intensity of application usage which helps in determining whether the user actively uses the application or simply opens it and leaves it running. To generate reports using the following data types, make sure that the collection of application resource activity data is activated.
- (56) UsageAnalyzer Break
- (57) UsageAnalyzer Work
- (58) UsageAnalyzer Events
#Web App Tracking
This report type provides an overview of the historical usage of web applications based on web browser logs, plugin cache, and web proxy logs. To generate reports using the following data types, make sure that the collection of web browser log data is activated.
- (120) Web App Browser Log
- (121) Web App Proxy Log
- (122) Web App Browser Activity
- (123) Web App Total Use
#Real-time
The Analysis Server's License Monitor Portal displays all active and inactive user details based on the filter. To view this, make sure to set the Analysis Server Web Component configuration key Root.Level value to Level2.
#Pop-up
Level 2 starts the pop-up disabler when an application is inactive. To enable this, make sure to use alert as the value of the method
attribute, while configuring applications.
#Requirements
To fully access the benefits offered by Level 2, make sure to meet the following prerequisites:
- An Open iT Client that is connected to an Open iT Server and has LicenseOptimizer collection activated; or a coexistent Open iT setup
- Activated Process Accounting - this will generate Process Accounting reports
- Activated Application Resource Activity Data Collection - this will generate Work and Break reports
- Activated Freeze Monitor - this will generate Active vs Inactive reports
- Activated WebApp Tracker - this will generate Web App Tracker reports
#Configuring Level 2 Applications
You can update the cold_master.conf
file to specify applications and licenses to monitor their activity levels; this has four(4) different parts:
The following sections will guide you on the required configuration to specify the applications and further configure how you want them monitored.
#Configuring Applications
The applications section specifies the criteria for logging and alerting users. Here, the keyboard, mouse, cpu, and i/o threshold and weight values are defined. This is also where the executable(s), feature(s), and license server(s) are specified.
These are the required steps to list and configure applications to monitor.
In the Open iT server, open
cold_master.conf
in the Configuration directory, which is by default inC:\Program Files\OpeniT\Core\Configuration\
.Locate the line:
cold_master.confAdd a new application with attributes, following the format:
cold_master.conf
These are the Basic Application Attributes that you can use to configure each application.
#handle
This is a text string used to uniquely identify the application. The handle name is case-sensitive, and it is used in the priorities and rules sections of cold_master.conf
.
#method
This is used to specify the method for disabling the application. There are two possible values that you can use for Level 2:
log
- collect usage data, simply log. This can be used to determine the suitable values for the thresholds since it may be difficult to arrive in good threshold levels in the first attempt. Logging while experimenting with this can be helpful. If this method is used, then the application will not be affected by theirq
.alert
- informs the user of inactivity with a pop-up based on the set criteria. Here's a sample inactive alert.
#irq
This is used to specify the timespan in which the user is warned via the disabler interface of the application to be disabled. Specify its value to your desired timespan based on the ISO-8601 duration format PnDTnHnMn.nS.
#exe
Executable Name Identifier. This is used to specify the globbing pattern the executables need to match. If applicable, include the parameters and options when specifying the path for the optimizer to match the executable name corresponding to the process. The user can specify several executables with more than one exe
line.
Note that two (2) glob patterns of different handles must not match the same process since the match is performed on the whole command line.
#timeout
This is used to specify how long the process must be inactive before considering it for disabling. Change its value to your desired interval based on the ISO-8601 duration format PnDTnHnMn.nS.
When a process has been inactive for this much time, the user is notified that the process may be disabled or, if the irq is zero, it is disabled immediately.
#keyboard
The keyboard line has two parameters separated by at least one space. The first value is the keyboard activity threshold, in events per second. An event is either a key press or a key release. The second value is the weight associated with an activity.
#mouse
The mouse line has two parameters separated by at least one space. The first value is the mouse activity threshold, in mouse clicks per second. The second value is the weight associated with an activity below the threshold.
#cpu
The cpu line has two parameters separated by at least one space. The first value is the cpu load threshold, and the second is the weight associated with a load below the threshold. If the activity level measured is less than or equal to the threshold, the weight will contribute to the sum used to decide whether a process should be disabled.
#i/o
The i/o line has two parameters separated by at least one space. The first value is the i/o activity threshold, in bytes transferred per second. The second value is the weight associated with an activity below the threshold.
The summary of the examples used in the basic application attributes would look like this in the configuration file:
These are the Advanced Application Attributes that you can use in addition to the basic attributes to better configure the applications.
#feature (required for feature-level reporting)
Feature Name Identifier. This is used to specify the feature or product (i.e., <feature-name>\<version>
) to return the license when the application is disabled. Multiple features are allowed.
This is applicable to all license managers that create license status data.
#lmserver (required for feature-level reporting)
This is used to specify the license server(s). Identify the license server (or set) as lmserver=<port>@<host>
. If more than one server is in the set, list them as comma-separated. If there is more than one server set, put it in a separate line.
This is applicable to all license managers that create license status data.
In the example, there are two servers in the first set and one in the second set. Each server is specified as port@hostname
which needs to match the server listed in the lmstat
output.
#lm
License Manager Identifier. This is the type of license manager used by the application. The possible values are flex, lum, or lmx.
#multiple
If set to yes, all processes using the executables in the exe line(s) will be viewed as components of a single application. All processes must be inactive for the joined application to be considered inactive.
#match-children
If set to yes, all child processes will be handled together while optimizing the application.
#show-window-titles
If set to yes, the window titles of the optimized applications will be listed in the disabler pop-up. This will be automatically set to yes when match-children is enabled.
#combine-threshold
This combines the threshold values of the CPU and I/O for all instances of the applications to consider idleness.
average
- threshold values are averagedsum
- threshold values are summed up
#exclude
This is a globbing pattern used to specify excluded executables from the exe
list. You can include more than one exclude
lines.
#arch
Machine Architecture Identifier. This is used to specify the architecture in which the application handle should be valid. Globbing is allowed.
#os
Machine Operating System Identifier. This is used to specify the operating systems in which the application handle should be valid. Globbing is allowed.
#More Example of Applications Configurations
The following examples show applications configurations with advanced configurations.
#Configuring Global Threshold
The value to be compared with the threshold is the sum of the weights for the CPU and I/O. A weight is added if the activity of the corresponding measured entities is less than or equal to the threshold, as defined in the applications section in cold_master.conf
. If the sum of these weights is greater than or equal to the global threshold, then the process is considered idle and becomes a candidate for disabling. The default value of this threshold is 4.
These are the required steps to change the threshold value.
In the Open iT server, open
cold_master.conf
in the Configuration directory, which is by default inC:\Program Files\OpeniT\Core\Configuration\
.Locate the line:
cold_master.confConfigure the global disable threshold. Locate the line:
cold_master.confThe thresholds on CPU and I/O are the lower bound of the active levels. That is, if a value is 0.2, then any activity level equal to 0.2 or below will cause the weight to be added.
Save the changes.
#Configuring CPU Calculation
You can also specify how the CPU threshold will be calculated in the global section. By default, this will use the updated calculation, which considers the number of logical processors for both platforms and uses % utilization as the unit of measurement for the CPU threshold. The old calculation only considers the logical processors on Windows machines and uses CPU seconds per second as the unit of measurement.
Add the following in the global section:
This is, by default, set to yes in version 10 onwards.
#Configuring Priorities
This section specifies the prioritization of application usages based on the type of application, the host, the user, and the usergroup. Specific applications, users, usergroups, and hosts hold greater significance in terms of application usage compared to others. Some setups may require the uninterrupted availability of certain applications.
These are the required steps to elevate or lower application priority for hosts, users, and usergroups.
In the Open iT server, open
cold_master.conf
in the Configuration directory, which is by default inC:\Program Files\OpeniT\Core\Configuration\
.Locate the line:
cold_master.confStart the configuration in the table with the provided examples.
cold_master.confRefer to the Cold Configuration Column Properties table to learn the accepted values for configuring each application.
Cold Configuration Column PropertiesAdd new entries by either inserting a new line into the existing priority table or, if preferred, replace the existing entries with the applications you added.
Example: Configuring PrioritiesWhen an application matches on multiple lines, the priority is given to the first matching line from the bottom. Therefore, it's advisable to specify general priorities before specific ones.
The example means that the application Petrel is assigned with three priorities, but for different values for other parameters. This application will never be disabled if it is used by the Administrators group on the host gullvinge. For other groups on gullvinge, it has a limited timeout. For other hosts, it will be disabled after half the original timeout time.
Save the changes.
#Configuring Rules
The rules section determines when applications should be considered for disabling. Multiple rules can be created for each application. It is possible that more than one rule is valid for a particular application handle. In this case, the first rule that is valid will be used.
Each handle in the configuration file must have a defined rule. Handles that lack rules will be ignored.
These are the required steps to set various rules as optimization criteria for each application.
In the Open iT server, open
cold_master.conf
in the Configuration directory, which is by default inC:\Program Files\OpeniT\Core\Configuration\
.Locate the line:
cold_master.confStart the configuration in the table with the provided examples.
cold_master.confUse the following syntax for each entry:
Entry SyntaxWhere:
The<id>
is a unique number to identify the entry.The ID uniquely identifies each line and must be unique; duplicates will be ignored and logged as errors.
The
<handle_name>
is the application name identifier defined in the applications section.The
<rules>
are the conditions that define the behavior of the entry.Each rule should have the following syntax:
rule syntaxRefer to the Rule Keys and Rule Operators tables to create a rule.
Rule KeysWhile you can still use the
hour
andminute
keys, please note that these keys are slated for deprecation in version 11.When using the
time
key, make sure to use the+/-hh:mm
format, which works both with and without a timezone. If you don't specify a timezone, it will automatically default to your machine's local time zone.Z
(Zulu time) means UTC.Rule OperatorsThe
<value>
may be a single numerical value, a set of numbers, or a range. Single numerical values are given as is. Sets and ranges must be enclosed in square brackets[ ]
. The values of a set are separated by commas, and a range is indicated by a hyphen.Rules can be presented on the same line, separated by a plus sign (
+
), or displayed individually on multiple lines.If the rules are presented on a single line separated by
+
, the application must meet all of the conditions to be eligible for disabling.Single Line RulesThe example will be interpreted as: If
license-use
is greater than80%
AND if thecount
is greater than1
, the application may be considered for disabling.If the rules are presented on multiple lines, the application must fulfill at least one of the conditions to qualify for disabling.
Multiple Line RulesThis example will be interpreted as: If
license-use
is greater than80%
OR if thecount
is greater than1
, the application may be considered for disabling.It is advisable to put the lines for the same handle together to easily locate them while updating.
Add new entries by either inserting a new line into the existing rules table or, if preferred, replace the existing entries with the applications you added.
Example: Configuring RulesThe examples indicate that the application Petrel can be disabled under either of two conditions: when the number of processes exceeds two or when the license usage percentage surpasses 85%. OpenWorks can be disabled from Monday to Friday between 8:00 AM and 4:59 PM. RationalPurify will be terminated 10 minutes prior to midnight GMT. The Open iT Client can also be disabled if at least one instance is running.
Save the changes.
Here's an example of the cold_master.conf
file with all the sections configured: