Repository Summary
Checkout URI | https://github.com/fujitatomoya/rcl_logging_syslog.git |
VCS Type | git |
VCS Version | humble |
Last Updated | 2025-06-05 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
rcl_logging_syslog | 0.1.0 |
README
rcl_logging_syslog 🚢🚀🚂
rcl_logging_syslog is alternative logging backend implementation that can be used for ROS 2 application via rcl_logging_interface.
rcl_logging_syslog uses SYSLOG(3) to send the log data to rsyslog a.k.a rocket-fast system for log processing 🚀.
The main objective is that Enabling ROS 2 logging system with Cloud-Native Log Management and Observability.
see overview slide deck for more information.
Motivation
The logging data is critical especially for entire system observability and status, so that application can alert the administrator or even give the feedback to the system with adjusting the parameter. This importance rises once it comes to robotics and robot application, especially distributed system such as ROS 2 or edge computing because we must be able to specify what went wrong in the 1st place with these logging data.
rsyslog is available in default Ubuntu distribution managed by system service, performative, and many configuration supported including log data pipeline. So that user can choose the logging configuration depending on the application requirement and use case, sometimes file system sink, sometimes forwarding to remote rsyslogd, or even FluentBit.
FluentBit is a Fast Log Processor and Forwarder part of Graduated Fluentd Ecosystem and a CNCF sub-project.
Demonstration
See how it works 🔥
- rsyslog / FluebtBit
https://github.com/user-attachments/assets/bdb05bf7-92b2-4b9a-8f20-3d3b803a7a86
- rsyslog / Fluentd / Loki / Grafana
https://github.com/user-attachments/assets/4a1aae42-5c55-4f31-9198-8c7c246244ca
Tutorials
Supported ROS Distribution
Distribution | Supported | Branch |
---|---|---|
Rolling Ridley | ✅ |
rolling (Development) |
Kilted Kaiju | ✅ | kilted |
Jazzy Jalisco | ✅ | jazzy |
Humble Hawksbill | ✅ | humble |
Installation
Prerequisites
- rsyslog installation
rcl_logging_syslog requires rsyslog
package, which Ubuntu should have already in default.
But if you are using container, the situation is bit different from host system since there is no system services or rsyslogd
is running by default.
In the case of container, we need to install rsyslog
packages in the container root file system.
[!NOTE] We can enable the container with host system privileges but that is NOT recommended, especially for security.
### Install rsyslog package
apt install rsyslog
- create
ros
directory forrsyslog
.
The following commands require root
permission.
/var/log/ros
is the root directory for rcl_logging_syslog
, all logs are expected to be stored under this root directory.
mkdir -p /var/log/ros
chown syslog:adm /var/log/ros
[!WARNING] For production, user needs to configure appropriate group if necessary but owner should be
syslog
. Otherwisersyslogd
may meet the permission problem for the file system.
- rsyslog service check
If you are running the application on host system, check the rsyslog
system service.
systemctl status rsyslog
If you are running the application on container environment, start the rsyslogd
daemon process.
/usr/sbin/rsyslogd -n -iNONE
Or you prefer to use rsyslogd
in the host system from the application in the container, you need to bind the /dev/log
to the container via -v /dev/log:/dev/log
, so that the application running in the container can open the Unix Domain Socket for rsyslogd
running in the host system.
In this setting, all rsyslogd
configuration needs to be set in the host system.
- fluent-bit installation
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
Contributors must sign-off each commit by adding a Signed-off-by: ...
line to commit messages to certify that they have the right to submit
the code they are contributing to the project according to the
Developer Certificate of Origin (DCO).
Repository Summary
Checkout URI | https://github.com/fujitatomoya/rcl_logging_syslog.git |
VCS Type | git |
VCS Version | jazzy |
Last Updated | 2025-06-05 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
rcl_logging_syslog | 0.1.0 |
README
rcl_logging_syslog 🚢🚀🚂
rcl_logging_syslog is alternative logging backend implementation that can be used for ROS 2 application via rcl_logging_interface.
rcl_logging_syslog uses SYSLOG(3) to send the log data to rsyslog a.k.a rocket-fast system for log processing 🚀.
The main objective is that Enabling ROS 2 logging system with Cloud-Native Log Management and Observability.
see overview slide deck for more information.
Motivation
The logging data is critical especially for entire system observability and status, so that application can alert the administrator or even give the feedback to the system with adjusting the parameter. This importance rises once it comes to robotics and robot application, especially distributed system such as ROS 2 or edge computing because we must be able to specify what went wrong in the 1st place with these logging data.
rsyslog is available in default Ubuntu distribution managed by system service, performative, and many configuration supported including log data pipeline. So that user can choose the logging configuration depending on the application requirement and use case, sometimes file system sink, sometimes forwarding to remote rsyslogd, or even FluentBit.
FluentBit is a Fast Log Processor and Forwarder part of Graduated Fluentd Ecosystem and a CNCF sub-project.
Demonstration
See how it works 🔥
- rsyslog / FluebtBit
https://github.com/user-attachments/assets/bdb05bf7-92b2-4b9a-8f20-3d3b803a7a86
- rsyslog / Fluentd / Loki / Grafana
https://github.com/user-attachments/assets/4a1aae42-5c55-4f31-9198-8c7c246244ca
Tutorials
Supported ROS Distribution
Distribution | Supported | Branch |
---|---|---|
Rolling Ridley | ✅ |
rolling (Development) |
Kilted Kaiju | ✅ | kilted |
Jazzy Jalisco | ✅ | jazzy |
Humble Hawksbill | ✅ | humble |
Installation
Prerequisites
- rsyslog installation
rcl_logging_syslog requires rsyslog
package, which Ubuntu should have already in default.
But if you are using container, the situation is bit different from host system since there is no system services or rsyslogd
is running by default.
In the case of container, we need to install rsyslog
packages in the container root file system.
[!NOTE] We can enable the container with host system privileges but that is NOT recommended, especially for security.
### Install rsyslog package
apt install rsyslog
- create
ros
directory forrsyslog
.
The following commands require root
permission.
/var/log/ros
is the root directory for rcl_logging_syslog
, all logs are expected to be stored under this root directory.
mkdir -p /var/log/ros
chown syslog:adm /var/log/ros
[!WARNING] For production, user needs to configure appropriate group if necessary but owner should be
syslog
. Otherwisersyslogd
may meet the permission problem for the file system.
- rsyslog service check
If you are running the application on host system, check the rsyslog
system service.
systemctl status rsyslog
If you are running the application on container environment, start the rsyslogd
daemon process.
/usr/sbin/rsyslogd -n -iNONE
Or you prefer to use rsyslogd
in the host system from the application in the container, you need to bind the /dev/log
to the container via -v /dev/log:/dev/log
, so that the application running in the container can open the Unix Domain Socket for rsyslogd
running in the host system.
In this setting, all rsyslogd
configuration needs to be set in the host system.
- fluent-bit installation
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
Contributors must sign-off each commit by adding a Signed-off-by: ...
line to commit messages to certify that they have the right to submit
the code they are contributing to the project according to the
Developer Certificate of Origin (DCO).
Repository Summary
Checkout URI | https://github.com/fujitatomoya/rcl_logging_syslog.git |
VCS Type | git |
VCS Version | kilted |
Last Updated | 2025-06-05 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
rcl_logging_syslog | 0.1.0 |
README
rcl_logging_syslog 🚢🚀🚂
rcl_logging_syslog is alternative logging backend implementation that can be used for ROS 2 application via rcl_logging_interface.
rcl_logging_syslog uses SYSLOG(3) to send the log data to rsyslog a.k.a rocket-fast system for log processing 🚀.
The main objective is that Enabling ROS 2 logging system with Cloud-Native Log Management and Observability.
see overview slide deck for more information.
Motivation
The logging data is critical especially for entire system observability and status, so that application can alert the administrator or even give the feedback to the system with adjusting the parameter. This importance rises once it comes to robotics and robot application, especially distributed system such as ROS 2 or edge computing because we must be able to specify what went wrong in the 1st place with these logging data.
rsyslog is available in default Ubuntu distribution managed by system service, performative, and many configuration supported including log data pipeline. So that user can choose the logging configuration depending on the application requirement and use case, sometimes file system sink, sometimes forwarding to remote rsyslogd, or even FluentBit.
FluentBit is a Fast Log Processor and Forwarder part of Graduated Fluentd Ecosystem and a CNCF sub-project.
Demonstration
See how it works 🔥
- rsyslog / FluebtBit
https://github.com/user-attachments/assets/bdb05bf7-92b2-4b9a-8f20-3d3b803a7a86
- rsyslog / Fluentd / Loki / Grafana
https://github.com/user-attachments/assets/4a1aae42-5c55-4f31-9198-8c7c246244ca
Tutorials
Supported ROS Distribution
Distribution | Supported | Branch |
---|---|---|
Rolling Ridley | ✅ |
rolling (Development) |
Kilted Kaiju | ✅ | kilted |
Jazzy Jalisco | ✅ | jazzy |
Humble Hawksbill | ✅ | humble |
Installation
Prerequisites
- rsyslog installation
rcl_logging_syslog requires rsyslog
package, which Ubuntu should have already in default.
But if you are using container, the situation is bit different from host system since there is no system services or rsyslogd
is running by default.
In the case of container, we need to install rsyslog
packages in the container root file system.
[!NOTE] We can enable the container with host system privileges but that is NOT recommended, especially for security.
### Install rsyslog package
apt install rsyslog
- create
ros
directory forrsyslog
.
The following commands require root
permission.
/var/log/ros
is the root directory for rcl_logging_syslog
, all logs are expected to be stored under this root directory.
mkdir -p /var/log/ros
chown syslog:adm /var/log/ros
[!WARNING] For production, user needs to configure appropriate group if necessary but owner should be
syslog
. Otherwisersyslogd
may meet the permission problem for the file system.
- rsyslog service check
If you are running the application on host system, check the rsyslog
system service.
systemctl status rsyslog
If you are running the application on container environment, start the rsyslogd
daemon process.
/usr/sbin/rsyslogd -n -iNONE
Or you prefer to use rsyslogd
in the host system from the application in the container, you need to bind the /dev/log
to the container via -v /dev/log:/dev/log
, so that the application running in the container can open the Unix Domain Socket for rsyslogd
running in the host system.
In this setting, all rsyslogd
configuration needs to be set in the host system.
- fluent-bit installation
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
Contributors must sign-off each commit by adding a Signed-off-by: ...
line to commit messages to certify that they have the right to submit
the code they are contributing to the project according to the
Developer Certificate of Origin (DCO).
Repository Summary
Checkout URI | https://github.com/fujitatomoya/rcl_logging_syslog.git |
VCS Type | git |
VCS Version | rolling |
Last Updated | 2025-06-10 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
rcl_logging_syslog | 0.1.1 |
README
rcl_logging_syslog 🚢🚀🚂
rcl_logging_syslog is alternative logging backend implementation that can be used for ROS 2 application via rcl_logging_interface.
rcl_logging_syslog uses SYSLOG(3) to send the log data to rsyslog a.k.a rocket-fast system for log processing 🚀.
The main objective is that Enabling ROS 2 logging system with Cloud-Native Log Management and Observability.
see overview slide deck for more information.
Motivation
The logging data is critical especially for entire system observability and status, so that application can alert the administrator or even give the feedback to the system with adjusting the parameter. This importance rises once it comes to robotics and robot application, especially distributed system such as ROS 2 or edge computing because we must be able to specify what went wrong in the 1st place with these logging data.
rsyslog is available in default Ubuntu distribution managed by system service, performative, and many configuration supported including log data pipeline. So that user can choose the logging configuration depending on the application requirement and use case, sometimes file system sink, sometimes forwarding to remote rsyslogd, or even FluentBit.
FluentBit is a Fast Log Processor and Forwarder part of Graduated Fluentd Ecosystem and a CNCF sub-project.
Demonstration
See how it works 🔥
- rsyslog / FluebtBit
https://github.com/user-attachments/assets/bdb05bf7-92b2-4b9a-8f20-3d3b803a7a86
- rsyslog / Fluentd / Loki / Grafana
https://github.com/user-attachments/assets/4a1aae42-5c55-4f31-9198-8c7c246244ca
Tutorials
Supported ROS Distribution
Distribution | Supported | Branch |
---|---|---|
Rolling Ridley | ✅ |
rolling (Development) |
Kilted Kaiju | ✅ | kilted |
Jazzy Jalisco | ✅ | jazzy |
Humble Hawksbill | ✅ | humble |
Installation
Prerequisites
- rsyslog installation
rcl_logging_syslog requires rsyslog
package, which Ubuntu should have already in default.
But if you are using container, the situation is bit different from host system since there is no system services or rsyslogd
is running by default.
In the case of container, we need to install rsyslog
packages in the container root file system.
[!NOTE] We can enable the container with host system privileges but that is NOT recommended, especially for security.
### Install rsyslog package
apt install rsyslog
- create
ros
directory forrsyslog
.
The following commands require root
permission.
/var/log/ros
is the root directory for rcl_logging_syslog
, all logs are expected to be stored under this root directory.
mkdir -p /var/log/ros
chown syslog:adm /var/log/ros
[!WARNING] For production, user needs to configure appropriate group if necessary but owner should be
syslog
. Otherwisersyslogd
may meet the permission problem for the file system.
- rsyslog service check
If you are running the application on host system, check the rsyslog
system service.
systemctl status rsyslog
If you are running the application on container environment, start the rsyslogd
daemon process.
/usr/sbin/rsyslogd -n -iNONE
Or you prefer to use rsyslogd
in the host system from the application in the container, you need to bind the /dev/log
to the container via -v /dev/log:/dev/log
, so that the application running in the container can open the Unix Domain Socket for rsyslogd
running in the host system.
In this setting, all rsyslogd
configuration needs to be set in the host system.
- fluent-bit installation
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
Contributors must sign-off each commit by adding a Signed-off-by: ...
line to commit messages to certify that they have the right to submit
the code they are contributing to the project according to the
Developer Certificate of Origin (DCO).