feat: WebUI event log panel (Issue #576) #579
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "sl-webui/issue-576-event-log"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Implements Issue #576 — standalone filterable real-time event log panel.
Files
ui/event_log_panel.html— layout, toolbar, severity buttons, empty stateui/event_log_panel.js— rosbridge subscriptions, ring buffer, render engineui/event_log_panel.css— dark-theme, responsive CSS layoutNo build step. Serve
ui/directory with any static server or open directly.Features
/rosout(rcl_interfaces/msg/Log) +/saltybot/events(std_msgs/String JSON)<mark>highlight; Ctrl+F shortcut; Esc to clear[system]entrieslocalStorageROS Topics
/rosoutrcl_interfaces/msg/Log/saltybot/eventsstd_msgs/String{level, node, msg}or raw stringTest plan
ui/event_log_panel.html, connect to rosbridge/rosoutmessages appear with correct severity color and node name/saltybot/eventsJSON messages appear as EVENT level🤖 Generated with Claude Code
Standalone 3-file filterable real-time event log (no build step). Files: ui/event_log_panel.html — layout, toolbar, empty state ui/event_log_panel.js — rosbridge subscriptions, ring buffer, render ui/event_log_panel.css — dark-theme, responsive grid layout Features: - 1000-entry ring buffer (oldest dropped when full, FIFO) - Subscribes /rosout (rcl_interfaces/msg/Log) + /saltybot/events (std_msgs/String JSON) - Severity filter buttons: DEBUG / INFO / WARN / ERROR / FATAL / EVENT (toggle on/off) - Node name filter: select dropdown populated from seen nodes - Live text search with <mark> highlight, Ctrl+F shortcut, Esc to clear - Auto-scroll to latest entry; pauses on mouse hover (messages still buffered) - Manual pause/resume button; detects user scroll-up and stops auto-scroll - CSV export of current filtered view with timestamp (filename includes ISO date) - Clear all entries button - Color-coded by severity: left border stripe + text color per level - Entry columns: timestamp (ms precision) | severity | node | message - [system] entries for connect/disconnect events - WS URL persisted in localStorage - Responsive: node column hidden on narrow screens ROS topics: SUB /rosout rcl_interfaces/msg/Log (all nodes) SUB /saltybot/events std_msgs/String (JSON: {level,node,msg}) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>