What is Topic?

A topic is defined as a unique interaction with the server such as a subscription to a data point, an executed query, a command like a set value, or a piece of data received using REST API. For example, a page with 3 gauges showing one unique value per gauge, a chart displaying two trends, and a graphic of a fan displaying and allowing control of fan status, would equate to 7 topics.

Topics Actual – topics that you have used against your allocated amount.

Topics Preview – how many topics a particular page is using. Could be reset (Right-click –> Reset).

Topics Licensed – Allocated number of topics with the current license.

Topics Actual and Topics Preview counts are displayed in the Metrics Panel (Data tabSysdglicense)

Topics Explained

A topic is a subscription to a data feed with a unique path used at run-time in DGLux UI & Dataflow. There are no other restrictions, you get unlimited users, projects, widgets etc. You only pay for the data being used in DGLux5. Unique topics only count once and can be used in multiple components without incrementing the count.

Items below can be count as a topic:

  • Real-time value;
  • Historical value (trended data);
  • Query;
  • Command/control action to override a value;
  • 1KB of data received using REST API and String Loader block.

Examples:

  • Single unique value bound to a gauge, a text component and being used in a dataflow logic counts as 1 topic.
  • Every 1KB of data throughput per hour using String Loader counts as 1 topic.

Additional Details

Topics count gets reset every month to ensure that the current topics count is accurate. If a user creates a page and chooses to remove it later those topics are released.

Topics count can be manually reset by restarting the DSA server.

Changing numeric values in a query doesn’t count. For example, when a user is pulling up a trend and has the functionality to select any date range in the query. This doesn’t count as a unique change.

If topics count is exceeded, the user is not locked out of the application, instead, a watermark stating that the installation is unlicensed appears at run-time.

The number of topics doesn't increase when more users access a page. It’s only counting unique data connections.

Topics preview counts topics in the design mode. Since expanding the data tree and looking at metrics in design mode is technically interacting with the server that count could be misleading because it grows simply because you’re browsing the data tree.

FAQ

Troubleshooting the topics exceeded issue

  1. Topics count exceeded your allocated amount. Solution: request extra topics.
  2. Topics count didn't exceed and you're still facing the issue.
    1. There was an issue counting topics when working with local files in the old version of DSA and DGLux5. Update the DSA and DGLux5 versions Update DGLux5.
    2. If DSA and DGLux5 versions are up to date, restart the server (right-click sysRestart Server).

Reasons for topics exceeded issue

Previously any web service calls using the String Loader dataflow block were unrestricted. This could allow one to pull in massive amounts of data through API and violate the licensing mechanism. To prevent this we added volume counter to the String Loader.

How to monitor the data throughput

The diagnostic tool has been integrated starting from the build v8369 to verify topics count.

To turn on the logs:

  1. Load a page to track, open browser console.
  2. Type in or copy JS command and press enter window.sessionStorage['dgTraceStringLoaderTopics'] = "1".
  3. Reload the page.

After reloading the page DGLux logs topics messages to the browser console in the following format:

TOPICS CALLBACK: strLoader PA/core/assist/lib/helptips.json 1828 false 2

Log details:

  • TOPICS CALLBACK - id
  • strLoader - block type
  • PA/core/assist/lib/helptips.json - path
  • 1828 - bytes loaded
  • false - if this traffic accepted by topic counter
  • 2 - topic counter value