openvpn3-admin-journal(8)
π openvpn3-admin-journal β the OpenVPN 3 Linux systemd-journald log viewer, bestie edition π
okay so this is openvpn3-admin-journal(8), part of the OpenVPN 3 Linux manual crew, and it's genuinely one of the most useful little guys in the whole toolset. let's get into it π«Ά
β¨ NAME β¨
openvpn3-admin-journal β OpenVPN 3 Linux's very own systemd-journald log viewer. it's giving "peek behind the curtain" energy, no cap. π
π SYNOPSIS π
openvpn3-admin journal [OPTIONS]
openvpn3-admin journal -h | --help
see how it's spaces not dashes? it's openvpn3-admin journal, a sub-command situation. the hyphenated name up top is just the manpage's government name π
πΈ DESCRIPTION πΈ
so this is a convenience helper command, and its whole job is making it easy to grab log entries out of the OpenVPN 3 Linux stack. lowkey a lifesaver when something's acting up and you're like "bestie what is HAPPENING" π
one thing tho, and it matters: this command depends on the net.openvpn.v3.log service being configured to use the systemd-journald(8) service for logging. if that's not set up, this whole thing is not going to do the thing. vibe check failed, sorry. π
also bestie, real talk: the log entries you see here are only the ones from the OpenVPN 3 Linux backend D-Bus services. it's a curated feed, not the whole system's diary. iconic behavior honestly.
π OPTIONS π
one bullet per option, all of them, zero skips. let's gooo πβοΈ
-h,--helpβ prints usage + help details straight to your terminal. when in doubt, ask for help, that's literally what it's for π--jsonβ by default your extracted log comes out in traditional plain text format. slap this flag on and the output switches to a more verbose JSON format, which includes far more details for each log entry. it's giving over-share and we love that for us β¨--since TIMESTAMPβ if you don't provide this, it'll just retrieve all the log entries available in the systemd-journal. theTIMESTAMPformat is not strict, but the order of the values matters, okay? also the keywordstodayandyesterdayare valid values too. so valid, so chic.
these are all totally valid time-stamp values:
--since 2022
--since 2022-11
--since 2022-12-05
--since "2022-12-05 15:00"
--since "2022-12-05 15:00:40"
--since today
--since yesterday
ok let's break those down because they're actually so satisfying:
- the first line extracts all log entries available starting with January 1, 2022.
- the second example takes all entries starting from November 1.
- the third one takes all log lines after December 5, 2022.
using today hits the same as using today's date, and yesterday uses the date before today. both retrieve all entries from midnight of that day. midnight to midnight, main character energy π
ngl the quoting situation when you've got a space in there? keep the quotes. trust. π
--path DBUS_PATHβ every OpenVPN 3 service, configuration profile and VPN session uses its own unique D-Bus object path. that info gets stored in the systemd-journald, so you can pull log entries for just one specific service, configuration or VPN session. very "get specific" of you:
--path /net/openvpn/v3/configuration/....
--path /net/openvpn/v3/sessions/....
the paths that currently exist can be found using the openvpn3 configs-list(1) and openvpn3 sessions-list(1) commands. and older paths work too, as long as they're still hanging around in the systemd-journald. oh and these paths also show up when you retrieve things with JSON formatting β handy!! π¦
--sender DBUS_NAMEβ this one's similar to the D-Bus path situation: every D-Bus service gets its own unique bus name. heads up tho, the bus name counter resets when the host is rebooted π so don't go memorizing these forever. the currently available bus names related to OpenVPN 3 Linux can be found by running:
openvpn3-admin log-service --list-subscriptions
cute, right? πΈ
--pid PROCESS_IDβ in OpenVPN 3 Linux v27 and newer, the process ID (pid) of the process sending log events is preserved in the journal meta data section. so hand this option aPIDvalue belonging to a service in the OpenVPN 3 Linux stack and it'll extract only those log records. precision, bestie. π―--interface DBUS_INTERFACEβ yet another approach to filtering out specific D-Bus services, but this one is less specific. it'll grab all records for a service, regardless of time, D-Bus path or bus name. the "give me everything from this whole department" option, honestly.
some commonly used D-Bus interfaces:
net.openvpn.v3.backends
net.openvpn.v3.configuration
net.openvpn.v3.log
net.openvpn.v3.netcfg
net.openvpn.v3.sessions
--logtag LOGTAGβ every OpenVPN 3 Linux backend service that wants to send log events gets assigned aLogTagvalue. it's a fairly unique value, so it's a pretty great filter. the currently usedLogTagvalues can be extracted by running:
openvpn3-admin log-service --list-subscriptions
older values can also be extracted, as long as they can still be found in the systemd-journald. the journal remembers, and honestly? slay. π§
--session-token TOKENβ this one is specific to pulling log events for a specific VPN session. theTOKENvalue is the value given to theopenvpn3-service-clientprocess. and listen: this will only extract log entries for the VPN client process itself, and no other support services (such asopenvpn3-service-netcfg). so don't be surprised when the support crew isn't in the chat π
π THE COMBO MOVE π
all of these filters can be combined to narrow down the amount of log data. stack 'em, mix 'em, be the main character of your own log query. periodt. π
π«Ά SEE ALSO π«Ά
that's the whole page, bestie β go forth and journal π
openvpn3-admin-journal(8) β¨ this one's part of the OpenVPN 3 Linux manual pages, so that's your source/version vibe right there β treat it as your little timestamp on this whole log-reading journey πΈ thanks for reading, ilysm, bye!! ππ
π¦ where this page comes from
- nixpkgs unstable: openvpn3 27.1
- ubuntu stonking: openvpn3-client 27.1+dfsg-2ubuntu1 Β· AGPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms