Skip to main content

Reticulum Monitoring Daemon

Project description

RNMon - Reticulum Application Monitoring Daemon

RNMon is a simple monitoring daemon designed to monitor the status of multiple RNS applications and push the metrics over http using the influx line protocol.

Supported Applications

  • Reticulum Transport Nodes (Also some metrics for non transport nodes)
  • LXMF Propagation Nodes

Installing

Package

The package is available in PyPI, install it with your python package manager of choice.

I recommend using uv since it cleanly manages an environment if you run or install it as a tool:

Execute it simply: uvx rnmon

Install it globally (but in its own environment): uv tool install rnmon and run rnmon

Container

There is a container image available at ghcr.io/lbataha/rnmon. You can use the latest tag, or specify the version matching the git tag you want, there are also image builds available in github actions.

The repo contains a Dockerfile and an example docker-compose.yml, but you can run it simply with:

docker run --name rnmon -v /path/to/config:/config ghcr.io/lbataha/rnmon:latest

Configuration

Configure the daemon via scraping.yaml, the example config has comments explaining the options.

The configuration for reticulum is auto-discovered, but you can specify the location of the configuration directory using the --rns-config argument.

Operational principles

The metric pusher and all targets are executed in their own thread. The main thread starts a new RNS instance, and closes it on exit.

A link is established for each scrape target to reduce network overhead. If a link is broken for any reason, the thread is terminated and restarted - this avoids having to deal with the built-in RNS link retry mechanisms, their associated timeouts and any edge cases caused by using shared RNS intances. This might be changed in the future if RNS fixes the issues particular to this use case.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rnmon-0.3.2.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rnmon-0.3.2-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file rnmon-0.3.2.tar.gz.

File metadata

  • Download URL: rnmon-0.3.2.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.8

File hashes

Hashes for rnmon-0.3.2.tar.gz
Algorithm Hash digest
SHA256 d26ec412a7684b8ac0c2e60eb383637acd5186640fccd6a7c541a252aaad7a51
MD5 7441e544e9f528b0247564af0103eae1
BLAKE2b-256 f1bd6f7c4daf52256b4f73c4e34d64774832406573738d5bf22e908413ecdd91

See more details on using hashes here.

File details

Details for the file rnmon-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: rnmon-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.8

File hashes

Hashes for rnmon-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 def544db7b8697fb406f18641f2ea6e004603e5e0168c0dcedeae06d223fef74
MD5 b3c64e584e1845067793c95e9e459301
BLAKE2b-256 c3d44f55707759aaa6a3701421af5cab927647418ca7b212c36ad5bba6423493

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page