Journald
The Journald source collects logs from the systemd journal (journald) on Linux hosts. It reads journal entries directly from the journal files, optionally filtered to specific systemd service units, and forwards them as log records. Because journald is a component of systemd, this source is available on Linux only.
Supported Telemetry Types
Linux
✓
Prerequisites
A Linux host running systemd with journald enabled. This source is not available on Windows or macOS.
The collector must be able to read the journal files. The collector typically runs as a user with access to
/run/log/journaland/run/journal; reading another user's journal or a custom directory may require additional permissions (for example, membership in thesystemd-journalgroup).
Configuration

General
Units
Strings
[]
Service units to filter on. If not set, all units are read.
Advanced
Journal Directory
String
The directory containing journald's log files. If not set, /run/log/journal and /run/journal are used.
Priority
Enum
info
Limit log messages to this priority and higher. One of debug, info, notice, warning, err, crit, alert, emerg.
Start At
Enum
end
Start reading logs from beginning or end.
Example Configuration
Standalone Source
Configuration Tips
Filtering to specific units
Leave
unitsempty to read the entire journal, or list specific systemd units (for example,ssh,cron,docker,kubelet) to collect only those services' logs.Unit names should match the systemd unit, with or without the
.servicesuffix as journald accepts.
Controlling volume and read position
Use
priorityto drop low-severity entries at the source. Setting it towarning, for example, collectswarningand all higher severities (err,crit,alert,emerg).start_atdefaults toend, so a new collector picks up only logs written after it starts. Set it tobeginningto backfill existing journal entries on first run.
Reading a non-default journal
Set
directorywhen the journal lives outside the defaults, for example when collecting a persisted journal under/var/log/journalor a journal mounted from another host. Ensure the collector has read access to that path.
Troubleshooting
Symptom: No logs are collected, or the source produces nothing. Solution: Confirm the host uses systemd and that the collector can read the journal. If running as a non-root user, add the collector's user to the systemd-journal group or grant read access to the journal directory. Check that units (if set) names units that actually exist on the host.
Symptom: Expected historical entries are missing after deploying the source. Solution: start_at defaults to end, which skips entries written before the collector started. Set start_at to beginning to read existing journal entries.
Symptom: Logs from a custom or persisted journal location are not appearing. Solution: Set directory to the path containing the journal files (the defaults are /run/log/journal and /run/journal) and verify the collector has read permission on that directory.
Related Resources
Last updated
Was this helpful?