## repository: https://code.ros.org/svn/ros <<PackageHeader(rosout)>> <<TOC(4)>> == Overview == rosout is the name of the console log reporting mechanism in ROS. It can be thought as comprising several components: * The [[#rosapi|`rosout`]] node for subscribing, logging, and republishing the messages. * The [[#rosout_topic|/rosout]] topic * The [[#rosout_agg|/rosout_agg]] topic for subscribing to an aggregated feed * <<MsgLink(rosgraph_msgs/Log)>> message type, which defines standard fields as well as [[Verbosity Levels|verbosity levels]]. * [[#client_apis|client APIs]] to facilitate easy use of the rosout reporting mechanism * GUI tools, like [[rqt_console]], for viewing the console log messages. The `rosout` ''package'' only provides the `rosout` node. <<Anchor(client_apis)>> == Client APIs == Individual client APIs provide different ways of broadcasting to rosout: * [[roscpp]] uses [[rosconsole]], which is described in the [[roscpp/Overview/Logging|roscpp logging overview]]. * [[rospy]]'s implementation is detailed in the [[rospy/Overview/Logging|rospy logging overview]]. == Verbosity Levels == Please see [[Verbosity Levels|Verbosity Level Best Practices]]. <<Anchor(rosapi)>> == ROS API/Nodes == The `/rosout` node is part of [[roscore]] and has preferential startup order. {{{ #!clearsilver CS/NodeAPI name = rosout desc = rosout subscribes to the standard `/rosout` topic, records these messages in a textual log file, and rebroadcasts the messages on `/rosout_agg`. sub { 0.name = /rosout 0.type = rosgraph_msgs/Log 0.desc = Standard ROS topic for publishing logging messages. } pub { 0.name = /rosout_agg 0.type = rosgraph_msgs/Log 0.desc = Aggregated feed of messages published to `/rosout`. } }}} <<Anchor(rosout_topic)>> === /rosout === ROS [[Client Libraries|client libraries]] are required to publish console logging messages to the `/rosout` topic as a standard interface. <<Anchor(rosout_agg)>> === /rosout_agg === `/rosout_agg` is an aggregated feed for subscribing to console logging messages. This aggregated topic is offered as a performance improvement: instead of connecting to individual ROS nodes to receive their console messages, the aggregated message feed can instead be received directly from the `rosout` node. === rosout.log === `rosout` node by default logs all messages into `rosout.log` in the ROS log directory. <<Version(Melodic)>> This can be disabled by setting environment variable `ROSOUT_DISABLE_FILE_LOGGING` to `True` when launching [[roscore]]. By default, `rosout.log` prints `topic` name for every message. <<Version(Melodic)>> This behavior can be changed by setting boolean ROS parameter `/rosout/omit_topics` at any time. == Roadmap/Stability == No future development on `rosout` is currently planned. ##Please create this page with template "PackageReviewIndex" ## CategoryPackage ## M3Package