From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Alexander Zeidler <a.zeidler@proxmox.com>,
Maximiliano Sandoval <m.sandoval@proxmox.com>
Cc: pve-devel@lists.proxmox.com
Subject: Re: [PATCH manager] report: list recent reboot events and their kernel version
Date: Mon, 20 Jul 2026 17:41:00 +0200 [thread overview]
Message-ID: <e503269b-bd3d-4122-bf98-8ead07de05b9@proxmox.com> (raw)
In-Reply-To: <DK3HJOSBPDOR.23UOU3521LSOX@proxmox.com>
Am 20.07.26 um 16:58 schrieb Alexander Zeidler:
> On Mon Jul 20, 2026 at 3:33 PM CEST, Maximiliano Sandoval wrote:
>> Thomas Lamprecht <t.lamprecht@proxmox.com> writes:
>>> For just the boots we could use "journalctl --list-boots -n 5 -r".
>>> Depending on wtmpdb and writing yet another log file just for kernel version might
>>> be a bit overkill, given that the info is there in the journal, albeit it *is*
>>> annoying that we would have to manually parse them from the journal...
>>
>> For the purposes of support we are more interested about the kernel
>> version used each boot. It would be interesting to have info about the
>> BOOT IDs or having the timestamp of the last entry for a give boot
>> though.
>>
>> Another consideration of journalctl is that the boots might be rotated
>> away.
>
> While the mentioned `journalctl --list-boots -n 5 -r` does not include
> the booted kernel versions, it lists at least a close timestamp of the
> crash.
>
> I am not aware of a rotation issue, i.e., I think any rotation may apply
> to the same extent to `wtmpdb` and `last`. Although a minor problem can
> be when using e.g. the following command and there was no reboot since
> then. But in such seldom cases we likely have to ask for more specific
> journal information anyway.
>
> `journalctl --since "3 months ago" -g "Command line:|Journal stopped" -q | tail`
>
> The command is limited to 3 months, since the query can take several
> seconds for journals that are flooded with entries. The advantage is,
> that it also contains the kernel command lines used. A crash timestamp
> is not available, but boot timestamps (usually shortly after finally
> crashed) and whether a reboot/shutdown was performed gracefully.
FWIW, we already got proxmox-mini-journalreader and it can already produce
json that we could extend to produce the relevant info, i.e. iterating through
boots (IIRC that is a indexed table) and parser first Line to extract the
kernel. That could then be outputted as structured JSON there which can be
parsed by the report here. In the midterm we could even think about integrating
that as fully fledged API to our products API, if it can provide value as first
class boot + kernel list there. For now just parsing the json in the report
would be more than enough (or CLI only integration as middleground).
You can try "poaching" one of our Devs that isn't to afraid from a bit of
C to implement this, would be probably the safest course be here, especially
as we maintain the journald handling already anyway.
next prev parent reply other threads:[~2026-07-20 15:41 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-20 12:33 [PATCH manager] report: list recent reboot events and their kernel version Alexander Zeidler
2026-07-20 12:58 ` Thomas Lamprecht
2026-07-20 13:33 ` Maximiliano Sandoval
2026-07-20 14:58 ` Alexander Zeidler
2026-07-20 15:41 ` Thomas Lamprecht [this message]
2026-07-20 13:16 ` Maximiliano Sandoval
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e503269b-bd3d-4122-bf98-8ead07de05b9@proxmox.com \
--to=t.lamprecht@proxmox.com \
--cc=a.zeidler@proxmox.com \
--cc=m.sandoval@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.