---
title: Nomad
description: Easily Schedule and Deploy Applications at Any Scale
breadcrumbs: Docs > Integrations > Nomad
---

# Nomad
Supported OS Integration version1.0.0


## Overview{% #overview %}

Gather metrics from your Nomad clusters to:

- Visualize and monitor cluster performance
- Alert on cluster health and availability

Recommended monitors are available to get notified on different Nomad events.

## Setup{% #setup %}

### Installation{% #installation %}

Nomad emits metrics to Datadog through DogStatsD. To enable the Nomad integration, [install the Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest) on each client and server host.

### Configuration{% #configuration %}

Once the Datadog Agent is installed, add a Telemetry stanza to the Nomad configuration for your clients and servers:

```
telemetry {
  publish_allocation_metrics = true
  publish_node_metrics       = true
  datadog_address = "localhost:8125"
  disable_hostname = true
  collection_interval = "10s"
}
```

Next, reload or restart the Nomad agent on each host. You should start to see Nomad metrics flowing to your Datadog account.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **nomad.client.allocated.cpu**(gauge)                          | Amount of CPU allocated for a client.*Shown as megahertz*                             |
| **nomad.client.allocated.disk**(gauge)                         | Amount of disk allocated for a client.                                                |
| **nomad.client.allocated.iops**(gauge)                         | Number of iops allocated for a client.*Shown as operation*                            |
| **nomad.client.allocated.memory**(gauge)                       | Amount of memory allocated for a client.                                              |
| **nomad.client.allocated.network**(gauge)                      | Bandwidth allocation for a client.                                                    |
| **nomad.client.allocations.blocked**(gauge)                    | Number of allocations blocked for a client.*Shown as job*                             |
| **nomad.client.allocations.migrating**(gauge)                  | Number of allocations migrating for a client.*Shown as job*                           |
| **nomad.client.allocations.pending**(gauge)                    | Number of allocations pending for a client.*Shown as job*                             |
| **nomad.client.allocations.running**(gauge)                    | Number of allocations running for a client.*Shown as job*                             |
| **nomad.client.allocations.start**(gauge)                      | Number of allocations starting*Shown as job*                                          |
| **nomad.client.allocations.terminal**(gauge)                   | Number of allocations terminated for a client.*Shown as job*                          |
| **nomad.client.allocs.cpu.allocated**(gauge)                   | Total CPU resources allocated by the task across all cores.*Shown as megahertz*       |
| **nomad.client.allocs.cpu.system**(gauge)                      | Total CPU resources consumed by the task in system space.*Shown as percent*           |
| **nomad.client.allocs.cpu.throttled\_periods**(gauge)          | Total number of CPU periods that the task was throttled.*Shown as nanosecond*         |
| **nomad.client.allocs.cpu.throttled\_time**(gauge)             | Total time that the task was throttled.*Shown as nanosecond*                          |
| **nomad.client.allocs.cpu.total\_percent**(gauge)              | Total CPU resources consumed by the task across all cores.*Shown as percent*          |
| **nomad.client.allocs.cpu.total\_ticks**(gauge)                | CPU ticks consumed by the process in the last collection interval.                    |
| **nomad.client.allocs.cpu.user**(gauge)                        | Total CPU resources consumed by the task in the user space.*Shown as percent*         |
| **nomad.client.allocs.memory.allocated**(gauge)                | Amount of memory allocated by the task.*Shown as byte*                                |
| **nomad.client.allocs.memory.cache**(gauge)                    | Amount of memory cached by the task.*Shown as byte*                                   |
| **nomad.client.allocs.memory.kernel\_max\_usage**(gauge)       | Maximum amount of memory ever used by the kernel for this task.*Shown as byte*        |
| **nomad.client.allocs.memory.kernel\_usage**(gauge)            | Amount of memory used by the kernel for this task.*Shown as byte*                     |
| **nomad.client.allocs.memory.max\_usage**(gauge)               | Maximum amount of memory ever used by the task.*Shown as byte*                        |
| **nomad.client.allocs.memory.rss**(gauge)                      | Amount of RSS memory consumed by the task.*Shown as byte*                             |
| **nomad.client.allocs.memory.swap**(gauge)                     | Amount of memory swapped by the task.*Shown as byte*                                  |
| **nomad.client.allocs.memory.usage**(gauge)                    | Total amount of memory used by the task.*Shown as byte*                               |
| **nomad.client.allocs.oom\_killed**(gauge)                     | Number of allocations OOM killed.                                                     |
| **nomad.client.consul.check\_registrations**(gauge)            | Number of consul check registrations.                                                 |
| **nomad.client.consul.checks**(gauge)                          | Number of consul checks.                                                              |
| **nomad.client.consul.script\_checks**(gauge)                  | Number of consul script checks.                                                       |
| **nomad.client.consul.service\_registrations**(gauge)          | Number of consul service registration.                                                |
| **nomad.client.consul.services**(gauge)                        | Number of consul services.                                                            |
| **nomad.client.host.cpu.idle**(gauge)                          | Amount of CPU idle for a client.*Shown as percent*                                    |
| **nomad.client.host.cpu.system**(gauge)                        | Amount of CPU consumed by the system for a client.*Shown as percent*                  |
| **nomad.client.host.cpu.total**(gauge)                         | Amount of CPU total for a client.*Shown as percent*                                   |
| **nomad.client.host.cpu.user**(gauge)                          | Amount of CPU total for a user.*Shown as percent*                                     |
| **nomad.client.host.disk.available**(gauge)                    | Disk available for a particular client.*Shown as byte*                                |
| **nomad.client.host.disk.inodes\_percent**(gauge)              | Disk nodes used as a percentage for a particular client.*Shown as percent*            |
| **nomad.client.host.disk.size**(gauge)                         | Disk size for a particular client.*Shown as byte*                                     |
| **nomad.client.host.disk.used**(gauge)                         | Disk used for a particular client.*Shown as byte*                                     |
| **nomad.client.host.disk.used\_percent**(gauge)                | Disk used as a percentage for a particular client.*Shown as percent*                  |
| **nomad.client.host.memory.available**(gauge)                  | Amount of memory available for a client.*Shown as byte*                               |
| **nomad.client.host.memory.free**(gauge)                       | Amount of memory free for a client.*Shown as byte*                                    |
| **nomad.client.host.memory.total**(gauge)                      | Total amount of memory for a client.*Shown as byte*                                   |
| **nomad.client.host.memory.used**(gauge)                       | Amount of memory used for a client.*Shown as byte*                                    |
| **nomad.client.unallocated.cpu**(gauge)                        | Amount of unallocated CPU for a client.*Shown as megahertz*                           |
| **nomad.client.unallocated.disk**(gauge)                       | Amount of unallocated disk for a client.                                              |
| **nomad.client.unallocated.iops**(gauge)                       | Number of unallocated iops for a client.*Shown as operation*                          |
| **nomad.client.unallocated.memory**(gauge)                     | Amount of unallocated memory for a client.                                            |
| **nomad.client.unallocated.network**(gauge)                    | Unallocated bandwidth for a client.                                                   |
| **nomad.client.uptime**(gauge)                                 | Uptime of the host running the Nomad client.*Shown as second*                         |
| **nomad.memberlist.gossip.95percentile**(gauge)                | 95 percentile of members in the gossip pool.*Shown as resource*                       |
| **nomad.memberlist.gossip.avg**(gauge)                         | Average number of members in the gossip pool.*Shown as resource*                      |
| **nomad.memberlist.gossip.count**(rate)                        | Number of members in the gossip pool.*Shown as resource*                              |
| **nomad.memberlist.gossip.max**(gauge)                         | Maximum number of members in the gossip pool.*Shown as resource*                      |
| **nomad.memberlist.gossip.median**(gauge)                      | Median number of members in the gossip pool.*Shown as resource*                       |
| **nomad.memberlist.msg.alive**(gauge)                          | Number of message from alive members.*Shown as resource*                              |
| **nomad.memberlist.tcp.accept**(gauge)                         | Number of accepted TCP connections.*Shown as resource*                                |
| **nomad.nomad.blocked\_evals.total\_blocked**(gauge)           | Number of blocked evaluation.*Shown as job*                                           |
| **nomad.nomad.blocked\_evals.total\_escaped**(gauge)           | Number of blocked evaluation that are escaped.*Shown as job*                          |
| **nomad.nomad.blocked\_evals.total\_quota\_limit**(gauge)      | Limit quota of evaluations.*Shown as job*                                             |
| **nomad.nomad.broker.total\_blocked**(gauge)                   | Evaluations that are blocked until an existing evaluation for the same job completes. |
| **nomad.nomad.broker.total\_ready**(gauge)                     | Number of evaluations ready to be processed.                                          |
| **nomad.nomad.broker.total\_unacked**(gauge)                   | Evaluations dispatched for processing but incomplete.                                 |
| **nomad.nomad.broker.total\_waiting**(gauge)                   | Number of evaluations waiting to be processed.                                        |
| **nomad.nomad.client.get\_client\_allocs.95percentile**(gauge) | The 95 percentile of nomad client allocated.                                          |
| **nomad.nomad.client.get\_client\_allocs.avg**(gauge)          | The average number of nomad client allocated.                                         |
| **nomad.nomad.client.get\_client\_allocs.count**(gauge)        | The number of nomad client allocated.                                                 |
| **nomad.nomad.client.get\_client\_allocs.max**(gauge)          | The maximum number of nomad client allocated.                                         |
| **nomad.nomad.job\_summary.complete**(gauge)                   | Total CPU resources consumed by the task in the user space.                           |
| **nomad.nomad.job\_summary.failed**(gauge)                     | Number of failed allocations for a job.                                               |
| **nomad.nomad.job\_summary.lost**(gauge)                       | Number of lost allocations for a job.                                                 |
| **nomad.nomad.job\_summary.queued**(gauge)                     | Number of queued allocations for a job.                                               |
| **nomad.nomad.job\_summary.running**(gauge)                    | Number of running allocations for a job.                                              |
| **nomad.nomad.job\_summary.starting**(gauge)                   | Number of starting allocations for a job.                                             |
| **nomad.nomad.job\_status.dead**(gauge)                        | Number of dead jobs.*Shown as job*                                                    |
| **nomad.nomad.job\_status.pending**(gauge)                     | Number of pending jobs.*Shown as job*                                                 |
| **nomad.nomad.job\_status.running**(gauge)                     | Number of running jobs.*Shown as job*                                                 |
| **nomad.nomad.acl.bootstrap**(gauge)                           | Time elapsed for ACL.Bootstrap RPC call.*Shown as nanosecond*                         |
| **nomad.nomad.acl.delete\_policies**(gauge)                    | Time elapsed for ACL.DeletePolicies RPC call.*Shown as nanosecond*                    |
| **nomad.nomad.acl.delete\_tokens**(gauge)                      | Time elapsed for ACL.DeleteTokens RPC call.*Shown as nanosecond*                      |
| **nomad.nomad.acl.get\_policies**(gauge)                       | Time elapsed for ACL.GetPolicies RPC call.*Shown as nanosecond*                       |
| **nomad.nomad.acl.get\_policy**(gauge)                         | Time elapsed for ACL.GetPolicy RPC call.*Shown as nanosecond*                         |
| **nomad.nomad.acl.get\_token**(gauge)                          | Time elapsed for ACL.GetToken RPC call.*Shown as nanosecond*                          |
| **nomad.nomad.acl.get\_tokens**(gauge)                         | Time elapsed for ACL.GetTokens RPC call.*Shown as nanosecond*                         |
| **nomad.nomad.acl.list\_policies**(gauge)                      | Time elapsed for ACL.ListPolicies RPC call.*Shown as nanosecond*                      |
| **nomad.nomad.acl.list\_tokens**(gauge)                        | Time elapsed for ACL.ListTokens RPC call.*Shown as nanosecond*                        |
| **nomad.nomad.rpc.query**(gauge)                               | Number of RPC queries.                                                                |
| **nomad.nomad.rpc.request**(gauge)                             | Number of RPC requests being handled.                                                 |
| **nomad.runtime.alloc\_bytes**(gauge)                          | Memory utilization.*Shown as byte*                                                    |
| **nomad.runtime.free\_count**(gauge)                           | Count of objects freed from heap by go runtime GC.                                    |
| **nomad.runtime.gc\_pause\_ns**(gauge)                         | Go runtime GC pause times.*Shown as nanosecond*                                       |
| **nomad.runtime.heap\_objects**(gauge)                         | Number of objects on the heap. General memory pressure indicator.                     |
| **nomad.runtime.num\_goroutines**(gauge)                       | Number of goroutines and general load pressure indicator.                             |
| **nomad.runtime.sys\_bytes**(gauge)                            | Go runtime GC metadata size.*Shown as byte*                                           |
| **nomad.runtime.total\_gc\_pause\_ns**(gauge)                  | Total elapsed go runtime GC pause times.*Shown as nanosecond*                         |
| **nomad.runtime.total\_gc\_runs**(gauge)                       | Count of go runtime GC runs.                                                          |

### Events{% #events %}

The Nomad check does not include any events.

### Service Checks{% #service-checks %}

The Nomad check does not include any service checks.

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
