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 — a given
sd_journal pointer may only be used from one thread at a time, but multiple
independent threads may use multiple objects concurrently. Some 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