Gnatsd

Supported OS Linux Mac OS Windows

Integration version2.0.0

Overview

Get metrics from Gnatsd service in real time to:

  • Visualize and monitor Gnatsd states
  • Be notified about Gnatsd failovers and events.

Setup

The Gnatsd check is not included in the Datadog Agent package, so you need to install it.

Installation

For Agent v7.21+ / v6.21+, follow the instructions below to install the Gnatsd check on your host. See Use Community Integrations to install with the Docker Agent or earlier versions of the Agent.

  1. Run the following command to install the Agent integration:

    datadog-agent integration install -t datadog-gnatsd==<INTEGRATION_VERSION>
    
  2. Configure your integration similar to core integrations.

Configuration

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

  2. Restart the Agent

Validation

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

Compatibility

The gnatsd check is compatible with all major platforms

Data Collected

Metrics

gnatsd.connz.connections.in_bytes
(count)
The number of bytes incoming
Shown as byte
gnatsd.connz.connections.in_msgs
(count)
The number of messages received
Shown as unit
gnatsd.connz.connections.out_bytes
(count)
The number of bytes outgoing
Shown as byte
gnatsd.connz.connections.out_msgs
(count)
The number of messages sent
Shown as unit
gnatsd.connz.connections.pending_bytes
(gauge)
The number of bytes pending ack on a subscription
Shown as unit
gnatsd.connz.connections.subscriptions
(gauge)
The number of subscriptions on a connection
Shown as unit
gnatsd.connz.num_connections
(gauge)
The number of current connections to the NATS broker
Shown as unit
gnatsd.connz.total
(count)
The number of connections ever to the NATS broker
Shown as unit
gnatsd.routez.num_routes
(gauge)
The number of routes in the cluster
Shown as unit
gnatsd.routez.routes.in_bytes
(count)
The number of bytes incoming
Shown as byte
gnatsd.routez.routes.in_msgs
(count)
The number of messages received
Shown as unit
gnatsd.routez.routes.out_bytes
(count)
The number of bytes outgoing
Shown as byte
gnatsd.routez.routes.out_msgs
(count)
The number of messages sent
Shown as unit
gnatsd.routez.routes.pending_bytes
(gauge)
The number of bytes pending
Shown as unit
gnatsd.routez.routes.subscriptions
(gauge)
The number of subscriptions on a connection
Shown as unit
gnatsd.varz.connections
(gauge)
The number of connections to the NATS broker
Shown as unit
gnatsd.varz.in_bytes
(count)
Amount of traffic sent into the cluster
Shown as byte
gnatsd.varz.in_msgs
(count)
The number of messages passed into the cluster
Shown as unit
gnatsd.varz.mem
(gauge)
Amount of memory currently used by the process
Shown as byte
gnatsd.varz.out_bytes
(count)
Amount of traffic sent from the cluster
Shown as byte
gnatsd.varz.out_msg
(count)
The number of messages sent out of the cluster
Shown as unit
gnatsd.varz.remotes
(gauge)
The number of currently connected remotes
Shown as unit
gnatsd.varz.routes
(gauge)
The number of current routes
Shown as unit
gnatsd.varz.slow_consumers
(count)
The number of slow consumers ever connected
Shown as unit
gnatsd.varz.subscriptions
(gauge)
The number of subscriptions currently handled
Shown as unit

Note: If you use custom Nats cluster names, your metrics may look like this: gnatsd.connz.connections.cluster_name.in_msgs

Events

The gnatsd check does not include any events.

Service Checks

gnatsd.can_connect
Returns CRITICAL if the Agent can’t connect to the Gnastd endpoint, OK otherwise
Statuses: ok, critical

Troubleshooting

Need help? Contact Datadog support.