journald写二进制日志文件;并且它们的格式可以明确地更改。
期刊参考指南告诉我们,引用:
虽然习惯journalctl读取日志可能很有用,但它是由
那么,我们如何读取这些文件呢?是否有我错过的期刊阅读API ?我还没找到。
Systemd(和journald)是用c写的,它们带有sd-journal.h
头文件和C-API https://www.freedesktop.org/software/systemd/man/sd_journal_next.html# -sd_journal_open
允许您打开日志然后从中读取。
其他语言- https://www.freedesktop.org/software/systemd/python-systemd/journal.html#example-polling-for-journal-events https://github.com/nyantec/rust-journald -最有可能构建在C api之上。
此外,journald是开源的- https://github.com/systemd/systemd/blob/968680b23d1629d33deeea98b4f2b5fd106075b5/src/libsystemd/sd-journal/sd-journal.c#L1916 -文件格式是文档化的- https://www.freedesktop.org/wiki/Software/systemd/journal-files/。你可以在系统特定的I/O操作之上重新实现你自己的API来读取日志文件。
更新:https://github.com/meta-bit/jjournal为我做的工作,Java API为目的。
HTH