SD_JOURNAL_GET_CATALOG(3)
π NAME π
okay bestie, welcome to SD_JOURNAL_GET_CATALOG(3) β yes, that's the manual page name, and it's lowkey iconic. It covers sd_journal_get_catalog() and sd_journal_get_catalog_for_message_id(), whose whole thing is: retrieve a message catalog entry. periodt.
β¨ SYNOPSIS β¨
#include <systemd/sd-journal.h>
int sd_journal_get_catalog(sd_journal *j, char **ret);
int sd_journal_get_catalog_for_message_id(sd_id128_t id, char **ret);
π¦ DESCRIPTION π¦
sd_journal_get_catalog() grabs a message catalog entry for the current journal entry. It looks up an entry in the message catalog by using the "MESSAGE_ID=" field of the current journal entry. Before it returns the entry, every journal field name in the catalog entry text that's enclosed in @ gets replaced with the respective field values of the current entry. slay.
If a field name referenced in the message catalog entry does not exist in the current journal entry, the @ will be removed, but the field name is otherwise left untouched. no cap, that's the rule. π
sd_journal_get_catalog_for_message_id() works similar to sd_journal_get_catalog(), but the entry is looked up by the specified message ID β and bestie, no open journal context is necessary for this β and no field substitution is performed.
For more info about the journal message catalog, pls refer to the Journal Message Catalogs[1] documentation page. π«Ά
π RETURN VALUE π
sd_journal_get_catalog() and sd_journal_get_catalog_for_message_id() return 0 on success or a negative errno-style error code. If no matching message catalog entry is found, -ENOENT is returned.
On successful return, ret points to a new string, which must be freed with free(3). do not forget, bestie. π
πΈ NOTES πΈ
Function sd_journal_get_catalog() is thread-agnostic and only a single thread may operate on a given object at any given time. Multiple independent objects may be used from different threads in parallel.
Function sd_journal_get_catalog_for_message_id() is thread-safe and may be called from multiple threads in parallel. that's the vibe check: this one can share. β¨
Functions described here are available as a shared library, which can be compiled against and linked to with the libsystemd pkg-config(1) file.
π HISTORY π
sd_journal_get_catalog() and sd_journal_get_catalog_for_message_id() were added in version 196. iconic behavior fr fr. π₯
π SEE ALSO π
systemd(1)systemd.journal-fields(7)sd-journal(3)sd_journal_open(3)sd_journal_next(3)sd_journal_get_data(3)malloc(3)
π§ NOTES (footnote bestie) π§
- Journal Message Catalogs β
https://systemd.io/CATALOG
with love and zero cap, systemd 261.3 Β· SD_JOURNAL_GET_CATALOG(3) π«Άππ
π¦ where this page comes from
- ubuntu stonking: libsystemd-dev 261.3-0ubuntu3 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms