sd_journal_seek_head(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | HISTORY | SEE ALSO | COLOPHON

SD_JOURNAL_SEEK_HEAD(3)   sd_journal_seek_head   SD_JOURNAL_SEEK_HEAD(3)

NAME         top

       sd_journal_seek_head, sd_journal_seek_tail,
       sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec,
       sd_journal_seek_cursor - Seek to a position in the journal

SYNOPSIS         top

       #include <systemd/sd-journal.h>

       int sd_journal_seek_head(sd_journal *j);

       int sd_journal_seek_tail(sd_journal *j);

       int sd_journal_seek_monotonic_usec(sd_journal *j,
                                          sd_id128_t boot_id,
                                          uint64_t usec);

       int sd_journal_seek_realtime_usec(sd_journal *j, uint64_t usec);

       int sd_journal_seek_cursor(sd_journal *j, const char *cursor);

DESCRIPTION         top

       sd_journal_seek_head() seeks to the beginning of the journal,
       i.e. to the position before the oldest available entry.

       Similarly, sd_journal_seek_tail() may be used to seek to the end
       of the journal, i.e. the position after the most recent available
       entry.

       sd_journal_seek_monotonic_usec() seeks to a position with the
       specified monotonic timestamp, i.e.  CLOCK_MONOTONIC. Since
       monotonic time restarts on every reboot a boot ID needs to be
       specified as well.

       sd_journal_seek_realtime_usec() seeks to a position with the
       specified realtime (wallclock) timestamp, i.e.  CLOCK_REALTIME.
       Note that the realtime clock is not necessarily monotonic. If a
       realtime timestamp is ambiguous, it is not defined which position
       is sought to.

       sd_journal_seek_cursor() seeks to the position at the specified
       cursor string. For details on cursors, see
       sd_journal_get_cursor(3). If no entry matching the specified
       cursor is found the call will seek to the next closest entry (in
       terms of time) instead.

       Note that these calls do not actually make any entry the new
       current entry, this needs to be done in a separate step with a
       subsequent sd_journal_next(3) invocation (or a similar call).
       Only then, entry data may be retrieved via sd_journal_get_data(3)
       or an entry cursor be retrieved via sd_journal_get_cursor(3). If
       no entry exists that matches exactly the specified seek address,
       the next closest is sought to. If sd_journal_next(3) is used, the
       closest following entry will be sought to, if
       sd_journal_previous(3) is used the closest preceding entry is
       sought to.

       After the seek is done, and sd_journal_next(3) or a similar call
       has been made, sd_journal_test_cursor(3) may be used to verify
       whether the newly selected entry actually matches the cursor.

RETURN VALUE         top

       The functions return 0 on success or a negative errno-style error
       code.

NOTES         top

       All functions listed here are thread-agnostic and only a single
       specific thread may operate on a given object during its entire
       lifetime. It's safe to allocate multiple independent objects and
       use each from a specific thread in parallel. However, it's not
       safe to allocate such an object in one thread, and operate or
       free it from any other, even if locking is used to ensure these
       threads don't operate on it at the very same time.

       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         top

       sd_journal_seek_head(), sd_journal_seek_tail(),
       sd_journal_seek_monotonic_usec(),
       sd_journal_seek_realtime_usec(), and sd_journal_seek_cursor()
       were added in version 187.

SEE ALSO         top

       systemd(1), sd-journal(3), sd_journal_open(3),
       sd_journal_next(3), sd_journal_get_data(3),
       sd_journal_get_cursor(3), sd_journal_get_realtime_usec(3)

COLOPHON         top

       This page is part of the systemd (systemd system and service
       manager) project.  Information about the project can be found at
       ⟨http://www.freedesktop.org/wiki/Software/systemd⟩.  If you have
       a bug report for this manual page, see
       ⟨http://www.freedesktop.org/wiki/Software/systemd/#bugreports⟩.
       This page was obtained from the project's upstream Git repository
       ⟨https://github.com/systemd/systemd.git⟩ on 2024-06-14.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2024-06-13.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       [email protected]

systemd 257~devel                                SD_JOURNAL_SEEK_HEAD(3)

Pages that refer to this page: sd-journal(3)sd_journal_get_cursor(3)sd_journal_next(3)sd_journal_open(3)systemd.directives(7)systemd.index(7)