Skip to content

ROS diagnostics publisher for camp health + resource footprint #157

Description

@rolker

Part of #154.

Summary

Report camp's own health + resource footprint over ROS so the operator framework
and deployment tooling can see it. camp is already a ROS node (camp_map_ros), so
diagnostic_msgs/DiagnosticArray is the idiomatic channel.

Scope

  • Publish diagnostic_msgs/DiagnosticArray from camp_map_ros on a timer,
    carrying the ResourceSnapshot (child 1) as key/values (rss_mb, gpu_mb, cpu_pct,
    threads, fds, live_tile_count, …) and an overall level OK/WARN/ERROR (from child
    2's thresholds + GUI watchdog).
  • A lightweight heartbeat (the periodic publish itself is the liveness signal;
    absence = camp down/hung).
  • Plugs into rqt_robot_monitor and deployment-mode logging (the deployment skill
    can log/alert on WARN/ERROR).

Considerations

  • Diagnostics publish must be cheap and never block the GUI thread.
  • Node namespace / topic name consistent with the operator-station conventions.
  • Degrade cleanly when camp runs without a live ROS connection (don't error).

Depends on

Child 1 (snapshot), child 2 (health level / watchdog).


Authored-By: Claude Code Agent
Model: Claude Opus 4.8

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions