Skip to main content
Version: 8.1

Diagnostics - Metrics Dashboard

New in 8.1.13

The Metrics Dashboard allows users to visualize a variety of metrics on their own customizable dashboards. Users may browse and search for any registered metric and add it to a dashboard, expanding the diagnostic capabilities available on the Status page. With the addition of this dashboard, developers can contribute diagnostics to the Status page without any additional UI design.

Diagnostics - Metrics Dashboard

User Interface​

User Interface

AttributeDescription
Add MetricSelect from a list of available metrics to drag and drop onto the dashboard grid.
Grid SizeControl the number of rows and columns on the grid.
ResetClear all metrics tiles from the current dashboard.
Dashboard DropdownSwitch between saved dashboards.
Save Dashboard DropdownSave changes, rename a saved dashboard, or delete the current dashboard.

Types of Metrics​

Gauge​

Gauges can be any kind of instant-read measurement, such as the number of megabytes of memory consumed, the count of faulted database connections, or the length of a pending task queue. Gauges are used to display a dynamic number.

Gauge

PropertyDescription
valueA numeric value.

X/Y​

An X/Y metric is a pair of gauges that can be interpreted as a ratio. This is an instant-read gauge on a value that has a maximum, such as heap size or a fixed-size thread pool.

XY

PropertyDescription
valueA numeric value.
maxThe maximum value.

Meter​

A meter measures the rate at which something occurs, such as the number of messages sent per second. Users can select the units as well as which of the moving average rates to display.

Meter

PropertyDescription
countThe number of events seen.
meanRateThe mean rate, overall.
oneMinuteRateThe one-minute moving average rate.
fiveMinuteRateThe five-minute moving average rate.
fifteenMinuteRateThe fifteen-minute moving average rate.

Histogram​

A histogram measures the statistical distribution of values in a stream of data. Hovering over a quantile reveals the value at that quantile.

Histogram

PropertyDescription
countThe number of values or events seen.
minThe minimum value (in milliseconds).
maxThe maximum value (in milliseconds).
meanThe mean value (in milliseconds).
stdDevThe standard deviation (in milliseconds).
medianThe median value (in milliseconds).

Timer​

A timer is used to understand both the frequency of and duration of events. It is a combination of a meter (rate of occurrence) and a histogram (distribution of duration). A timer combines the functions and properties of both a meter and a histogram.

Timer

Available Metrics​

The table below includes all metrics currently available to view on the Metrics Dashboard. New metrics may be made available with the development of new systems, modules, and features.

Metric - authTokenRecords​

New in 8.1.37
There are authTokenRecords for both the Client and Designer.

Metric - changeEventDistributionOperationAccumulator​

MetricDescriptionSizeType
batchProcessDurationThe amount of time that the ChangeEventDistributionOperationAccumulator takes to process a batch.4x2Timer
changeEventDistributions
  • batchSize - Number of ChangeEvent Distributions in the ChangeEventDistributionOperationAccumulator batch.
    • Size: 1x1
    • Type: Gauge
  • dispatchedThroughput - The throughput of ChangeEvent Distributions dispatched to the Execution task for batch processing.
    • Size: 2x2
    • Type: Meter
  • queuedThroughput - The throughput of ChangeEvent Distributions added to the batch.
    • Size: 2x2
    • Type: Meter
------
changeEventListenersMutations
  • batchSize - Number of ChangeEvent Listener Mutations in the batch.
    • Size: 1x1
    • Type: Gauge
  • dispatchedThroughput - The throughput of ChangeEvent Listener Mutations dispatched to the Execution task for batch processing.
    • Size: 2x2
    • Type: Meter
  • queuedThroughput - The throughput of ChangeEvent Listener Mutations added to the batch.
    • Size: 2x2
    • Type: Meter
------

Metric - changeEventListeners.count​

The number of ChangeEvent Listeners registered with the system.

  • Size: 1x1
  • Type: Gauge

Metric - changeEventPersistenceOperationAccumulator​

MetricDescriptionSizeType
batchProcessDurationThe amount of time that the ChangeEventPersistenceOperationAccumulator takes to process a batch.4x2Timer
batchSizeThe number of ChangeEvent Contexts in the ChangeEventPersistenceOperationAccumulator batch.1x1Gauge
dispatchedThroughputThe throughput of ChangeEvent Contexts dispatched to the Execution task for batch processing.2x2Meter
queuedThroughputThe throughput of ChangeEvent Contexts added to the batch.2x2Meter
synchronizerDurationThe amount of time that the File Synchronizer takes to synchronize files with memory.4x2Timer

Metric - maintenance​

MetricDescriptionSizeType
cleaner.durationThe amount of time that the Cleaner takes.2x4Timer
pruner.durationThe amount of time that the Pruner takes.2x4Timer
reaper.durationThe amount of time that the Reaper takes.2x4Timer

Metric - records.count​

The number of AuthTokenRecords in the system.

  • Size: 1x1
  • Type: Gauge

Metric - touchEventAccumulator​

Using the metrics below, you can identify that a system is processing the incoming volume of touch events efficiently if the dispatchedThroughput keeps up with the queuedThroughput minus the collisionThroughput.

MetricDescriptionSizeType
batchProcessDurationThe amount of time that the TouchEventAccumulator takes to process a batch.4x2Timer
batchSizeThe number of touch events in the TouchEventAccumulator batch.1x1Gauge
collisionThroughputThe throughput of touch events added to the batch resulting in a collision.2x2Meter
dispatchedThroughputThe throughput of touch events dispatched to the Execution task for batch processing.2x2Meter
queuedThroughputThe throughput of touch events added to the batch.2x2Meter

Metric - ClockDriftDetector​

MetricDescriptionSizeType
driftGaugeThe most recent clock drift, in milliseconds.1x1Gauge
driftTimerA timer that tracks the distribution of the duration of clock drifts.4x2Timer

Metric - databases​

MetricDescriptionSizeType
connection-{dbName}Each connected database will have the following associated metrics:
  • active-connections - Count of active connections.
    • Size: 1x1
    • Type: Gauge
  • queries - Measures the rate and distribution of query execution.
    • Size: 4x2
    • Type: Timer
  • rows - Measures how many rows the queries being executed against the given database connection are returning.
    • Size: 2x2
    • Type: Meter
  • throughput - Throughput of queries per second.
    • Size: 1x1
    • Type: Gauge
------
queriesMeasures the rate and distribution of query execution on all database connections.4x2Timer

Metric - gateway-network​

New in 8.1.37

MetricDescriptionSizeType
activeMsgCountAllTotal count of all active messages currently being sent over the Gateway Network.1x1Gauge
IncomingBytesSecAllAccumulation of the number of bytes received per second across all Gateways.1x1Gauge
IncomingMsgsPerSecAllAccumulation of messages received per second across all Gateways.1x1Gauge
OutgoingBytesSecAllAccumulation of the number of bytes sent per second to all Gateways.1x1Gauge
OutgoingMsgsPerSecAllAccumulation of messages sent per second to all Gateways.1x1Gauge
pendingAcksExpiredIndicates how many pending acknowledgements were purged during the last cleanup execution. This metric is relevant for outgoing connections.

Note: Some messages create a pending acknowledgement object. When the message is uploaded to another Gateway and that Gateway acknowledges receiving the message, the pending acknowledgement object is cleared. If no acknowledgement is received, these objects can become orphaned. Orphaned pending message acknowledgements are regularly purged.
1x1Gauge
pendingMessagesExpiredRecords how many messages were purged during the last cleanup execution, giving an estimate of potentially lost messages. This metric is relevant for incoming connections. Messages that were dispatched, but not downloaded by the other Gateway are regularly purged.1x1Gauge
PendingMsgCountAllTotal count of all messages waiting to be sent over the Gateway Network.1x1Gauge
proxyMsgsPerSecThe number of messages per second that are forwarded through this Gateway. Only applies when this Gateway is configured as a proxy Gateway.2x2Meter
servicesincomingServiceCalls
  • Get Service State - Number of calls per second. This metric is queried by other Gateways to see if a specific service is available.
    • Size: 2x2
    • Type: Meter
  • Enumerate Services - Measures the rate and distribution of enumerate service calls.
    • Size: 2x2
    • Type: Meter
------

Metric - ignition​

MetricDescriptionSizeType
designer.requestsMeasures the rate and distribution of designer requests.4x2Timer
performance
  • committed-non-heap - Committed non-heap memory.
    • Size: 1x1
    • Type: Gauge
  • cpu - CPU usage as percent utilized.
    • Size: 1x1
    • Type: Gauge
  • disk - Disk used out of total space available.
    • Size: 1x1
    • Type: X/Y
  • heap - Heap memory used out of total memory available.
    • Size: 1x1
    • Type: X/Y
  • heap-max - Maximum heap memory.
    • Size: 1x1
    • Type: Gauge
  • heap-used - Current heap memory used.
    • Size: 1x1
    • Type: Gauge
  • non-heap - Current non-heap memory used.
    • Size: 1x1
    • Type: Gauge
  • non-heap-pct - Non-heap memory used out of total non-heap memory available.
    • Size: 1x1
    • Type: X/Y
------
uptimeTotal uptime.1x1Gauge

Metric - perspective​

MetricDescriptionSizeType
bindingsPerspective Binding count.1x1Gauge
componentsPerspective Components count.1x1Gauge
expressionsMeasures the rate and distribution of expressions.4x2Timer
fetchesMeasures the rate and distribution of fetches.4x2Timer
pagesPerspective pages count.1x1Gauge
property-changesMeasures the rate of property changes.2x2Meter
scriptsMeasures the rate and distribution of script executions4x2Timer
session-{sessionName}Each connected Perspective session will have the following associated metrics:
  • expressions - Measures the rate and distribution of expressions.
    • Size: 4x2
    • Type: Timer
  • fetches - Measures the rate and distribution of fetches.
    • Size: 4x2
    • Type: Timer
  • messages-received - Count of messages received.
    • Size: 2x2
    • Type: Counter
  • messages-sent - Count of messages sent.
    • Size: 2x2
    • Type: Counter
  • property-changes - Measures the rate of property changes.
    • Size: 2x2
    • Type: Meter
  • queue-length - Current length of queue.
    • Size: 1x1
    • Type: Gauge
  • queue-tasks - Measures the rate and distribution of queued tasks.
    • Size: 4x2
    • Type: Timer
  • reconnects - Count of reconnects.
    • Size: 2x2
    • Type: Counter
  • scripts - Measures the rate and distribution of script executions.
    • Size: 4x2
    • Type: Timer
  • uptime - Total uptime for the Perspective session.
    • Size: 1x1
    • Type: Gauge
------
sessionsCount of active sessions.1x1Gauge
viewsCount of views.1x1Gauge

Metric - projects​

MetricDescriptionSizeType
(projectName).resourcesCount of resources per project.1x1Gauge
countCount of projects.1x1Gauge
disk-syncMeasures the frequency and duration of projects directory synchronization.4x2Timer
savesMeasures the rate and distribution of project saves.4x2Timer

Metric - redundancy​

MetricDescriptionSizeType
config.updateThroughputRate of updates.2x2Meter
alarmpipelinemanager
  • taskSendThroughput - Rate of tasks sent.
    • Size: 2x2
    • Type: Meter
  • taskRecvThroughput - Rate of tasks received.
    • Size: 2x2
    • Type: Meter
  • queueSize - Current queue size.
    • Size: 1x1
    • Type: Gauge
------
sync.queue_maxMaximum queue size.1x1Gauge

Metric - scripts​

MetricDescriptionSizeType
gateway
  • compile - Measures the rate and distribution of script compiles.
    • Size: 4x2
    • Type: Timer
  • execute - Measures the rate and distribution of script executions.
    • Size: 4x2
    • Type: Timer
------
project-(projectName)
  • compile - Measures the rate and distribution of script compiles.
    • Size: 4x2
    • Type: Timer
  • execute - Measures the rate and distribution of script executions.
    • Size: 4x2
    • Type: Timer
------

Metric - vision.requests​

Measures the rate and distribution of Vision requests.

Examples​

Adding Metrics to a Dashboard​

  1. Click Add Metric.

  2. Select a metric from the list and click Add.

  3. Hover over the grid to position the metric.

    Adding Metrics to a Dashboard Step 3

  4. Click to snap the metric to the dashboard. To reposition your metric, you can drag and drop it anywhere else on the grid.

    Adding Metrics to a Dashboard Step 4