#real-time #copper #middleware #task

cu-consolemon

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

10 releases (4 breaking)

new 0.7.0 Mar 13, 2025
0.6.2 Jan 30, 2025
0.5.1 Dec 5, 2024
0.4.1 Nov 15, 2024
0.3.1 Oct 12, 2024

#333 in Robotics

Download history 16/week @ 2024-11-22 219/week @ 2024-11-29 130/week @ 2024-12-06 22/week @ 2024-12-13 2/week @ 2024-12-20 1/week @ 2025-01-03 6/week @ 2025-01-10 100/week @ 2025-01-17 184/week @ 2025-01-24 238/week @ 2025-01-31 17/week @ 2025-02-07 23/week @ 2025-02-14 26/week @ 2025-02-21 8/week @ 2025-02-28 56/week @ 2025-03-07

116 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