Reading QlikView Server pgo Files and CAL Allocation Reporting
Reporting on both active CALs and CALs not in use/never used helps clients understand their session activity as a percentage of licenses available. In addition, it assists NAMs in gauging capacity and future licensing needs (when that information is made available).
- The Governance Dashboard reports CAL usage and sessions, specifically. It does not report licenses not in use. - http://market.qlik.com/qlikview-governance-dashboard.html
- The QVSCalManager is able to report on both allocation and usage. However, it does not contain any the operational detail found in the Governance Dashboard. -https://community.qlik.com/docs/DOC-5281
Retrofitting one of the apps above to combine it with the other would present a series of complexities and challenges. QVSCALManager is also not supported by Qlik as it was created by partner, Excelio.
This document details the process of using pgo files to read total license availability, which can then be easily incorporated in the Governance Dashboard. (GD currently does not yet include any session or usage CAL information.)
There is a setting that can be added to Settings.ini, which will force a copy of the pgo files to be created in xml. This allows pgo license data to be read in real-time and it works on QlikView 10 and 11.
- Stop QlikView Services
- Edit the QlikView Server’s Settings.ini file.
Locate Settings.ini C:\ProgramData\QlikTech\QlikViewServer and add the following entry under the [Settings 7] node: PgoAsXmlAlso=1
- Start Services. Load pgo.xml into QlikView.
Tables below describe relevant files and attributes.
Stores the QlikView Server (QVS) settings. Manual changes in this file require restart of QVS. This file is always stored in the “Data” folder (see Overview (page 53)).
The configuration information is stored in Persistent Global Objects (.pgo) files. The different .pgo files contain information on borrowed CALs, CALs in use, server settings, and ticket data.
Keeps track of borrowed Client Access Licenses (CALs).
Keeps track of CALs.
Coordinated version of Settings.ini.
Keeps track of statistics.
Keeps track of tickets.
Within CALData.pgo.xml, the following fields will provide license allotment and instance name:
IniData.pgo.xml stores Settings.ini entries as attributes of the fields below:
ServerCounters.pgo.xml provides rolling 2 day aggregate metrics on document loads and failures:
*No definition available
Linking CALData.pgo.xml to Governance Dashboard
In Governance Dashboard 1.1.1, the SessionTaskAuditMaster table contains session and audit details.
The Node_Name field in this table can be linked to ServerName in CALData.pgo.xml.
All license allocation can be reported in Governance Dashboard by adding an entry in Settings.ini and reading CALData.pgo.xml
Other Relevant Resources
- Settings.ini https://community.qlik.com/message/196178#196178
- PgoAsXmlAlso - I added the following function to the pgo xml load script example to convert time fields.
- Converting 64 bit Hex Time - https://community.qlik.com/docs/DOC-4388
- Various factors specific to each environment impact how PGOAsXMLAlso affects performance. These factors should be taken into consideration before using in a production environment.
- It also does not work in clustered environments.
- **Other options for CAL reporting include development with the QVS Management API. TicketData.pgo.xml can also provide real time ticketing information, but it was not designed for production enterprise implementations.