Zenoh router

Supported OS Linux Windows Mac OS

Integration version1.1.0

Overview

This check monitors Zenoh router.

Zenoh is an open source Zero Overhead Network Protocol.

Zenoh (/zeno/) is a pub/sub/query protocol unifying data in motion, data at rest, and computations. It elegantly blends traditional pub/sub with geo distributed storage, queries, and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.

The Zenoh router integration allows you to monitor router metrics and router/peer/client connection statuses in Datadog.

Setup

Installation with the Datadog Agent (v7.21+ and v6.21+)

For Agent v7.21+ / v6.21+, follow the instructions below to install Zenoh router check on your host.

  1. On your host, run the following command to install the Agent integration:

    datadog-agent integration install -t datadog-zenoh_router==<INTEGRATION_VERSION>
    

Note:

  • The datadog-zenoh_router integration version 1.0.0 is compatible with Zenoh router versions below 1.0.
  • For Zenoh router versions above or equal 1.0, integration version 1.1.0 should be used.

Installation from the source code

To install the Zenoh router check on your host:

  1. Install the developer toolkit on any machine.

  2. Run ddev release build zenoh_router to build the package.

  3. Upload the build artifact to any host with the Agent installed

  4. On the host, run datadog-agent integration install -w path/to/zenoh_router/dist/<ARTIFACT_NAME>.whl.

Configuration

  1. Make sure that the Zenoh REST API plugin is enabled.

Note:

  • The default Zenoh router provides only session information.
  • To access full statistics, this feature needs to be enabled at Zenoh router build time using the stats feature. For example:
cargo build --features stats

Alternatively, you can use routers from the Zetta Platform

  1. Edit the zenoh_router.d/conf.yaml file in the conf.d/ folder at the root of your Agent’s configuration directory to start collecting your Zenoh router metrics. See the sample zenoh_router.d/conf.yaml for all available configuration options.

  2. Restart the Agent.

Validation

Run the Agent’s status subcommand and look for zenoh_router under the Checks section.

Data Collected

Metrics

zenoh.router.sessions
(count)
The number of active sessions
Shown as connection
zenoh.router.rx_bytes
(gauge)
The number of received bytes
Shown as byte
zenoh.router.rx_n_dropped
(gauge)
The number of dropped network messages
Shown as message
zenoh.router.rx_n_msgs
(gauge)
The number of received network messages
Shown as message
zenoh.router.rx_t_msgs
(gauge)
The number of received transport messages
Shown as message
zenoh.router.rx_z_del_msgs
(gauge)
The number of received zenoh del messages
Shown as message
zenoh.router.rx_z_put_msgs
(gauge)
The number of received zenoh put messages
Shown as message
zenoh.router.rx_z_put_pl_bytes
(gauge)
The number of received bytes in zenoh put message payloads
Shown as byte
zenoh.router.rx_z_query_msgs
(gauge)
The number of received zenoh query messages
Shown as message
zenoh.router.rx_z_query_pl_bytes
(gauge)
The number of received bytes in zenoh query message payloads
Shown as byte
zenoh.router.rx_z_reply_msgs
(gauge)
The number of received zenoh reply messages
Shown as message
zenoh.router.rx_z_reply_pl_bytes
(gauge)
The number of received bytes in zenoh reply message payloads
Shown as byte
zenoh.router.tx_bytes
(gauge)
The number of sent bytes
Shown as byte
zenoh.router.tx_n_dropped
(gauge)
The number of dropped network messages
Shown as message
zenoh.router.tx_n_msgs
(gauge)
The number of sent network messages
Shown as message
zenoh.router.tx_t_msgs
(gauge)
The number of sent transport messages
Shown as message
zenoh.router.tx_z_del_msgs
(gauge)
The number of sent zenoh del messages
Shown as message
zenoh.router.tx_z_put_msgs
(gauge)
The number of sent zenoh put messages
Shown as message
zenoh.router.tx_z_put_pl_bytes
(gauge)
The number of sent bytes in zenoh put message payloads
Shown as byte
zenoh.router.tx_z_query_msgs
(gauge)
The number of sent zenoh query messages
Shown as message
zenoh.router.tx_z_query_pl_bytes
(gauge)
The number of sent bytes in zenoh query message payloads
Shown as byte
zenoh.router.tx_z_reply_msgs
(gauge)
The number of sent zenoh reply messages
Shown as message
zenoh.router.tx_z_reply_pl_bytes
(gauge)
The number of sent bytes in zenoh reply message payloads
Shown as byte

Events

Zenoh router does not include any events.

Service Checks

zenoh.router.can_connect
Returns CRITICAL if the Agent can’t connect to the Zenoh router, OK otherwise
Statuses: ok, critical

Troubleshooting

Need help? Contact Datadog support.