Getting Started with Qt Insight


Qt Insight is an analytics solution designed to provide real user insights on the usage of Qt application. It was created to shed light on an application’s performance, usage, and user data that may not be otherwise attainable.
Qt Insight service consists of Web console (dashboard), Qt Insight Tracker library and support for both designers and developers in Qt tooling.

Possibility to automatically collect user interaction events e.g. button clicks is integrated with Qt Design Studio and in addition application developer can access the Qt Insight APIs through Qt Insight Tracker library. Qt Insight Tracker Library is also responsible of transferring the usage data from the Qt application to the data backend and is shipped with the Qt application.

In addition to configuring Qt Insight from code, user can setup it completely in Qt Design Studio without writing a single line of code.

These instructions explain how to get started with Qt Insight either by using Qt Insight Tracker library from application code or from Qt Design Studio.

Qt Insight architecture

Licenses

With Commercial Qt License

You can get 60 days Qt Insight evaluation by logging in to Qt Insight Console.

Any commercial Qt license is applicable with Qt Insight and allows you to install Qt Insight Tracker Library with Qt installer. 
If you do not have a commercial Qt license, you may request an evaluation license at https://www.qt.io/download by clicking on “Try Qt Framework and Tools”.

With Open Source Qt License

Starting from Qt Insight 1.0 also open source Qt license will be supported with Qt Insight.

You can get 60 days Qt Insight evaluation by logging in to Qt Insight Console.

Qt Insight License Terms

Web Console

Navigate to the Qt Insight Console https://insight.qt.io and log in with your Qt Account and enter the name of your organization. You will become an administrator for the given organization. As an administrator you can add and invite other users to your organization.  

Before you can send Insight data from your application you should create the organization access token for your application. Click on your Organization name (at the top of the side menu) -> Organization management -> Tokens. This token needs to be then copied to the tracker library configuration.

For more information about using Qt Insight Console see the Help page in the Web Console.

Qt Insight for Developers

Installation

Availability

Qt 6.5-beta3 (available now)

Qt Insight Tracker library can be installed with Qt Installer by selecting Custom Installation -> Qt -> Qt 6.5.0-beta3 -> Additional Libraries -> Qt Insight Tracker

Qt 6.2.8 (coming in March 2023)

Qt 5.15.14 (coming in May 2023)

 

Installing Qt Insight Tracker Library with Qt Installer
  • Run the Qt installer for your platform

    On Linux you should give execution rights to the installer with 
chmod +x qt-unified-linux-x64-4.5.1-online.run
  • Select a suitable folder, where the Qt package will be installed. 
  • In the “Select components” view, pick up at least Qt for your toolchain and Qt Insight Tracker library.

Qt Insight installation

  • Click on the Next button to proceed with the installation.
  • Once the installation has completed you're ready to proceed and set up your application for Qt Insight.

Setting up your first application for Qt Insight

After the installation is finished, you will find two examples, coffee and quickcontrols showing how to use Tracker library in the insighttracker folder.

<Qt Installation folder>/Examples/Qt6.5.0/insighttracker
  • To send the Insight data from your Qt Application to the web storage, you will need to copy the access token that was created earlier in the Web Console to the example application's qtinsight.conf file.
  • Also you will need to set the server address in qtinsight.conf file "server": "https://collect-insight.qt.io"
  • That's all there is to track the clicked signals from the example application and you should now start seeing these events coming through to the Web Console

Building Qt Insight Tracker Library

  • Install Qt Insight Tracker library source code with Qt Installer Custom Installation -> Qt -> Qt 6.5.0-beta3 -> Sources
  • Qt Insight Tracker Library source codes can be found from 
<Qt Installation folder>/Qt6.5.0/Src/insighttracker

Advanced Qt Insight Usage

Detailed instructions and API documentation for Qt Insight Tracker Library are part of the Qt Insight Tracker documentation.

Qt Insight for Designers

Installation

Qt Design Studio is installed using the online installer. The online installer is available in the Qt Customer Portal under the Downloads section.

Qt Online installer

    • Download the installer for your platform and run it.
      On Linux you should give execution rights to the installer with 
chmod +x qt-enterprise-linux-x64-qtinsighttracker-6.4.1.run
  • Install Qt Design Studio 3.9.0 or later.
  • Qt Design Studio is located in the Developer and Designer Tools folder.
  • After installation, launch Qt Design Studio and create a new project.

  • You will need to enable Qt Insight separately with these steps:

    Load Qt Insight plugin from the Qt Design Studio menu: About Plugins -> Qt Quick -> Insight and restart Qt Design Studio
    Insight plugin enable
    Enable Qt Insight View from Qt Design Studio menu: View -> Views -> Qt Insight
     Insight view menu enable

Setting up your first application for Qt Insight

Tracking is configured using Qt Insight panel.

  • Enable tracking by setting Tracking toggle to Enabled.
  • Copy the token (64 alphanumeric characters) that was created in the Web Console earlier.
    Note that anyone having the token can send analytics data to the organisation's storage, so keep it safe.

Settings in QDS Insight panel

  • That's all there is to do in Qt Design Studio for tracking the clicked signals from your application.
  • Next open the project in Qt Creator, build & run it and you should start seeing these events coming through to the Web Console.
  • Consider this issue so you're required to manually add the missing reference to QtInsight library

Advanced Qt Insight Configuring

Send Cadence

By changing the Send Cadence you can set how often the data is sent from the application to the web storage.

Qt Design Studio Insight Send cadence

Categories

Qt Insight allows grouping UI components together which can then be used as filtering criteria in Web Console. This grouping is based on categories which we have two types, Predefined categories and user's defined Custom categories.

Predefined categories

In Qt Insight panel user can find Predefined Categories which is a list of default categories that make it easy to track certain components that are shipped with Qt. This makes it easy to track automatically interactive components like buttons, so that there's no need to enable tracking for each of the buttons separately. User cannot modify Predefined Categories but can enable and disable them.
Typical use case for Predefined Categories would be to collect all the button clicks from the application and pass them to web storage.

Custom Categories

Custom categories can be modified from Insight panel and they can be used with any UI components. For instance, it could be interesting to know, how the application settings controls are being used, especially if there are multiple views that allows manipulating settings. To make this simple it would be convenient to add same category for all the settings related components which could be called "Settings interactions". 

First new category should be added with "Add new Category"

Qt Design Studio Add new custom category

After adding the new Category user can attach it to some UI components by selecting the component from 2D editor and then setting the Category from Property Panel under Analytics section.

Qt Design Studio set category