Summary: this page explains how to reload the dashboard cache to display the most up-to-date snapshot data.

Introduction

The CAST dashboards feature a data cache to improve the speed at which data is displayed. This means that when requesting data, the dashboard may return data direct from the cache rather than fetching it from the Measurement or Dashboard Service. In turn, this means that data displayed in the dashboard may not be up-to-date. This is particularly true in the following situations:

  • if you have very recently generated a snapshot and were expecting to see this new data
  • if you have run a manual consolidation with GUI/CLI admin tools
  • if you have deleted an existing snapshot

To see the new data, you can manually force the cache to reload data from the Measurement or Dashboard Service, rather than waiting for it to do so automatically.

Note that you must login with a user that has the ADMIN role in order to action this task.

Via the RestAPI interface

Browse to the following URL replacing server/port/dashboard with the details of your environment:

ZIP/JAR ≥ 2.x
http://<server>:<port>/static/default.html

WAR
http://<server>:<port>/<dashboard>/static/default.html

If you are already logged in, click the Test button to ensure you have an active session:

You will get a response as follows:

Logged inNot logged in

If you are "logged in" you can proceed as below, otherwise, enter your user name and password and then click Login:

Once logged in, expand the Help section, you may click any of the following buttons: 

  • Sync clients with new snapshots - Refresh of the server memory cache in the background with no interruption for Health Dashboard clients, and reduced interruption for Engineering Dashboard clients
  • Sync clients with new domains - Reload the domain properties configuration file and refresh the server memory cache
  • Sync clients after a license key change, or snapshot reconsolidation Reloads the license.key file, the license.xml file (used for authorization definition when using a restricted license.key) and invalidates the browser cache.

The cache will then be reloaded with the most up-to-date data from the Dashboard or Measurement schemas.

The Reload server memory cache option (available in ≤ 1.23) has been replaced with the following options/buttons:

  • Sync clients with new snapshots
  • Sync clients with new domains
  • Sync clients after a license key change, or snapshot reconsolidation

Via a command line for automation

You can also reload the cache via a command line - this enables you to automate the process if you are using CAST's command line interface to automate an analysis, snapshot generation and upload of data to the Measurement Service. You can use a tool such as cURL to do so, for example, replacing "server:[port]/<dashboard>" with the details of your environment. Choose the appropriate option as shown below:

ZIP/JAR ≥ 2.x
curl http://server:[port]/rest/server/refresh -u admin:cast -H "Accept: application/json"
curl http://server:[port]/rest/server/reload -u admin:cast -H "Accept: application/json" 
curl http://server:[port]/rest/server/reset -u admin:cast -H "Accept: application/json"

WAR
curl http://server:[port]/<dashboard>/rest/server/refresh -u admin:cast -H "Accept: application/json"
curl http://server:[port]/<dashboard>/rest/server/reload -u admin:cast -H "Accept: application/json" 
curl http://server:[port]/<dashboard>/rest/server/reset -u admin:cast -H "Accept: application/json"

You can also specify a domain using the command line, for example, replace <domain> with the name of the domain you wish to target (the domain name is available in the domains.properties file):

ZIP/JAR ≥ 2.x

curl http://server:[port]/rest/server/refresh?domain=<domain> -u admin:cast -H "Accept: application/json"

WAR

curl http://server:[port]/<dashboard>/rest/server/refresh?domain=<domain> -u admin:cast -H "Accept: application/json"

Actions using command line 

Below table details the actions that you can perform using command line.

Do not use the command lines exactly as shown below, you will need to replace <domain> with the name of the domain you wish to target (the domain name is available in the domains.properties file):


Use Case

Action

User Impact 

Add a new DataSource

I.e. updating context.xml / application.properties / domain.properties and restarting the web application.

If users are online, they will be interrupted.

Make a new application available in Engineering Dashboard (reload action).

ZIP/JAR ≥ 2.x:

http://server/:[port]/rest/server/reload?domain=<domain>

WAR:

http://server/:[port]/<dashboard>/rest/server/reload?domain=<domain>

If users are online, they will be interrupted with a logout popup window.

Make a new application/snapshot available in Health Dashboard (refresh action).

Make a new snapshot available in Engineering Dashboard (refresh action).

Note that the <domain> will usually be "AAD" for a Health Dashboard, but if in doubt please check the domains.properties file).

ZIP/JAR ≥ 2.x:

http://server/:[port]/rest/server/refresh?domain=<domain>

WAR:

http://server/:[port]/<dashboard>/rest/server/refresh?domain=<domain>

No interruption for online users

Apply new license key, change license.xml file (used for authorization definition when using a restricted license.key) or reconsolidate a snapshot for Engineering Dashboard (reset action).

ZIP/JAR ≥ 2.x:

http://server/:[port]/rest/server/reset

WAR:

http://server/:[port]/<dashboard>/rest/server/reset


No interruption for online users

Using an API Key

In ≥ 1.11.0 of the CAST Dashboard Package, an API Key feature has been introduced to allow connection without using standard login/password credentials or when SAML authentication is in operation. You can therefore use the API Key with curl as follows:

  • X-API-KEY: the API Key matching the key defined in the security.properties file
  • X-API-USER: a defined user name to obtain a CAST dashboard/RestAPI role and data authorization
ZIP/JAR ≥ 2.x
curl https://localhost:8080/rest/server/reload -H "X-API-KEY: <some_key> -H" "X-API-USER: admin"

WAR
curl https://localhost:8080/<dashboard>/rest/server/reload -H "X-API-KEY: <some_key> -H" "X-API-USER: admin"
If you are using ≤ 1.10.0 the API Key is not available, therefore then it is not possible to use the curl command line as described above. Some additional steps may be required (this third-party documentation may provide some hints about how to do this with a simple username/password, however, this is beyond the scope of CAST documentation).

What to Expect 

When refresh service is executed 

The server cache is refreshed when a new snapshot is taken or when a new application is added to the existing Dashboard/Measure schema. The following user notification is displayed to users when a new application is added:

The following user notification is displayed when a new snapshot is taken:

When reload service is executed

The server reloads from cache when a new application is added to central base (Engineering Dashboard), and blocks user activity until the server is reloaded. The following pop-up message is displayed to users:

When reset service is executed 

The web service reloads the license.key file, the license.xml file (used for authorization definition when using a restricted license.key) and invalidates the browser cache.  The following pop-up message is displayed to users: