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 buildto build the binary - Run
$ make runto run the binary - You can use
$ make install-osxon 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_TOKENNOMAD_ADDRNOMAD_REGIONNOMAD_NAMESPACENOMAD_HTTP_AUTHNOMAD_CACERTNOMAD_CAPATHNOMAD_CLIENT_CERTNOMAD_CLIENT_KEYNOMAD_TLS_SERVER_NAMENOMAD_SKIP_VERIFY
You can read about them in detail here.
On every table or text view, you can use:
korarrow upto navigate upjorarrow downto 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
STDOUTfor a Task:<ENTER> - Show logs on
STDERRfor 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
sto stop a log stream. - Hit
rto resume a log stream.