Skip to content

rcl_logging_journal

  • Software
  • Middleware
  • Library

An alternative ROS 2 logging backend that writes log records into the systemd journal, so they can be filtered and queried with journalctl. Built for systemd-based Linux hosts.

Source on GitHub: github.com/fujitatomoya/rcl_logging_journal (opens in a new tab). Facts read at commit df56a16 (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit df56a16 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Writes each ROS 2 log line as a structured journal entry with indexed fields such as the node name, severity and distribution.
  • Lets users filter per node, severity and time window with journalctl, and export logs as JSON.
  • Relies on journald for rotation, retention and vacuuming, so no separate log directory or logrotate setup is needed.
  • Adds trusted journald metadata such as PID, UID, executable and boot ID to every record.
  • Supports extra fixed key-value fields per process through an environment variable.
  • Uses a ring buffer and a sender thread so logging calls return quickly; FATAL records are sent synchronously.

Written by Robotheca from the project's README (opens in a new tab) at commit df56a16.

Getting started

Difficulty
Advanced
Hardware it needs, as the project states it
Linux with systemd is required at runtime (Ubuntu, Debian, Fedora, ...), with a running systemd-journald and the libsystemd development package to build. The package does not build on Windows or macOS.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
8 Oct 2026 on rolling
Latest release
None published on GitHub

Checked on GitHub on 16 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.