Skip to main content

Tags Reference Tables

Overview​

MQTT Engine automatically creates a known set folders containing tags for Engine Control and Engine Info. For each connected Edge Node, a Node Control and Node Info folder containing tags is created along with a Device Info folder for each connected device. The tables below describe these tags.

Node Control​

The tags in each Node Control folder are created based on a supplied metric within the NBIRTH message from the Edge Node. These will only appear if the Edge Node implementation supports them. It is up to the Edge Node implementation (MQTT Transmission for example) to support any functionality it supplies via the NBIRTH. If the Edge Node does not support the specific control, it should not include it in the NBIRTH payload.

TagData TypeDescription
Delete UNS TagsBooleanWriteable tag to delete all UNS namespace tags associated with this Sparkplug Edge Node. Tag is set to read-only by default
Next ServerBooleanWriteable tag to request the Edge Node to walk to the next MQTT server
RebirthBooleanWriteable tag to request the Edge Node to resend its cached NBIRTH and DBIRTH messages without disconnecting or sending DEATH messages first. This means a that the new BIRTH will only contain the same metrics/tags that were in the original BIRTH message.

Node Info​

General information tags with respect to Sparkplug Edge Nodes. These are created, managed and updated by Engine based on messages arriving from each given Edge Node.

TagData TypeDescription
bdSeqLongThe last bdSeq number sent by the Edge Node in an NBIRTH message
Birth CountLongThe number of NBIRTH messages since the last time the info metrics were reset via the Node Info/Reset Info tag
Current ServerStringThe current MQTT Server the Edge Node is connected to
Data Latency (ms)LongThe time in milliseconds between MQTT Engine receiving of the last message and the payload's reported time. Note: For this to be very accurate the edge node's clock and the system clock running MQTT Engine should be synced
Death CountLongThe number of NDEATH messages since the last time the info metrics were reset via the Node Info/Reset Info tag
Message SchemaStringThe schema associated with the Edge Node (e.g. Sparkplug B)
Offline DateTimeDateTimeThe time at which the last NDEATH message was received by MQTT Engine
OnlineBooleanWhether or not the Edge Node is online. This is determined by whether the last lifecycle message was an NBIRTH or NDEATH
Online DateTimeDateTimeThe time at which the last NBIRTH message was received by MQTT Engine
Rebirth (Last) CauseStringThe reason for the last rebirth request to be issued for this Edge Node by MQTT Engine (added 4.0.22)
Rebirth (Last) DateTimeDateTimeThe time at which the last rebirth was issued for this Edge Node by MQTT Engine (added 4.0.22)
Rebirth CountIntegerThe count of rebirth requests issued for this Edge Node by MQTT Engine (added 4.0.22)
Reset InfoBooleanWritable tag to 'reset' the Node Info metrics
seqLongThe last Sparkplug seq number received from the Edge Node
Total Bytes Recvd (bytes)LongThe number of bytes received from the Edge Node since the last time the info metrics were reset via the Node Info/Reset Info tag
Total Bytes Xmit (bytes)LongThe number of bytes sent to the Edge Node since the last time the info metrics were reset via the Node Info/Reset Info tag
Transmission VersionStringThe version of MQTT Transmission installed at the Edge Node

Device Control​

Device Control tags are created from control metrics included in an Edge Node's DBIRTH message. These tags are only available if the Edge Node implementation (such as MQTT Transmission) supports the associated control functionality. If a control is not supported, the corresponding metric should not be included in the DBIRTH payload.

TagData TypeDescription
Delete UNS TagsBooleanWriteable tag to delete all UNS namespace tags associated with this Sparkplug Device. Tag is set to read-only by default
RebirthBooleanWriteable tag to request the Edge Node to resend its cached DBIRTH message for the specific Device without disconnecting or sending DEATH messages first. This means a that the new BIRTH will only contain the same metrics/tags that were in the original BIRTH message.

Note: Block Device Commands must be disabled in order the DCMD to be published by Engine

Device Info​

General information tags with respect to Sparkplug Devices. These are created, managed and updated by Engine based on messages arriving from each given device.

TagData TypeDescription
Birth CountLongThe number of DBIRTH messages since the last time the info metrics were reset via the Device Info/Reset Info tag
Data Message CountLongThe number of DDATA messages since the last time the info metrics were reset via the Device Info/Reset Info tag
Death CountLongThe number of DDEATH messages since the last time the info metrics were reset via the Device Info/Reset Info tag
Last Command Size (bytes)LongThe size in bytes of the last DCMD that was sent from MQTT Engine
Last Data Message Size (bytes)LongThe size in bytes of the last DDATA that was received from the Device
Offline DateTimeDateTimeThe time at which the last DDEATH message was received by MQTT Engine
OnlineBooleanWhether or not the Device is online. This is determined by whether the last lifecycle message was an DBIRTH or NBIRTH
Online DateTimeDateTimeThe time at which the last DBIRTH message was received by MQTT Engine
Reset InfoBooleanWritable tag to 'reset' the Device Info metrics

Engine Control​

Primary Host Control​

These tags give control over the configuration of the Primary Host ID for Engine.

TagData TypeDescription
EnabledBooleanWritable tag to control whether or not the Primary Host is enabled for MQTT Engine
IDStringWritable tag to set the Primary Host ID defined for MQTT Engine

Processing Queue Control​

These tags give control over the queued messages.

TagData TypeDescription
Clear QueueBooleanWritable tag to control whether or not to clear the queue (added 4.0.31)
Edge Node DescriptorStringWritable tag to set the Edge Node Descriptor for the queue to be cleared (added 4.0.31). Format is GroupId/EdgeNodeId as displayed in the Queued Messages dataset tag.
Smart ClearBooleanWriteable tag to determine method of clearing the queue when the Clear Queue tag is enabled. Set to True by default (added 4.0.31). If set to True, the last Birth message in the queue will be found and only messages in the queue that are before the Birth message will be cleared. If set to False, all messages in the queue will be cleared.

Engine Info​

These tags provide information about MQTT Engine, as well as its Devices, Edge Nodes, Latches, and the Client.

TagData TypeDescription
Enable Tag TrackingBooleanWritable tag to control whether or not to update Tags Per Seconds (added 4.0.17)
Queued MessagesDatasetA dataset showing the current message count for each message queue comprising: MQTT Server (String) - Sparkplug descriptors in the format GroupId/EdgeNodeId (String) - Queued Messages count (Integer)
Queued Messages TotalIntegerThe count of all current queued messages
Rebirth (Last) CauseStringThe reason for the last rebirth request to be issued by MQTT Engine (added 4.0.22)
Rebirth (Last) DateTimeDateTimeThe time at which the last rebirth was issued by MQTT Engine (added 4.0.22)
Rebirth (Last) NodeStringThe Sparkplug EdgeNode ID for which the last rebirth was issued by MQTT Engine (added 4.0.22)
Rebirth CountIntegerThe count of rebirth requests issued by MQTT Engine (added 4.0.22)
Redundancy RoleStringThe redundancy configuration of the Ignition system that MQTT engine is installed on. Options are Independent, Master and Backup
Redundancy StateStringThe redundancy status of the Ignition system that MQTT engine is installed on. Options are Active or Cold
Reordered Mesg CountIntegerThe number of messages that have been reordered by MQTT Engine (added 4.0.22)
Reordered Mesg ResetBooleanWritable tag to reset the Reordered Mesg Count metric (added 4.0.22)
System-Wide Reset InfoBooleanWriteable tag to 'reset' all Engine metrics
Tag CountLongThe sum of tags included in the last NBIRTH and DBIRTH messages received from each Edge Node. When an LWT is received form the Edge Node, the tag count for that Edge Node is set to 0 and repopulated on connect when the next BIRTH messages are received (added 4.0.17)
Tags Per SecondLongThe number of tags changes received per second with the value updated every two seconds (added 4.0.17)
Total Bytes Recvd (bytes)IntegerThe number of bytes received by Engine since the last time the info metrics were reset via the System-Wide Reset Info tag
Total Bytes Xmit (bytes)IntegerThe number of bytes sent from Engine since the last time the info metrics were reset via the System-Wide Reset Info tag
Total Data Mesg CountIntegerThe number of messages received by Engine since the last time the info metrics were reset via the System-Wide Reset Info tag
VersionStringThe version MQTT Engine currently installed

Devices Folder​

The Devices folder tags provide information on the connected devices.

TagData TypeDescription
DeviceCountIntegerThe number of Sparkplug edge devices as determined by the received DBIRTH messages
DevicesOfflineIntegerThe number of Sparkplug edge devices that are offline. This is determined by whether the last lifecycle message was an DBIRTH or DDEATH
DevicesOnlineIntegerThe number of Sparkplug edge devices that are online. This is determined by whether the last lifecycle message was an DBIRTH or DDEATH

Edge Nodes Folder​

The Edge Nodes folder tags provide information on the connected Edge Nodes.

TagData TypeDescription
Last Node to ConnectStringThe Sparkplug ID of the last node to connect
Last Node To DisconnectStringThe Sparkplug ID of the last node to disconnect
NodesOfflineIntegerThe number of Sparkplug Edge Nodes offline. This is determined by whether the last lifecycle message was an NBIRTH or NDEATH
NodesOnlineIntegerThe number of Sparkplug Edge Nodes online. This is determined by whether the last lifecycle message was an NBIRTH or NDEATH
NodeUnitCountIntegerThe total number of Sparkplug Edge Nodes as determined by the received NBIRTH messages
Offline NodesDatasetA dataset containing the Sparkplug ID and timestamp for all offline Sparkplug edge nodes
Online NodesDatasetA dataset containing the Sparkplug ID and timestamp for all online Sparkplug edge nodes

Latches Folder​

The Latches folder tags provide a tag path to any configured tag latches in the MQTT Engine configuration.

TagData TypeDescription
TagName as defined in the MQTT Engine configurationBooleanWriteable tag to 'reset' the tag latch

For more information on tag latches, see the Tag Latches documentation.

MQTT Clients Folder​

TagData TypeDescription
Latency Check Period (ms)IntegerFrequency in milliseconds that the message latency for each MQTT Client is checked if the Enable Latency Check is checked

For each configured MQTT Engine Set, the following tags are available for each identified MQTT Client:**​

NameData TypeDescription
Connected NodesIntegerNumber of currently connected Sparkplug Edge Nodes to this MQTT Client
Enable Latency CheckIntegerWritable tag to enabled message latency checking for each MQTT Client
Message Processing Latency (ms)IntegerThe amount of time to process the last Sparkplug message
Messages Per SecondIntegerThe number of MQTT messages received by Engine per second
MQTT Client IDStringThe Client ID for the MQTT Client
Offline DateTimeDateTimeThe last time at which the MQTT Client successfully disconnected from the MQTT Server
OnlineBooleanA read-only tag showing the connection status of the MQTT Client
Online DateTimeDateTimeThe last time at which the MQTT Client successfully connected to the MQTT Server
Server Latency (ms)IntegerThe amount of time that it takes for a test MQTT message to be sent and received back by MQTT Engine
Target Server URLStringThe URL of the target MQTT Server to connect to

For each identified MQTT Client, the following folders and tags are available:​

NameDescription
Primary Host State/PrimaryHostNameFolder named as the Primary Host ID configured in MQTT Engine
  • Payload: String - Status of the Primary Host. Options are: Primary Host Online: {"online":true,"timestamp":1681780081657} / Primary Host Offline: {"online":false,"timestamp":1681780081660}, where the timestamp is the time of the last status change in milliseconds
  • Retain: Boolean - Retain status of the LWT message for the Primary Host | | Legacy Primary Host State/PrimaryHostName | Folder named as the Primary Host ID configured in MQTT Engine if Enable Legacy State messages is True under the Severs > Legacy State configuration
  • Payload: String - Status of the Legacy Primary Host. Options are OFFLINE or ONLINE
  • Retain: Boolean - Retain status of the LWT message for the Legacy Primary Host |