#real-time #copper #middleware #task

cu-consolemon

A monitoring TUI for Copper. See the main Copper repository for more information.

6 releases (3 breaking)

new 0.6.0 Jan 21, 2025
0.5.1 Dec 5, 2024
0.4.1 Nov 15, 2024
0.4.0 Oct 29, 2024
0.3.1 Oct 12, 2024

#333 in Robotics

Download history 207/week @ 2024-10-12 11/week @ 2024-10-19 132/week @ 2024-10-26 36/week @ 2024-11-02 69/week @ 2024-11-09 66/week @ 2024-11-16 17/week @ 2024-11-23 283/week @ 2024-11-30 67/week @ 2024-12-07 19/week @ 2024-12-14 1/week @ 2024-12-21 3/week @ 2025-01-04 5/week @ 2025-01-11 98/week @ 2025-01-18

106 downloads per month
Used in 4 crates (3 directly)

Apache-2.0 and maybe GPL-3.0-only

150KB
1.5K SLoC

ConsoleMon

Tasks

Note: This is part of the Copper project. See the main project page for context.

The ConsoleMon is a simple monitor that display the current state of the robot to the console in an TUI. It is useful for monitoring a robot quickly over ssh or in a terminal.

Usage

Add it as a dependency in your Cargo.toml:

[dependencies]
cu-consolemon = "*"

And in you copperconfig.ron:

(
    tasks: [
        ( ...
        ),
     ],
    cnx: [
        ( ... ),
    ],
    
    monitor: (
        type: "cu_consolemon::CuConsoleMon", // <== Here
    )
)

The monitor has 4 screens:

  • SysInfo: A quick system information screen (CPU, Memory, Distrib ...)
  • DAG: A Directed Acyclic Graph of the tasks with their real time error status and short string info.
  • Latencies: A list of the tasks with their real time latencies & assorted statistics (Jitter, Min, Max, Avg).
  • Debug Output debug_pane: A pane that displays debug logs in real-time.

debug_pane feature

Enabled by default. Disable with default-features = false. Displays real-time logs from log, cu29-log and stderr.

Dependencies

~28–63MB
~1M SLoC