sd_journal_seek_head

systemd
Developer Lennart Poettering lennart@poettering.net
sd_journal_seek_head 3
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

    #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

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

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

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

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

`sd_journal_seek_cursor()` seeks to the entry located at the specified cursor string. For details on cursors see sd_journal_get_cursor 3.

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. 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.

## Return Value

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

## Notes

The `sd_journal_seek_head()`, `sd_journal_seek_tail()`, `sd_journal_seek_monotonic_usec()`, `sd_journal_seek_realtime_usec()`, and `sd_journal_seek_cursor()` interfaces are available as shared library, which can be compiled and linked to with the `libsystemd-journal` pkg-config 1 file.

## See Also

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