sd_journal_seek_cursor.html 8.76 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>sd_journal_seek_head</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
    a.headerlink {
      color: #c60f0f;
      font-size: 0.8em;
      padding: 0 4px 0 4px;
      text-decoration: none;
      visibility: hidden;
    }

    a.headerlink:hover {
      background-color: #c60f0f;
      color: white;
    }

    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
      visibility: visible;
    }
  </style><a href="index.html">Index </a>·
  <a href="systemd.directives.html">Directives </a>·
  <a href="../python-systemd/index.html">Python </a>·
  <a href="../libudev/index.html">libudev </a>·
22 23
  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>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</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description"></a></h2><p><code class="function">sd_journal_seek_head()</code>
24
                seeks to the beginning of the journal, i.e. the oldest
25
                available entry.</p><p>Similarly,
26 27 28 29
                <code class="function">sd_journal_seek_tail()</code> may be
                used to seek to the end of the journal, i.e. the most
                recent available entry.</p><p><code class="function">sd_journal_seek_monotonic_usec()</code>
                seeks to the entry with the specified monotonic
30 31 32 33
                timestamp,
                i.e. <code class="constant">CLOCK_MONOTONIC</code>. Since
                monotonic time restarts on every reboot a boot ID
                needs to be specified as well.</p><p><code class="function">sd_journal_seek_realtime_usec()</code>
34
                seeks to the entry with the specified realtime
35 36
                (wallclock) timestamp,
                i.e. <code class="constant">CLOCK_REALTIME</code>. Note that
37
                the realtime clock is not necessarily monotonic. If a
38
                realtime timestamp is ambiguous, it is not defined
39 40
                which position is sought to.</p><p><code class="function">sd_journal_seek_cursor()</code>
                seeks to the entry located at the specified cursor
41
                string. For details on cursors, see
42 43 44 45
                <a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a>. If
                no entry matching the specified cursor is found the
                call will seek to the next closest entry (in terms of
                time) instead. To verify whether the newly selected
46
                entry actually matches the cursor, use
47 48 49 50
                <a href="sd_journal_test_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_test_cursor</span>(3)</span></a>.</p><p>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
                <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
51
                invocation (or a similar call). Only then, entry data
52 53 54
                may be retrieved via
                <a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a>. If
                no entry exists that matches exactly the specified
55
                seek address, the next closest is sought to. If
56
                <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
57
                is used, the closest following entry will be sought to,
58 59 60
                if
                <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                is used the closest preceding entry is sought
61 62
                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value"></a></h2><p>The functions return 0 on success or a negative
                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes"></a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
63 64 65 66
                <code class="function">sd_journal_seek_tail()</code>,
                <code class="function">sd_journal_seek_monotonic_usec()</code>,
                <code class="function">sd_journal_seek_realtime_usec()</code>,
                and <code class="function">sd_journal_seek_cursor()</code>
67
                interfaces are available as a shared library, which can
68
                be compiled and linked to with the
69
                <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
70
                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also"></a></h2><p>
71 72 73 74 75 76 77 78
                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                        <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                        <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
                        <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
                        <a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a>,
                        <a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a>,
                        <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>
                </p></div></div></body></html>