ROS2 node that show and filter /rosout topic by:
- log level
- node names
- text in message
- fuzzy search
- regex search
export ROSDISTRO_INDEX_URL=file://`pwd`/index-v4.yaml
export ROS_DISTRO=humble
rosdep update --rosdistro humble
pip install textual
# textual-dev # for development
pip install rapidfuzzros2 run terminlog viewer.py#run with predefine nodes name
ros2 run terminlog viewer.py --ros-args -p nodes_to_capture:="[node_a, node_b]"
# or
ros2 run terminlog viewer.py --ros-args --params-file params.yaml/terminlog_viewer:
ros__parameters:
log_queue_size: 100
nodes_to_capture:
- node_a
- node_bfilter log level show all message with selected filter and above
- filter unselected node names
Filter by node name or message use fuzzy or regex filters
Enabled / Disabled realtime
When realtime enable each message push the vertical scroll down disabled allow the user to scroll up without interference
Clear / reset all filters
clear: clear storage, terminlog save X last log event can config by log_queue_size parameter, the action clear this storage
docker run -it --rm \
--net host \
--user user \
--hostname test \
-v `pwd`/deb:/tmp/debs \
humble:dev \
/bin/bash
The node need to run as separate terminal.
ExecuteProcess(
cmd=['gnome-terminal', '--','ros2', "run", "terminlog", "viewer.py"],
output='screen',
shell=False
)


