13db600665
Alloc exec only works when task is passed as a flag and not an arg. Alloc logs currently accepts either, but alloc signal and restart only accept task as an arg. This adds -task as a flag to the other alloc commands to make the cli UX consistent. If task is passed as a flag and an arg, it ignores the arg.
117 lines
2.9 KiB
Plaintext
117 lines
2.9 KiB
Plaintext
---
|
|
layout: docs
|
|
page_title: 'Commands: alloc logs'
|
|
description: |
|
|
Stream the logs of a task.
|
|
---
|
|
|
|
# Command: alloc logs
|
|
|
|
**Alias: `nomad logs`**
|
|
|
|
The `alloc logs` command displays the log of a given task.
|
|
|
|
## Usage
|
|
|
|
```plaintext
|
|
nomad alloc logs [options] <allocation> <task>
|
|
```
|
|
|
|
This command streams the logs of the given task in the allocation. If the
|
|
allocation is only running a single task, the task name can be omitted.
|
|
Optionally, the `-job` option may be used in which case a random allocation from
|
|
the given job will be chosen.
|
|
|
|
Task name may also be specified using the `-task` option rather than a command
|
|
argument. If task name is given with both an argument and the `-task` option,
|
|
preference is given to the `-task` option.
|
|
|
|
When ACLs are enabled, this command requires a token with the `read-logs`,
|
|
`read-job`, and `list-jobs` capabilities for the allocation's namespace.
|
|
|
|
## General Options
|
|
|
|
@include 'general_options.mdx'
|
|
|
|
## Logs Options
|
|
|
|
- `-stderr`: Display stderr logs.
|
|
|
|
- `-verbose`: Display verbose output.
|
|
|
|
- `-job`: Use a random allocation from the specified job, preferring a running
|
|
allocation.
|
|
|
|
- `-task`: Specify the task to view the logs.
|
|
|
|
- `-f`: Causes the output to not stop when the end of the logs are reached, but
|
|
rather to wait for additional output.
|
|
|
|
- `-tail`: Show the logs contents with offsets relative to the end of the logs.
|
|
If no offset is given, -n is defaulted to 10.
|
|
|
|
- `-n`: Sets the tail location in best-efforted number of lines relative to the
|
|
end of the logs.
|
|
|
|
- `-c`: Sets the tail location in number of bytes relative to the end of the
|
|
logs.
|
|
|
|
Note that the `-no-color` option applies to Nomad's own output. If the task's
|
|
logs include terminal escape sequences for color codes, Nomad will not remove
|
|
them.
|
|
|
|
## Examples
|
|
|
|
```shell-session
|
|
$ nomad alloc logs eb17e557 redis
|
|
foobar
|
|
baz
|
|
bam
|
|
|
|
$ nomad alloc logs -stderr eb17e557 redis
|
|
[ERR]: foo
|
|
[ERR]: bar
|
|
|
|
$ nomad alloc logs -job example
|
|
[ERR]: foo
|
|
[ERR]: bar
|
|
|
|
$ nomad alloc logs -tail -n 2 eb17e557 redis
|
|
foobar
|
|
baz
|
|
|
|
$ nomad alloc logs -tail -f -n 3 eb17e557 redis
|
|
foobar
|
|
baz
|
|
bam
|
|
<blocking>
|
|
```
|
|
|
|
Specifying task name with the `-task` option:
|
|
|
|
```shell-session
|
|
$ nomad alloc logs -task redis eb17e557
|
|
```
|
|
|
|
If task name is specified using both options, the command argument is ignored.
|
|
The following will output the logs from the "redis" task only, not the "api" task:
|
|
|
|
```shell-session
|
|
$ nomad alloc logs -task redis eb17e557 api
|
|
```
|
|
|
|
## Using Job ID instead of Allocation ID
|
|
|
|
Setting the `-job` flag causes a random allocation of the specified job to be
|
|
selected. Nomad will prefer to select a running allocation ID for the job, but
|
|
if no running allocations for the job are found, Nomad will use a dead
|
|
allocation.
|
|
|
|
```plaintext
|
|
nomad alloc logs -job <job-id> <task>
|
|
```
|
|
|
|
Choosing a specific allocation is useful for debugging issues with a specific
|
|
instance of a service. For other operations using the `-job` flag may be more
|
|
convenient than looking up an allocation ID to use.
|