Current Performance and Availability of your Qlik Sense Site

  • is our production site LIVE?
  • how much RAM is available now?
  • which apps are “killing” the server?
  • is current version better?

Get notified, analyze performance trends, reveal patterns and compare benchmarks. Just ask for the app HERE.
This Qlik Sense app:

  • loads engine\healthcheck JSON data from multiple nodes
  • parses and consolidates it into two tables
  • stores them to QVDs with all previous snapshots
  • visualizes key metrics of engine utilization and availability in time

It’s recommended to deploy and schedule this app on DEV or TEST Qlik site, pointing to all production nodes. Otherwise, there will be no data loaded in case the production engine (or the whole server) crashes.
(Just FYI – DEV and TEST sites are included in the professional license subscription.)

It’s also recommended to read the official help site info about the engine API before you deploy this app.

After importing the app into a suitable site, follow these steps:
1. Decide on the target folder for result QVD files, where parsed snapshots of JSON data will be stored. Create a folder Data Connection (if it doesn’t already exist) and set its Lib name to vQVDpath variable in Settings script section.

2. Create a REST Data Connection to engine/healthcheck API for one node:
(There is no need to create a separate Data Connection for each node because this is handled by WITH CONNECTION feature in the script.)

URL: https://<server domain>/engine/healthcheck OR https://<node IP address>:4747/engine/healthcheck
(Try the URL first by running it from a browser on the site, which will perform the reload.)

Authentication Schema: Windows NTLM
User name & password: type root admin or service user credentials
check “Skip server certificate validation” if there is no valid certificate on the target node

Query headers:
User-Agent: Windows
Cache-Control: no-cache

3. Create a REST Data Connection(s) to QRS for information on apps
(Only one Data Connection is necessary per site. If the app runs on the same site it checks then you can use the standard “monitor_apps_REST_app” connection.)

URL: https://<server domain>/qrs/app/full

Authentication Schema: Windows NTLM
User name & password: type root admin or service user credentials
check “Skip server certificate validation” if there is no valid certificate on the target node

Trusted locations:
qrs-proxy: https://<server domain>:4244

Query parameters:
xrfkey: 0000000000000000

Query headers:
X-Qlik-XrfKey: 0000000000000000
User-Agent: Windows

4. Adjust the INLINE table in the Settings section of the script according to your site

node – name of the node that will be shown for app’s user
serverDomain – the name of the server node e.g.
ipAddress – IP address of the server node
useIP – type “1” if IP address should be used in URL of the REST request, else type “0”
RAM – the amount of node’s memory in GB
CPU – number of node’s logical processors
appInfoLib – the name of the Data Connection which will be used to fetch app information from QRS

5. Adjust variables for email notifications in the Settings section of the script according to your environment.  Also, make sure to uncomment the IF-CALL script in the Processing section (otherwise no emails will be sent).

vConnectorURL – URL to Qlik Web connectors e.g. http://localhost
vSMTPserver – your SMTP server name e.g.
vSMTPport – port for your SMTP server e.g. 25
vSSLmode – SSL mode for your SMTP server e.g. None
vNotificationSubject – subject for alert email e.g. Qlik Engine Alert
vNotificationTo – recipients email addresses separated by ‘;’
vNotificationFrom – sender email address e.g.

6. Schedule a reload task. The recommended app reload frequency is 5 minutes or less (tested reload duration on the 4-node site is 12 seconds). The script will return “N/A” in [isSaturated] field when the engine is not responding.

7. (optional) Adjust vDaysToAnalyze (number of loaded days, default is 90) and vArchiveAfterMonths (number of months after which all snapshots will be moved to archive QVD, default is 2) variables in the Settings section.

    Name and surname



    I consent to the processing of my personal data for the purposes of marketing activities by EMARK Group.
    For more information, including a specification of the EMARK Group and the scope of the specific marketing activities for which you consent, please see the Personal Data Protection and Privacy HERE.