Package Summary

CloudWatch Logger node for publishing logs to AWS CloudWatch Logs


The cloudwatch_logger node enables logs generated in a ROS system to get sent to Amazon CloudWatch Logs. Out of the box, this node provides the ability to subscribe to the /rosout_agg (rosout aggregated) topic, which all logs using the ROS logging framework will be published to, and sends logs to the Amazon CloudWatch Logs service. Logs can be sent to Amazon CloudWatch Logs selectively based on log severity. The cloudwatch_logger node can also subscribe to other topics if logs are not sent to /rosout_agg, and it is able to unsubscribe to the /rosout_agg topic for getting logs.

The cloudwatch_logger node wraps the aws-sdk-c++ in a ROS service API.

Amazon CloudWatch Logs Summary: Amazon CloudWatch Logs can monitor applications and systems using log data. You can create alarms in CloudWatch and receive notifications of particular API activity as captured by CloudTrail and use the notification to perform troubleshooting. By default, logs are kept indefinitely and never expire. You can adjust the retention policy for each log group, keeping the indefinite retention, or choosing a retention periods between 10 years and one day. Amazon CloudWatch Logs stores your log data in highly durable storage.

Features in Active Development: - Offline caching: now, a batch of logs will be dropped if the node fails to send them to AWS CloudWatch Logs. We will enable offline caching and try to save logs. - Send logs to different log groups/streams: now, one node will send logs to one log stream within one log group. We will enable a node to send logs to different log groups/streams.

Keywords: ROS Application logs, System logs, Amazon CloudWatch Logs service


The source code is released under an Apache 2.0.

Supported ROS Distributions

  • Kinetic
  • Lunar
  • Melodic

Wiki: cloudwatch_logger (last edited 2018-11-28 21:26:01 by RyanNewell)