---
layout: docs
page_title: 'Commands: monitor'
description: |
  Stream the logs of a running nomad agent.
---

# Command: monitor

The `nomad monitor` command streams log messages for a given agent.

## Usage

```plaintext
nomad monitor [options]
```

The nomad monitor command can be used to stream the logs of a
running Nomad agent. Monitor will follow logs and exit when
interrupted or until the remote agent quits.

The power of the monitor command is that it allows you to log
the agent at a relatively high log level (such as "warn"),
but still access debug logs and watch the debug logs if necessary.
The monitor command also allows you to specify a single client node id to follow.

When ACLs are enabled, this command requires a token with the `agent:read`
capability.

## General Options

@include 'general_options_no_namespace.mdx'

## Monitor Options

- `-log-level`: The log level to use for log streaming. Defaults to `info`.
  Possible values include `trace`, `debug`, `info`, `warn`, `error`

- `-log-include-location`: Include file and line information in each log line.
  The default is `false`.

- `-node-id`: Specifies the client node-id to stream logs from. If no
  node-id is given the nomad server from the -address flag will be used.

- `-server-id`: Specifies the nomad server id to stream logs from. Accepts
  server names from `nomad server members` and also a special `leader` option
  which will target the current leader.

- `-json`: Stream logs in json format

## Examples

```shell-session
$ nomad monitor -log-level=DEBUG -node-id=a57b2adb-1a30-2dda-8df0-25abb0881952
2019-11-04T12:22:08.528-0500 [DEBUG] http: request complete: method=GET path=/v1/agent/health?type=server duration=1.445739ms
2019-11-04T12:22:09.892-0500 [DEBUG] nomad: memberlist: Stream connection from=127.0.0.1:53628

$ nomad monitor -log-level=DEBUG -json=true
{"@level":"debug","@message":"request complete"...}

```
