sd-journal
systemd
sd-journal
3
sd-journal
APIs for submitting and querying log entries to and
from the journal
#include <systemd/sd-journal.h>
pkg-config --cflags --libs libsystemd
Description
sd-journal.h is part of
libsystemd3 and
provides APIs to submit and query log entries. The APIs exposed act both as client for the
systemd-journald.service8
journal service and as parser for the journal files on disk.
See
sd_journal_print3,
sd_journal_stream_fd3,
sd_journal_open3,
sd_journal_next3,
sd_journal_get_realtime_usec3,
sd_journal_add_match3,
sd_journal_seek_head3,
sd_journal_enumerate_fields3,
sd_journal_get_cursor3,
sd_journal_get_cutoff_realtime_usec3,
sd_journal_get_cutoff_monotonic_usec3,
sd_journal_get_usage3,
sd_journal_get_catalog3,
sd_journal_get_fd3,
sd_journal_has_runtime_files3
and
sd_journal_has_persistent_files3
for more information about the functions implemented.
Command line access for submitting entries to the journal is
available with the
systemd-cat1
tool. Command line access for querying entries from the journal is
available with the
journalctl1
tool.
Thread safety
Functions that operate on sd_journal objects are thread agnostic — given
sd_journal pointer may only be used from one specific thread at all times (and it has to
be the very same one during the entire lifetime of the object), but multiple, independent threads may use multiple,
independent objects safely. Other functions — those that are used to send entries to the journal, like
sd_journal_print3 and similar,
or those that are used to retrieve global information like
sd_journal_stream_fd3 and
sd_journal_get_catalog_for_message_id3
— are fully thread-safe and may be called from multiple threads in parallel.
Optional dependencies
Depending on which build-time options are enabled, functions that operate on
sd_journal objects might cause optional shared libraries to be dynamically
loaded via
dlopen3,
such as decompression libraries (xz, lz4, zstd) or cryptographic libraries (gcrypt).
See Also
systemd1
sd_journal_print3
sd_journal_stream_fd3
sd_journal_open3
sd_journal_next3
sd_journal_get_data3
sd_journal_get_realtime_usec3
sd_journal_add_match3
sd_journal_seek_head3
sd_journal_enumerate_fields3
sd_journal_get_cursor3
sd_journal_get_cutoff_realtime_usec3
sd_journal_get_cutoff_monotonic_usec3
sd_journal_get_usage3
sd_journal_get_fd3
sd_journal_query_unique3
sd_journal_get_catalog3
sd_journal_has_runtime_files3
sd_journal_has_persistent_files3
journalctl1
sd-id1283
pkg-config1