# README
nview
nview is a local monitoring tool for a Cardano Node (cardano-node) meant to complement remote monitoring tools by providing a local view of a running node from the command line. It's a TUI (terminal user interface) designed to fit most screens.

Design and functionality
The goal with nview is to provide an alternative to the Guild LiveView (gLiveView.sh) shell scripts which is shipped as a single binary with all of the functionality included natively. This allows the tool to be more portable to non-Linux systems by using Go standard library functionality.
The design is more in line with a 12-factor application, with no config files or other on-disk requirements. Functionality is controlled via environment variables within the application's context. This prevents the application from being a drop-in replacement for gLiveView for Cardano Node administrators, but unlocks the ability to add functionality beyond that easily attainable with a shell script.
Usage
Running nview against a running Cardano Node will work out of the box with a default Cardano Node configuration, which exposes metrics in Prometheus data format on a specific port.
./nview
Or, from source:
go run .
Configuration
Configuration can be controlled by either a configuration file or environment variables. In cases where both are present, the environment variable takes precedence.
Configuration (env)
The following environment variables control the behavior of the application.
NODE_NAME
- Changes the name displayed by nview, default is "Cardano Node", maximum 19 charactersNETWORK
- Short-cut environment variable to use a default configuration for the given known named network. OverridesCARDANO_NETWORK
, default ""CARDANO_NETWORK
- Named network configured on the Cardano Node, default is "mainnet"PROM_HOST
- Sets the host address used to fetch Prometheus metrics from a Cardano Node, default is "127.0.0.1"PROM_PORT
- Sets the host port used to fetch Prometheus metrics from a Cardano Node, default is 12798PROM_TIMEOUT
- Sets the maximum number of seconds to wait for response when polling a Cardano Node for Prometheus metrics, default is 3
Configuration (YAML)
To use a configuration file, run nview
with a command line flag to set the
file to load as a configuration.
./nview -config /path/to/config.yml
config.yaml:
app:
nodeName: Cardano Node
network:
node:
network: mainnet
port: 3001
prometheus:
host: 127.0.0.1
port: 12798
timeout: 3
An example configuration is provided at config.yaml.example
.
GeoLocation
We embed free GeoLite2 city data created by MaxMind, available from https://www.maxmind.com and licensed under CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/