February 2023 Dashboard Release Notes

February 2023

Release Name - pi.2023_02_23

Release Date - Feb 23, 2023


We are pleased to present our latest offering of pi - our February 2023 release! This page helps summarise what we have Added, Changed, or Fixed so that you can quickly consider if you wish to upgrade to the latest release.

Before upgrading, we always recommend that you review ALL release notes, from the version you are considering upgrading from and to - this is essential should there be a material change that could impact you or your customers.

We always recommend that before attempting an upgrade, you backup your repository. This could allow you to quickly roll back should you have the wish to. You can find more information on that here.

 

Here’s what’s included in the release;


Added

Ability to set Favicons and Apple Touch icons within Themes

pi#1498

23226, 23462 & 23464

Themes

Two new fields have been added to allow further customisation of Themes.

Within the 'Configuration’ panel of each Theme, the “Favicon” and “Apple Touch Icon” options allow you to set theme specific icons to files within a theme's “img” directory or to applicable and accessible URL links.

Should these options remain blank/empty, or the icon specified is unable to be used for some reason, the default icons in the ‘pi-internal’ image directory ( tomcat/webapps/pi/css/pi-internal-theme/img) will be used.

The icons dynamically update based upon the currently active theme, and local changes to these options will be reflected upon refreshing the page. Prior to logging in, the icons will be set to those associated with the ‘Default’ theme i.e. the one set under the “Global Variables” settings panel.

 

The image above shows the new settings within the Theme’s Configuration panel and demonstrates the dynamic updating of the favicon (the edited theme is the currently active one)

 

 

Successful and Unsuccessful Login attempts added to mis_audit table

pi#5737

9305

Audits

A new audit type of “Failed User Login“ has been added to the mis_audits table to log any unsuccessful attempts to log into the dashboard. “Failed User Login“ will also include a usercode, if appropriate, together with the relevant error message.

A new column “Detail Info“ has also been added to the mis_audits table, which when used for the login information, will include the type of the login which was used during both successful and unsuccessful logins. The types included:

  • 'User Login Using OIDC'

  • 'User Login Using JWT'

  • 'User Login Using SAML'

  • 'User Login With Username And Password'

  • 'User Login Using API'

 

The example below shows how this appears in the mis_audits table - click on the image to increase the resolution

 

 

Category ID added to mis_audits table

pi#1499

23762

Audits

A new column “Detail Info” has been added to mis_audits table and when used with the charts audit, this will record the ID of the Category that the chart was refreshed in. For example, if the chart was originally created in category 19 but then also added to category 23, both categories IDs will be logged in to mis_audits table under “Detail Info“ column.

Please see the example:

In the example above the Description column shows our example called Chart 151, this is just the name of the Chart we used, it will contnue to display whatever name you applied to your charts.

The example above shows that Chart 151 was originally created in Category 19 but it was later added to Category 23

 

 

New API endpoints added, enabling bulk requests for User Variables, User Restrictions, Role Variables & Role Restrictions

pi#1496

22605

API

The system now provides API endpoints to bulk create and delete

  • User Variables

  • User Restrictions

  • Role Variables

  • Role Restrictions

Utilising these endpoints means that multiple (e.g. User Restrictions) can be created or deleted at the same time by making one API request, which will significantly improve performance where such activity is needed.

We continue to maintain all of our API documentation through our SwaggerHub API page.

 

Ability to specify a Role when using the Snowflake Data Connector

pi#1198

20898

Data Connections

A new field has been added to the Snowflake data connection configuration page (see below) that allows you to specify which role you would like to make the connection using.

 

Help Text for Categories, available through the API and Category Configuration screen

pi#1503

22947

API / Category Configuration

It is now possible to hold Help Text information against a specific Categories, which can be viewed through the Category Configuration screen. The Help Text can be set by using the API or by manually typing this information into the Help Text field within the Category Configuration screen (shown below).

This allows user to provide further information about the contents of the category when accessing them through the API.

 

 

 

 

Controls for blank credential fields when using Free Format JDBC connections

pi#1505

23753 & 20617

Data Connections

Free Format data connections now display a new checkbox labelled “Supply Credential if Blank“. If checked (set to true), the user name and password will be set as part of the data connection - even if their input fields have been left blank.

When unchecked (set to false), the user name and or password will not be set as part of the data connection if their respective field has been left blank.

 

 

Ability to edit X, Y and Y2 axis labels on Merged Charts

pi#625

17879 & 24218

Merged Charts

Added the ability to edit the labels of the x, y and y2 axis for merged charts as you can with every other type of cartesian chart.

 


Changed

Increased the default value for Tomcat Maximum Data Connections

pi#1446

23138

Configuration Tool & Environment Variables

The default value for the Maximum Database Connection setting for Tomcat has been increased to 150. This is in response to customers having issues with the dashboard performance being impacted when making large numbers of concurrent connections to the database.

It is recommended that all customers increase this number in line with the new default value as a minimum.

This can be done through the configuration tool GUI altering the dashboard.json file in the dashboard directory or setting the value through the relevant environment variable (PI_TOMCAT_MAX_TOTAL_DB_CONNECTIONS).

The setting can be found in the advanced section of the Tomcat settings for the dashboard (see pictures below).

 

Setting through the GUI:

Setting in the dashboard.json:

 

 

Data Connection Start and End Object codes default to double quotation marks - Snowflake Connector

pi#1075

19873 & 21614

Data Connections

Both the “Object Start Quote” and “Object End Quote” fields for Snowflake data connections will now default to a double quotation mark.

 

Rework OpenID Connect variables to a simpler format

pi#2153

 

Authentication

 To simplify setup and maintenance we’ve removed some unnecessary elements from the OpenID Connect setup process. Base URL and Provider values are now gone and if you were using these your data will be migrated automatically to the new format.


Fixed

Database connection locking when multiple dashboard instances share the same database

pi#1500

23749

Load Balancing

Adjustments made to ensure database connections are closed properly, so that they don’t prevent SQL queries made outside of the same application.

 

Using angle brackets i.e. <text> in Alternative Column Title caused a data table to spin continuously

pi#1501

23915

Table Attributes

Previously, when entering text with angle brackets i.e. ‘<text>' into an Alternative Column Title on a table, this caused the table to not load and spin continuously. This has been corrected to convert it to null and leaves the Alternative Column Title blank if it contains '<text>’.