proxmox-mini-journalreader(1)

proxmox-mini-journalreader(1) General Commands Manual proxmox-mini-journalreader(1)

NAME

proxmox-mini-journalreader - read systemd journald logs

SYNOPSIS

proxmox-mini-journalreader [OPTIONS]

DESCRIPTION

Provides access to systemd journald logs, allowing users to fetch log entries based on timestamps, cursors, or a specified number of last entries.

OPTIONS

-b <timestamp>

Begin at this UNIX epoch timestamp.

-e <timestamp>

End at this UNIX epoch timestamp.

-d <directory>

Specify a custom journal directory.

-n <integer>

Print the last number of entries logged.

-f <cursor>

Print starting from this cursor.

-t <cursor>

Print until (to) this cursor.

-p <priority>

Only print entries of the given syslog priority. Accepts a single level from 0 (emerg) to 7 (debug), which selects that level and everything more severe, or a LOW..HIGH range. Mirrors journalctl's -p option.

-i <glob>

Only print entries whose syslog identifier matches the given glob, for example pve* or postfix/*. The glob is matched against the set of identifiers present, so it stays indexed and pages like an exact match.

-u <unit>

Only print entries of the given systemd unit, like journalctl's -u: the unit's own output together with the manager's messages about it (start and stop, status, coredumps). A bare name is taken as a .service, so both pveproxy and pveproxy.service work.

-k

Only print kernel messages, that is entries with a kernel transport. Unlike journalctl's -k this is not restricted to the current boot; it applies within the selected range like the other filters.

-j

Print the output as JSON, a "data" array of strings where the first and last elements are cursors.

-J

Print the output as structured JSON. Like -j, but each "data" element is an object. A log line carries separate fields: {"t":<usec>,"id":<id>,"pid":<pid>,"msg":<message>,"p":<priority>}, where t is the realtime timestamp in microseconds since the epoch, id is the syslog identifier (falling back to the command name), pid is omitted when absent, and p is the syslog priority 0 (emerg) to 7 (debug), defaulting to 6 when the entry has none. Control records instead carry a ty field: a cursor is {"ty":"cursor","c":<cursor>}, a reboot is {"ty":"reboot","t":<usec>}, and a hostname record {"ty":"host","h":<host>} is emitted for the first entry and whenever the host changes. Implies -j.

-I

With -J, additionally emit one {"ty":"identifiers","ids":[<id>,...]} record listing the distinct syslog identifiers present, so the web UI can offer them for completion. Requires -J.

-U

With -J, additionally emit one {"ty":"units","names":[<name>,...]} record listing the distinct systemd units present, for unit-name completion in the web UI. Requires -J.

-h

Display the help message.

NOTES

1.
No range option means dump all entries.
2.
Range conflicts with -n.
3.
-b and -f conflict.
4.
-e and -t conflict.

SEE ALSO

journalctl(1), systemd-journald.service(8)

AUTHORS

The Proxmox Support Team <support@proxmox.com>.

2026-07-21