Skip to content

Application for monitoring a Nuts network. Used for security and health monitoring.

License

Notifications You must be signed in to change notification settings

nuts-foundation/nuts-monitor

Repository files navigation

nuts-monitor

Application for monitoring a Nuts network. Used for security and health monitoring.

Building and running

Production

To build for production:

npm install
npm run dist
go run .

This will serve the front end from the embedded filesystem.

Development

During front-end development, you probably want to use the real filesystem and webpack in watch mode:

npm install
npm run watch
go run . live

Generate APIs with:

make apis

Test

There's a small test suite that can be run with

make test

Docker

docker run -p 1313:1313 nutsfoundation/nuts-monitor

Configuration

The location of the config file can be set using a cmdline flag or environment variable:

./monitor --configfile=./server.config.yaml
NUTS_CONFIGFILE=./server.config.yaml ./monitor

You can also configure the application using environment variables (capitalize all keys and prefix with NUTS_):

NUTS_NUTSNODEADDR=http://nuts-node-address:1323 ./monitor

When running in Docker without a config file mounted at /app/server.config.yaml it will use the default configuration, or you can change the command parameters.

Node Address

You specify the Nuts node address with nutsnodeaddr (NUTS_NUTSNODEADDR). If you've bound the /internal endpoints to a different HTTP interface, you can specify it using nutsnodeinternaladdr (NUTS_NUTSNODEINTERNALADDR).

Authentication

The nutsnodeapikeyfile config parameter should point to a PEM encoded private key file. The corresponding public key should be configured on the Nuts node in SSH authorized keys format. nutsnodeapiuser Is required when using Nuts node API token security. It must match the user in the SSH authorized keys file. nutsnodeapiaudience must match the config parameter set in the Nuts node. Check https://nuts-node.readthedocs.io for Nuts node API security details.

Health check

The monitor exposes a status and health check endpoints on /status and /health. The health endpoint returns a sprint actuator style body.

Technology Stack

Frontend framework is vue.js

Icons are from https://heroicons.com

CSS framework is https://tailwindcss.com

About

Application for monitoring a Nuts network. Used for security and health monitoring.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •