monitor/README.md

2.0 KiB

noxis

Logo

noxis - monitoring util with special attention on

  1. Speed
  2. Multiplatform execution (with amd64 and riscv64 support)
  3. Smallness and Optimization

It's main tasks are

  • to manage the processes that occur inside the container or in the target system.
  • collect data (metrics);
  • monitor the availability of system files necessary for the operation of processes;
  • check whether there is a connection between processes and services, where the information comes from or where it is sent.

Build requirements

  • rustup (>=1.27.1)
  • gcc-riscv64-unknown-elf
  • build-essential
  • gcc-riscv64-linux-gnu
  • binutils-riscv64-linux-gnu

Key items in repo

  1. Main daemon noxis-rs
  2. CLI noxis-cli
  3. Unix-Socket to Web-Socket Proxy for integrations noxis-proxy

Setting up device

Download and execute rustup.sh (for building)

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Building

  1. Clone noxis
  git clone https://github.com/prplV/noxis
  1. Enter project's dir and set up toolchain list to compile code for RISC-V or x86_64
  cd noxis/ && rustup target add riscv64gc-unknown-linux-gnu && rustup target add x86_64-unknown-linux-gnu

[!NOTE]
Cargo is configured to build an apputil for x86_64/linux defaultly. RISCV-based compilation is optional.

3.1. Release build of util for x86_64/linux

cargo x86_64

3.2. Release build of util for riscv64/linux

cargo riscv64

3.3. Release build of util for both (riscv64 and x86_64)

cargo unibuild

Execution DAEMON for x86_64/linux

  1. If you work on x86_64/linux machine execute:
./target/x86_64-unknown-linux-gnu/release/noxis-rs

or

cargo run_x86
  1. If you work on riscv64/linux machine execute:
./target/riscv64gc-unknown-linux-gnu/release/noxis-rs

or

[!CAUTION]
cargo run_risc command is a temp broken. Better use the first one

cargo run_risc