0 Replies Latest reply: Dec 18, 2015 1:04 AM by Michael Reese RSS

    Reading pgo files

    Michael Reese

      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 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.

      1. Stop QlikView Services
      2. 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
      3. Start Services. Load pgo.xml into QlikView.

      PGO Details

      Tables below describe relevant files and attributes.



      1. Settings.ini

      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.



      1. BorrowedCalData.pgo

      Keeps track of borrowed Client Access Licenses (CALs).

      1. CalData.pgo

      Keeps track of CALs.

      1. IniData.pgo

      Coordinated version of Settings.ini.

      1. ServerCounters.pgo

      Keeps track of statistics.

      1. TicketData.pgo*

      Keeps track of tickets.


      Within CALData.pgo.xml, the following fields will provide license allotment and instance name:

        1. ServerName
        2. LefCalInfo/NoOfNamedCals
        3. NoOfDocumentCals
        4. NoOfSessionCals
        5. NoOfUsageCals

      IniData.pgo.xml stores Settings.ini entries as attributes of the fields below:

        1. Name
        2. Value

      ServerCounters.pgo.xml provides rolling 2 day aggregate metrics on document loads and failures:

        1. CounterDate
        2. CounterDocLoadFailsSinceMidnight
        3. CounterDocLoadFailsYesterday
        4. CounterDocLoadsSinceMidnight
        5. CounterDocLoadsYesterday
        6. CounterSessionStartsSinceMidnight
        7. CounterSessionStartsYesterday

      *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

      1. Settings.ini https://community.qlik.com/message/196178#196178
      2. PgoAsXmlAlso - I added the following function to the pgo xml load script example to convert time fields.

      Performance Disclaimer

      1. Various factors specific to each environment impact how PGOAsXMLAlso affects performance.  These factors should be taken into consideration before using in a production environment.
      2. It also does not work in clustered environments.
      3. **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.