Mango v5 Highlights

May 19th, 2023


With the release of version 5 comes many exciting changes to the Mango platform! For a full list of the commerical features please visit www.radixiot.com/mango5 -- However on a more technical level the following offers a detailed view of the features (big and small)!

Pi-Portfolio Manager (EMS Module)

The new Pi-Portfolio Manager (Sometimes refered to also as the EMS module) is a huge leap forward to help System Integrators bring online lots of locations and create customized dashboards without any coding. All the setup is done via the configuration UI pages.

This feature helps users to standardize the data hierarchy to simplify the way the data is filtered and organized. The data will be classified by Site, Device Type, and Device IDs which are the main tags that need to be configured in the data points to allow this module to show accurate data.

The Portfolio Manager UI pages are intended to organize the data in three levels, first level is the Global Overview, which is intended to show high-level information about an entire portfolio of sites that we might monitor in a system like Mango 5. The next level is the Site Overview which is used to show information filtered by site or location, and the third level is the Device Details, which will show data related to a specific device depending on the device type.

Configuring a Mango 5 instance to use EMS can be divided into two main tasks, the first is configuring data points, and the second one is configuring the UI. Both activities can be done in parallel, but both need to be planned to work together.

PostgreSQL Support

PostgreSQL version 14.x and 15.x are now supported by Mango, you can enable it via your mango.properties configuration file (db.type=postgres).

See Database Conversions for instructions on migrating your MySQL or H2 database to Postgres. In particular, please note that your should upgrade to Mango 5.0, then convert your database to Postgres.

Additionally the methodolgy of how data is stored has been completely re-thought allowing for 100x faster processing of querys in traditional BMS and SCADA solutions; while making long-term storage significantly smaller.

Workflow-based Configuration (Pi-Flow)

Mango 5.0 features a new look and feel with a redesigned menu, a new color scheme, and updated fonts. The new menu is compact, leaving more space for your pages. Menu items contain submenus that appear when clicking the menu items.

new look 1

new look 2

Furthermore, the Administration menu has been broken up into separate categories to make finding the various screens and functions more intuitive. The new categories are as follows:

  • Administration

    • Admin Home

    • System Settings

    • Cloud Connect

    • Modules

  • Data Integration

    • Data Sources

    • Bulk Data Point Edit

    • Global Scripts

    • Publishers

    • Configuration Import / Export

    • Client List

  • Access Management

    • Users

    • System Permissions

    • Password Settings

  • Analytics

    • Watch List Builder

    • Watch Lists

    • Data Point Details

    • Excel Reports

  • Platform Management

    • Edit Menu

    • Dashboard Designer

    • Edit Pages

    • JSON Store

    • UI Settings

    • File Stores

  • Event Management

    • Event Handlers

    • Mailing Lists

    • Maintenance Events

    • Advanced Scheduler

In addition, the Help documentation has been moved under a new heading: “Help”

  • Help

    • Online Help Docs

    • Context Help

    • API Docs

    • Mango Examples

    • Help Forum

Finally, the Account Options links have been moved from their old position beneath the logo to a user icon on the top menu bar. Options are available upon clicking the user icon.

Account Optoins

HTTPS Enabled by Default

Mango 5.0 now ships with HTTPS enabled by default (ssl.on=true) on TCP port 8443. HTTP is still available on TCP port 8080 but will redirect users to your HTTPS URL.

If no TLS/SSL certificate is configured, Mango will automatically generate a key pair and certificate. This automatically generated certificate will not be recognized by your browser as being a valid certificate, so you should configure ssl.keystore.location to use a certificate signed by a recognized CA (Certificate Authority) e.g. LetsEncrypt or DigiCert.

The very first time you run Mango you may see a screen like this in your browser, pressing reload will allow you to continue.

error

If you are using the automatically generated certificate from Mango you will have to bypass your browser’s security warning to continue to Mango.

not private

New Versioning System

We have changed how versioning works with Mango 5. Going forward, everything will be released in blocks. For example, version 5.0.0 is out now. Any changes we make a change to the watchlist module, we will release every module and the core as 5.0.1

Mango PKI Services

Mango now has built in support for generating SSL/TLS certificates, these certificates can be used for gRPC servers and clients, and also the Jetty web server.

Please see the Mango built in help for more details.

Note: These certificates are not trusted by your browser, operating system or Java by default (see the above section about HTTPS).

PKI Services

Step CA Integration

Mango 5.0 has built in support for integrating with Step CA. Step CA is Certificate Authority and PKI (Public Key Infrastructure) tool used for managing SSL/TLS certificates within your organization.

See the Mango built in help, and the following page for more details: Certificate management for gRPC/HTTPS using step-ca

update cert

gRPC Publisher and Data Source (Pi-Link)

There is a new gRPC publisher and data source for Mango which are intended to replace the Persistent TCP (PTCP) publisher and data source. You can reconfigure your existing PTCP publisher and data source at the flick of a switch.

gRPC

See the Mango built in help pages for more details on configuring the gRPC publisher and data source.

Features and Improvements

  • Open gRPC protocol with messages and services defined via Protocol Buffers

  • Only one TCP port needs to be opened/exposed for all your gRPC data sources

  • Data point events can now be transmitted from the publisher to the data source

  • Publisher stores all point values and events in a persistent on-disk queue

    • Minimizes the need for history synchronization due to increased guarantees that your data has been transmitted to the data source
  • gRPC data source writes to the time-series database are synchronous by default and will not be held in memory in the batch-write-behind queue

  • Uses industry standard Transport Layer Security (TLS) for privacy and encryption of data

  • Uses TLS client certificates (mutual TLS / mTLS) to authenticate publishers

  • Additional permission synchronization modes for data points

  • Easily see a list of gRPC publishers which are connected to your data source

    • Can display the Mango GUID, instance description, publisher name and XID for each connected publisher

publishers

Rest API Changes

CSV Toolbox

Mango now has the ability to import and export different types of data on the CVS import/export tool in the Data Sources and Bulk Data Import screens. Now you will have the options on a dropdown to retrieve/modify Data Points, Event Detectors, and both (Data Points and Related Data).

data points menu If you are not using the UI you can use the following new endpoints:

  • /data-points/query/extended:

    • GET and POST to get extended data points csv
  • /data-points/bulk/extended:

    • Bulk edit extended data points csv and json
  • /data-points/bulk/extended/:

    • Methods to delete, update or get bulk operation
  • /event-detectors/query-data-point-rql:

    • Get event detectors csv using RQL against data points including tags and data source fields
  • /watch-lists//data-points/extended:

    • Get extended data points csv for a watchlist
  • /published-points/query-data-point-rql:

    • Get published points csv using RQL against data points including tags and data source fields
  • /published-points/bulk:

    • Bulk editing published points csv

Limitations

For the watchlist endpoints, you can only retrieve Data Points and Related Data from STATIC watchlists

Health Checks

There is a health-check.jar file available in the boot directory of your Mango 5.0 installation. This application can be used to check if Mango is up and running (healthy). Our supplied Docker image uses this application to provide a health status to Docker.

  • The application returns an exit code/exit status of 0 when healthy or 1 when unhealthy

  • Available arguments are:

    • --ignore-server-certificate=false

    • --url=

    • --connect-timeout=PT30S

    • --follow-redirects=NORMAL

Important Information about Future Upgrades

Beginning in version 5 we have introduced new unified versioning. Everything is now being released in blocks. Hence any updates (regardless of if they are in the core or a module) will be released in tandem as a new version. For example should the watchlist module receive a minor update, a new bundle would be released of the module and core as 5.0.1.

Copyright © 2024 Radix IoT, LLC.