Available Information

Every page of the HiveMQ Web UI follows the same makeup. On every site, the top shows the title of the current page. In the top right corner of the page, the username of the currently logged in user is displayed next to the Logout button.

On the left is the menu, clicking on a menu item will take you to one of the following pages:

Table 1. Overview on the tabs
Tab Description

Dashboard

Current status of HiveMQ and the whole cluster.

License

Detailed information on the installed HiveMQ licenses.

Clients

List available clients with drill-down on particular clients

Trace Recordings

List, create and manage trace recordings

Dropped Messages

Detailed information on dropped messages

Help

Opens the HiveMQ Web UI User Guide (this page)

In the lower left corner the version of HiveMQ is displayed. Please keep the version information on hand when contacting our support.

Throughout the pages of the HiveMQ Web UI a click on the ? icon opens a popup with additional information about the current page. The popup can be closed by clicking on the X in the top right corner of the window or by pressing the ESC key.

Dashboard

The Dashboard shows a quick overview over the current state of HiveMQ and the whole cluster. It gives you a quick insight on the most pressing issues and allows you to check the state of every available cluster node.

Dashboard Overview

Complete view

On the top simple key metrics show the current usage and throughput in the cluster. These key metrics can be displayed in more detail in the Detail View left below of it.

On the bottom of the page detailed information on the license if given on the left and details on the statistics of the cluster nodes are presented on the right.

Attention Log

The Attention Log displays important alerts. For example if there are dropped messages for clients. An alert does not necessarily mean that something is wrong, but it might be an indication that there is some unwanted behaviour has occurred.

Example of the appearance, when the connection limit is reached.

maximal connections reached

The appearance when there are no alerts:

no important notification

When no client is connected. Useful links are displayed instead:

no client connected

License Information

At the bottom left of the page you can find a panel for information on the active license.

If you have not acquired a license, HiveMQ will automatically use an evaluation license limited to 25 concurrent connections.
License information:

License information

Table 2. License explanation:
Value Description

Connections

The amount of used connections in relation to the maximum amount of connections

License Type

The validation status and the type of the license (e.g. commercial)

Maximum Connections

The maximum amount of concurrent connections

Cluster License

Indicates whether the current license enables to use HiveMQ clusters

Filename

The filename of the current license

License Expiration Date

Expiration date of the current license

Support Expiration Date

Expiration date of your support subscription

The color of the connection bar will change depending on the relation:

A green bar indicates that there is still much capacity left before the amount of connections reaches the maximum amount

green bar

A yellow bar indicates that most ob the maximum amount of connections are used

yellow bar

A red bar warns for a forthcoming reaching of the maximum amount

red bar

If no license is present, an evaluation license is automatically used

Evaluation license information

The evaluation license is limited to 25 connections.

Evaluation license

If no license is provided, HiveMQ uses a free evaluation license automatically:

Evaluation license appearance

Installed license

The perspective of this site depends on the status of the license. If more than one license is installed all licenses are displayed.

Only the licenses installed on the current node are displayed.
License overview

Complete view on the license site

If no license is installed, an evaluation license will automatically be used. This license is limited to 25 concurrent connections. In Evaluation license is the appearance without a installed license explained.

The table provides following useful information on the current license:

License table

License table

Table 3. license_table_explanation
Aspect Description

License Warning

Indication of your license expiring

Connections

Number of concurrent clients this license allows

Cluster License

Indicates whether the current license enables the use of HiveMQ cluster

Filename

The filename of the current license

Start Date

The date of the start of this license

License Expiration Date

Expiration date of the license

Support Expiration Date

The expiration date of your support subscription

License Owner

The Owner of this license

Contact

Contact information

Email

Email-Address of the named contact

Furthermore a warning will be displayed if your license is to expire the next time.

Forthcoming expiration warning

If your license expired, a evaluation license will be used automatically and the old license will be displayed too.

License expiration

Cluster Node Stats

Next to the license information, statistics of each individual nodes are displayed. Nodes are identified by a randomly generated cluster id. The node, which was used for the HiveMQ Web UI connection, is marked with "*" after the node name.

You can choose the node by clicking on the name:

Node (6jhom)

Cluster node status of the first node

Node (9uM55)

Cluster node status of the second node

Table 4. Cluster node stats explanation
Metric Description

JVM Memory

The amount of the JVM memory heap space used/total

Disk Space

The amount of disk space used/total where the hivemq data folder is located

Running Since

The startup time of this node

Total Inbound Publish Messages

The amount of total inbound publish messages

Total Outbound Publish Messages

The amount of total outbound publish messages

HiveMQ Version

The HiveMQ version of this node

Hostname

The network hostname of this node

Total Inbound Volume

The amount of bytes of MQTT messages incoming total

Total Outbound Volume

The amount of bytes of MQTT messages outgoing total

Inbound Network Traffic

The amount of bytes of MQTT messages incoming per second

Outbound Network Traffic

The amount of bytes of MQTT messages outgoing per second


Client Information

With millions of connected clients, keeping track of specific clients can become a challenge. The HiveMQ Web UI provides tools to list, view and manage all the MQTT clients known to HiveMQ. Information about subscriptions, connection status, TLS and more offer detailed insights into every client.

Client Overview

HiveMQ uses snapshots to display all available MQTT sessions. As a result you need to create a snapshot before information based on that snapshot can be displayed. This provides a better user experience when sorting, filtering or navigating through the available MQTT sessions. Click the “refresh snapshot” button in order to refresh the snapshot with the current state in the cluster. Depending on the number of MQTT sessions of your cluster, refreshing a snapshot may take a few moments. A table with current clients will be displayed. This table can be ordered by clicking on headlines of the table. Furthermore you can filter the displayed clients by inserting the wished clientID, Username or IP Address or by choosing options from the dropdown menus positioned next to the headers of the "Clean Session" and "Connected" column.

This site will not refresh the snapshots on its own. You need to refresh it manually with the "refresh snapshot" button in the right top corner of the table.

Clients overview

Table 5. Clients Overview Explanation
Column Description

Client ID

The Id of the Client

Clean Session

Indicates whether a client uses a clean session

Connection Status

Indicates whether a client is currently connected

Username

The username of the client. A blank field indicates that no username was set

Ip Address

The ip address of the client

The current connection status is illustrated by color. The legend is on the bottom of the site. By clicking on a client a new tab will be opened, showing additional information about the client and enabling actions like disconnecting, subscribing or un-subscribing.

Client Details

This site is displayed after a click on a client identifier in the overview at the Clients tab.
On the left upper corner information in addition to the client identifier, the connection status of the client is displayed.

Session information

It is also possible to show more information by clicking on the question mark.

This opens a new window:

Help session


Connection

One of the principles of MQTT is the de-coupling of communication partners. This means that each client no matter if it is sending or receiving clients is always connected to the broker and there is not client to client connection.
An MQTT connection is established by the client sending a CONNECT message to HiveMQ and HiveMQ replying with a CONNACK message. The protocol used for the connection is TCP.

For more information on connections, please visit the Client, Broker and Connection Establishment chapter of our MQTT Essentials.
For more information on keep alive, please visit the Keep Alive and Client Take-Over chapter of our MQTT Essentials.

The connection is described in more detail below.

Connection information

Value Description

Client IP

The network IP address of the client. The address can be IPv4 or IPv6

Username

Username of this client

Password

Password of this client

MQTT Version

The version number of the MQTT protocol used for the connection

Keep-Alive

Interval during which the client is required to send control packets. Otherwise the broker will disconnect the client

Listener

The type of listener and the address over which the client is connected to the broker

Connected Node

The unique identifier of the cluster node to which the client is connected

TLS

Transport Layer Security (TLS) is a cryptographic protocol which allows a secure and encrypted communication at transport layer between a client application and a server. If a TLS listener is enabled in HiveMQ, each client connection for that listener is encrypted and secured by TLS. It is also possible to use X.509 certificate client authentication. This is an alternative to the username/password authentication.
This section informs you about the most important aspects like the TLS version, the cipher suite and the certificate.

For more information on TLS please visit the TLS chapter in our documentation.

The following illustration shows the most important attributes of TLS:

TLS information

Aspect Description

TLS Version

The version of the protocol which is used.

Cipher Suite

The cipher suite that is used for the encryption of the connection. Cipher suite is a combination of authentication, encryption, message authentication code (MAC) and key exchange algorithms

X.509 client certificate

The certificate used by the client

Right of the cypher suite you have the possibility to display more information on the cipher suite used in the tls by clicking "show more":

Cipher suite information

It is also possible to show more information on the client certificate by clicking on "show certificate":

Certificate information

The information is divided in two groups, General and Extensions:

Value Description

Common Name

The common name of the owner of the certificate

Organisation

The organisation of the Subject

Organisational Unit

The organisational unit of the subject

Serial

The serial number of this certificate

x.509 Version

The version of X.509

Valid From

The timestamp from which on the certificate is valid

Valid Until

The timestamp until which the certificate is valid

Country

The country of the subject

State

The State of the subject

Value Description

Subject Key Identifier

Fingerprint of the key

Last Will

Last will is a feature that is used when a client disconnects ungracefully. The given payload will be published on the last will topic with the given last will Quality of Service.

For more information on the Last Will feature feel free to visit the Last Will and Testament chapter of MQTT Essentials

Each client can specify its last will message (a normal MQTT message with topic, QoS, retained flag and payload) when connecting to a broker.

LWT section

Value Description

Will Topic

The topic on which the last will payload will be published

Will QoS

The Quality of Service level the last will message will be published with

Will Retained

Indicates whether the last will message will be a retained message

Will Payload

The payload that will be published when last will is triggered

It is possible to show and download the Last Will payload by clicking "show payload" next to the size of the payload. This opens a new window:

LWT payload

In this window you can choose how the payload is presented by selecting the option in dropdown menu. It is possible to show the payload as a UTF-8 String, hexadecimal and Binary. Below this dropdown menu the payload is presented in the wished format. At the bottom there are buttons to copy the payload to the clipboard and to download it as a .dat file.

Restrictions

To ensure a trouble-free communication process, some restrictions have to be observed.

Restrictions

Value Description

Maximum Bytes per Second Inbound

The maximum bytes per second this client may receive from the broker

Maximum Bytes per Second Outbound

The maximum bytes per second this client may send to the broker

Maximum Message Size

The maximum payload size in bytes for MQTT PUBLISH messages sent by this client

Maximum Message Queue Size

The maximum amount of messages the broker will store for this client

Drop Strategy for Queued Messages

The strategy used when the queue size limit is reached. Discard: Newly arrived messages will be dropped after the queue size limit has been reached. Discard oldest: The oldest message in the queue will be dropped when a new message arrives after the queue size limit has been reached.

Proxy Protocol

HiveMQ supports the PROXY protocol for all listener types. The PROXY protocol is a TCP based protocol that allows to transport client details like IP address and port over multiple proxies. This is very useful if you are running your HiveMQ brokers behind a load balancer that proxies the TCP connection. Useful client information like IP address, port and SSL information is lost since the broker only "sees" the TCP connection of the load balancer and not of the original client.

Information Proxy Protocol

Value Description

Source IP/Port

The source (origin) IP address and port of the proxy

Destination IP/Port

The destination IP address and port of the proxy

Additional TLVs

The Type-length-values (TLVs) are key-value pairs that provide optional information such as the SSL X.509 client certificate Common Names or the TLS version used by a client that connected to the proxy

For more information on PROXY protocol please visit the PROXY protocol chapter in our documentation.

Session

When a client connects to a MQTT broker, it needs to create subscriptions for all topics that it is interested in in order to receive messages from the broker. On a reconnect these topics are lost and the client needs to subscribe again. This is the normal behavior with no persistent session.
In contrast a persistent session saves all information relevant for the client on the broker. The session is identified by the clientId provided by the client on connection establishment.

For more details on persistent sessions please visit the Persistent Session and Queuing Messages chapter in our MQTT Essentials.

The following information is stored in the session:

Session information

Session information

Aspect Description

Client ID

Identifies the MQTT client within a MQTT broker or MQTT broker cluster

Clean Session

If set to true, sessions will be stateless and information like unfinished message flow and subscriptions will be lost on disconnect

Connected/Disconnected Since

Date and time when the client last established or lost connection with the broker

Offline Session TTL

Shows the Time to live (TTL) limit that is set for the client. The TTL timer starts when the client disconnects. If the client does not reconnect within the predefined period, the session is invalidated and the broker deletes all client information including subscriptions and queued messages. The TTL does not apply while the client is connected

Offline Message Queue Size

While a client with a persistent session is offline (clean-session = false), this entry shows the current number of QoS 1 and 2 messages that are queued for the client

Shared Subscriptions

Shared Subscriptions are a unique feature of HiveMQ which allows MQTT clients to share the same subscription on the broker. When using "standard" MQTT subscriptions, each client receives a copy of the message. If shared subscriptions are used, all clients which share the same subscription will receive messages in an alternating fashion. This mechanism is sometimes called "client load balancing".
At the bottom of the site a similar section for shared subscriptions is positioned:

Connection information

The table will show any shared subscription this client has with information on the topic, the shared group name and the Quality of Service. You can also unsubscribe it by clicking on the x at the right side of each line. Additionally you are able to add new shared subscriptions to this client by inserting the topic, the shared group and the Quality of Service.

For more information on the Shared Subscription feature feel free to visit our MQTT Client Load Balancing with Shared Subscriptions blog post.