Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Qlik Sense documentation and resources.
The Qlik Alerting September 2020 release includes a new Qlik Sense monitoring app that will allow you to better understand what is happening with your Qlik Alerting environment. This will enable you to see the load on the system, the average processing times, the reason why an alert may not have been sent to the recipient and other information.
We have added a few shortcuts for you to get the data connections setup appropriately. Please follow the steps below to get the monitoring app setup:
Setting up the Data Connectors in Qlik Sense.
This is a little detailed to setup manually so we have added a .bat file in the installer to push the connections using the correct attributes from your Qlik Alerting installation. You need to have completed the registration process if this is a new install of Qlik Alerting as this process will use the data source and Qlik Alerting config settings to create the data connectors.
Steps to follow:
Import and reload the Qlik Alerting Monitoring Qlik Sense application
Once the connections have been created you can now import the Qlik Sense application that can be found in the C:\Program Files\Qlik Alerting\setup\monitoring-connection folder.
Steps to follow:
Troubleshooting
If the reload does not work straight away here are a few things to check:
Optional: Steps to create the data connections manually
If you really cannot follow the simple steps above to create the data connections, for security reasons for example, you can follow the instructions below to create them manually.
Setup the monitor_alerting_login data connection
This request makes the authentication request to Qlik Alerting and is required to get the authenticated session token to run the monitor_alerting api connections to actually retrieve the data.
Enter the URL updating your <QA_Server> and <QA_https_port> values
https://<QA_Server>:<QA_https_port>/api/login
In the body section that appears enter the following details adding your user and password as you would use to login to the Qlik Alerting portal
{"user":"<your_QA_username>","password":"<your_QA_password>"}
In the query headers section enter
Name | Value |
content-type | application/json |
You are now setup to use this API to create a request to authenticate against Qlik Alerting. Follow the monitor_alerting setup below to see how this works.
Setup the monitor_alerting data connection
This request will be used to retrieve data from Qlik Alerting. We will be passing a different endpoint URL through this connection in the monitoring app script so we do not need to create a connection for each endpoint.
NOTE: this process is a little more complex as we will need the session token from running the monitor_alerting_login result to actually run this process. This is covered in the steps to help you through this.
edit the <QA_Server> and <QA_https_port> in the Let vURL variable
LIB CONNECT TO 'monitor_alerting_Login'; Let vURL = 'https://<QA_Server>:<QA_https_port>/api/login'; Connection: LOAD [token], [userId], [userName], [firstName], [isAdmin], [license], [expiresOn] ; SELECT "token", "userId", "userName", "firstName", "isAdmin", "license", "expiresOn" FROM JSON (wrap on) "root" WITH CONNECTION( Url "$(vURL)" ) ; // Set new variable values LET vAuth = Peek('token',0, 'Connection'); LET vUserId = Peek('userId',0,'Connection'); LET vUserName = Peek('userName',0,'Connection'); LET vAdmin = Peek('isAdmin',0,'Connection'); Trace >>>; Trace >>> Auth $(vAuth); Trace >>> User $(vUserId); Trace >>>; drop table Connection;
https://<QA_Server>:<QA_https_port>/api/groups/users
In the query headers section enter the following two
Name | Value |
authorization | <auth value copied from step 3> |
userid | <user value copied from step 3> |
You have now setup the two data connections and should be able to import and reload the Qlik Alerting Monitoring.qvf application as per the instructions above.
You can also find a copy of the QVF that was released with the September 2020 version attached to this document.
An advanced use of alerts which can notify you when something out of the ordinary has occurred can be setup applying the concept of a process control chart. For further information on process control charts see https://www.isixsigma.com/tools-templates/control-charts/a-guide-to-control-charts/
The concept of the process control chart is to monitor what is a normally a consistent measure (something that doesn't grow over time such as revenue). In this example I have used Gross Margin % which would logically be expected to sit within a certain, reasonably tight, range of values. The chart below shows a process control chart where the upper and lower bounds are set at 2 standard deviations from the mean. In a normally distributed dataset this would mean that 95% of the values would sit within these upper and lower bounds, if this was increased to 3 standard deviations would increase this to 99.7%.
The idea of this example is to set the alert so that every new datapoint added into this chart would be analysed based on dynamic calculation of the upper and lower bounds, and an alert triggered if we are outside of these bounds.
Check out this great video from Michael Fawcett on the Qlik help channel https://youtu.be/qSEOyXpVDxk for another example and/or follow the steps below.
When to use this approach
Setup your alert
The first thing to identify before you setup your alert is how you will identify the latest date with actuals, this can be problematic when you have budgets and forecasts so your calendar extends into the future. To do this you will either have the developer of the data model add a flag into the dataset that can be brought in as an additional measure in the alert e.g. TodayFlag = 1, or you can add it as a custom measure into the alert as we will in this example e.g. if(OrderDate=max(TOTAL OrderDate),1,0).
To create your alert, do the following:
An example trigger
On the next reload we get an anomaly when the Gross Margin % jumps to over 50% due to a cost allocation issue in our underlying source systems. This alert allows us to know immediately that something is incorrect so we can review the data lineage and address the issue straight away improving confidence in the data and ensuring that no erroneous decisions are made.
We all want smart alerts that tell us when something is unusual where the threshold of an anomaly is not something we have to set in stone when we setup the alerts. The below document explains how you can do this today with Qlik Alerting on Windows, a server side extension (and some experience with R or Python code) and a little bit of creativity with how you setup a measure.
What was used in this example:
In this example we show a seasonally adjusted forecasting algorithm (grey), Holt Winters, which is taking all of the data points from the time series and projecting the forecast which can be compared to actuals (black), and new actuals that come into the dataset.
To create an alert from this chart, do the following:
Points to consider when using advanced forecasting algorithms.
Additional Assets
This document is intended as an example to show how to setup MongoDB on an external Linux server for use with Qlik Alerting. This is intended as an alternative to installing MongoDB on the same machine as Qlik Alerting.
The reasons you may choose to do this are:
This document is based on:
If you already have an existing MongoDB cluster that you wish to use with Qlik Alerting then follow the later steps which cover the changes to the configuration in Qlik Alerting.
Step 1 - Provision a linux server and install MongoDB
Step 2 - Configure MongoDB to allow access from your Qlik Alerting server (only)
Step 3 - Setup a user in MongoDB for Qlik Alerting to use to securely access the Qlik Alerting database only.
db.createUser({ user: "mongo-root", pwd: "yourPassword", roles: [ { role: "root", db: "admin" } ] } )
Step 4 - Configure Qlik Alerting to use the external MongoDB database
NOTE: you can install Qlik Alerting without having the Mongo or Redis databases locally installed. You should not try the registration steps before resetting the connection to the external databases.
You should now be able to register (new install) or login (existing install) using this new external database.
Additional guides for information