Damon is a terminal user interface (TUI) for Nomad. It provides functionality to observe and interact with Nomad resources such as Jobs, Deployments, or Allocations. Interactions include:
- View Jobs and Job allocations
- View Deployments
- View Namespaces
- Show Task events
- Show Job status/information (equally to
$ nomad status <job>
) - Show Logs in an active log stream (including filtering + highlighting).
- and more...
Additional Notes
Damon is in an early stage and is under active development. We are working on improving the performance and adding new features to Damon. Please take a look at the Damon project board to see what features you can expect in near future. If you find a bug or you have great ideas how Damon can be improved feel free to open an issue. To avoid duplicates, please check the project board before submitting one. Thank you!
--> Coming soon
Make sure you have your go environment setup:
- Clone the project
- Run
$ make build
to build the binary - Run
$ make run
to run the binary - You can use
$ make install-osx
on a Mac to cp the binary to/usr/local/bin/damon
or
$ go install ./cmd/damon
Once Damon
is installed and avialable in your path, simply run:
$ damon
Damon reads the following environment variables on startup:
NOMAD_TOKEN
NOMAD_ADDR
NOMAD_REGION
NOMAD_NAMESPACE
NOMAD_HTTP_AUTH
NOMAD_CACERT
NOMAD_CAPATH
NOMAD_CLIENT_CERT
NOMAD_CLIENT_KEY
NOMAD_TLS_SERVER_NAME
NOMAD_SKIP_VERIFY
You can read about them in detail here.
On every table or text view, you can use:
k
orarrow up
to navigate upj
orarrow down
to navigate down
- Show Jobs:
ctrl-j
- Show Deployments:
ctrl-d
- Show Namespaces:
ctrl-n
- Jump to a Jobs Allocations:
ctrl-j
- Switch Namespace:
s
- Quit:
ctrl-c
- Show Allocations for a Job:
<ENTER>
(on the selected job) - Show TaskGroups for a Job:
<t>
(on the selected job) - Show information for a Job:
<i>
(on the selected job) - Filter Job:
</>
(on the selected job) - Show Job Info:
i
(on the selected job)
- Show logs on
STDOUT
for a Task:<ENTER>
- Show logs on
STDERR
for a Task:<ctrl-e>
- Show events for a Task:
<e>
When Damon displays logs, you can navigate through the logs using j
, k
, G
, and g
.
- To filter logs you can hit
/
which will open an input field to enter the filter string. - To highligh logs you can hit
h
. This will also open an input field to enter the highlighting string. - Hit
s
to stop a log stream. - Hit
r
to resume a log stream.