Select to view content in your preferred language

Problem showing real-time data in a Dashboard

237
0
03-11-2026 08:44 AM
Labels (1)
MappyIan
Frequent Contributor

I have created a Dashboard that shows real-time occupancy across each floor of our Main Library and looks like this:

main library occupancy dashboard.png

 

The occupancy data is held in a hosted table in ArcGIS Online and is updated every minute by a process that uses the ArcGIS API.  The Dashboard is configured to display in a different colour if the data is more than 5 minutes old, a situation that should never arise.  However, despite modifying the various refresh settings the Dashboard does not usually display up to date data and usually appears like this:

main library occupancy dashboard unknown.png

 

Note that in the screen grab above it shows that the most recent data is 10 minutes old, which isn't the case as it is updated every minute.  I have verified the data is up to date by using the Query interface to the REST URL for the hosted table and I can retrieve data that is around 1 minute old.

I have followed the instructions regarding refresh intervals in the Dashboard (and associated items) as set out in this blog post by @JenniferAcunto, but I just can't get the Dashboard to display up to date information.  My specific setup is as follows (everything is in ArcGIS Online):

  • Table - the data in this is updated every minute, it only has 28 records each with just a few attributes.  Table is shared with a 'shared update group' to allow editing, because editing is enabled the 'Cache Control' setting on the table is set to zero seconds and greyed out.
  • View - read-only View of the above table that only exposes the attributes that we need to be visible in the Dashboard
  • Map - only contains the above View.  I had to create this in order to set the 'refresh interval' for the layer, as detailed in the above blog post.  The refresh interval of the View layer is set to 0.5 minutes (30 seconds).
  • Dashboard - the only data source for the Dashboard is the Map, this is done so that the Dashboard respects the refresh interval set on the View in the Map (as detailed in the above blog article).  The Dashboard uses Indicator elements with Advanced Formatting enabled.  The refresh interval for the Advanced Formatting scripts is set to 0.1 minutes (every 6 seconds) as the Dashboard uses the Now() function to display how long has elapsed since the data was last updated.

Even with all the various refresh interval settings described above, the data presented in the Dashboard should never be more than 2 minutes old, but more often than not it is showing data that is up to 30 minutes old.  I'm at a loss to know what to do.  From what I've read, displaying (near) real-time data in a Dashboard seems to be possible, but despite configuring everything as per the documentation I just can't get it to work.  It's like the data is being cached somewhere and the cache is only invalidated at random intervals (this blog post on caching by @PaulBarker says "These cached responses from the server are automatically invalidated as the data is edited. This ensures that clients using the layer always get the latest information.", but that doesn't seem to be the case here.

Any help/tips/pointers from anyone that has managed to get near real-time data to display in a Dashboard would be greatly appreciated.

0 Kudos
0 Replies