ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Killing a node that is set to respawn=true is not possible as explained here
However, reading the output of the node from another terminal or even GUI is totally feasible!
ROS_[DEBUG/INFO/WARN/ERROR]_STREAM...
for C++ instead of cout (rospy.log[debug/info...]
instead of print
for python).output=screen
from your launch, this will avoid having the log printed out in the same terminal from which you launch all your nodesrosconsole echo /node/name
Also note that you can use different logger names for different part of your code, and filter the logs you need by setting different log level for each logger via rosconsole, rqt_logger_level, or swri_console. If you need more debugging tools, you can event change the LOG_FORMAT to include the node name, function name, or even the ligne of code from which the log comes from.
Hope it helps !