<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->

<refentry id="sd_journal_query_unique" xmlns:xi="http://www.w3.org/2001/XInclude">

  <refentryinfo>
    <title>sd_journal_query_unique</title>
    <productname>systemd</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>sd_journal_query_unique</refentrytitle>
    <manvolnum>3</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>sd_journal_query_unique</refname>
    <refname>sd_journal_enumerate_unique</refname>
    <refname>sd_journal_enumerate_available_unique</refname>
    <refname>sd_journal_restart_unique</refname>
    <refname>SD_JOURNAL_FOREACH_UNIQUE</refname>
    <refpurpose>Read unique data fields from the journal</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <funcsynopsis>
      <funcsynopsisinfo>#include &lt;systemd/sd-journal.h&gt;</funcsynopsisinfo>

      <funcprototype>
        <funcdef>int <function>sd_journal_query_unique</function></funcdef>
        <paramdef>sd_journal *<parameter>j</parameter></paramdef>
        <paramdef>const char *<parameter>field</parameter></paramdef>
      </funcprototype>

      <funcprototype>
        <funcdef>int <function>sd_journal_enumerate_available_unique</function></funcdef>
        <paramdef>sd_journal *<parameter>j</parameter></paramdef>
        <paramdef>const void **<parameter>data</parameter></paramdef>
        <paramdef>size_t *<parameter>length</parameter></paramdef>
      </funcprototype>

      <funcprototype>
        <funcdef>int <function>sd_journal_enumerate_unique</function></funcdef>
        <paramdef>sd_journal *<parameter>j</parameter></paramdef>
        <paramdef>const void **<parameter>data</parameter></paramdef>
        <paramdef>size_t *<parameter>length</parameter></paramdef>
      </funcprototype>

      <funcprototype>
        <funcdef>void <function>sd_journal_restart_unique</function></funcdef>
        <paramdef>sd_journal *<parameter>j</parameter></paramdef>
      </funcprototype>

      <funcprototype>
        <funcdef><function>SD_JOURNAL_FOREACH_UNIQUE</function></funcdef>
        <paramdef>sd_journal *<parameter>j</parameter></paramdef>
        <paramdef>const void *<parameter>data</parameter></paramdef>
        <paramdef>size_t <parameter>length</parameter></paramdef>
      </funcprototype>

    </funcsynopsis>
  </refsynopsisdiv>

  <refsect1>
    <title>Description</title>

    <para><function>sd_journal_query_unique()</function> queries the journal for all unique values the
    specified field can take. It takes two arguments: the journal to query and the field name to look
    for. Well-known field names are listed on
    <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
    but any field can be specified. Field names must be specified without a trailing
    <literal>=</literal>. After this function has been executed successfully the field values may be queried
    using <function>sd_journal_enumerate_unique()</function> and
    <function>sd_journal_enumerate_available_unique()</function>. Invoking one of those calls will change the
    field name being queried and reset the enumeration index to the first field value that matches.</para>

    <para><function>sd_journal_enumerate_unique()</function> may be used to iterate through all data fields
    which match the previously selected field name as set with
    <function>sd_journal_query_unique()</function>. On each invocation the next field data matching the field
    name is returned. The order of the returned data fields is not defined. It takes three arguments: the
    journal object, plus a pair of pointers to pointer/size variables where the data object and its size
    shall be stored. The returned data is in a read-only memory map and is only valid until the next
    invocation of <function>sd_journal_enumerate_unique()</function>. Note that the data returned will be
    prefixed with the field name and <literal>=</literal>. Note that this call is subject to the data field
    size threshold as controlled by <function>sd_journal_set_data_threshold()</function> and only the initial
    part of the field up to the threshold is returned. An error is returned for fields which cannot be
    retrieved. See the error list below for details.</para>

    <para><function>sd_journal_enumerate_available_unique()</function> is similar to
    <function>sd_journal_enumerate_unique()</function>, but silently skips any fields which may be valid, but
    are too large or not supported by current implementation.</para>

    <para><function>sd_journal_restart_unique()</function> resets the
    data enumeration index to the beginning of the list. The next
    invocation of <function>sd_journal_enumerate_unique()</function>
    will return the first field data matching the field name
    again.</para>

    <para>Note that the <function>SD_JOURNAL_FOREACH_UNIQUE()</function> macro may be used as a handy wrapper
    around <function>sd_journal_restart_unique()</function> and
    <function>sd_journal_enumerate_available_unique()</function>.</para>

    <para>Note that these functions currently are not influenced by
    matches set with <function>sd_journal_add_match()</function> but
    this might change in a later version of this software.</para>

    <para>To enumerate all field names currently in use (and thus all suitable field parameters for
    <function>sd_journal_query_unique()</function>), use the
    <citerefentry><refentrytitle>sd_journal_enumerate_fields</refentrytitle><manvolnum>3</manvolnum></citerefentry>
    call.</para>
  </refsect1>

  <refsect1>
    <title>Return Value</title>

    <para><function>sd_journal_query_unique()</function> returns 0 on success or a negative errno-style error
    code. <function>sd_journal_enumerate_unique()</function> and
    <function>sd_journal_query_available_unique()</function> return a positive integer if the next field data
    has been read, 0 when no more fields remain, or a negative errno-style error code.
    <function>sd_journal_restart_unique()</function> doesn't return anything.</para>

    <refsect2>
      <title>Errors</title>

      <para>Returned errors may indicate the following problems:</para>

      <variablelist>
        <xi:include href="sd_journal_get_data.xml" xpointer="EINVAL"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="ECHILD"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="EADDRNOTAVAIL"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="ENOENT"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="ENOBUFS"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="E2BIG"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="EPROTONOSUPPORT"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="EBADMSG"/>
        <xi:include href="sd_journal_get_data.xml" xpointer="EIO"/>
      </variablelist>
    </refsect2>
  </refsect1>

  <refsect1>
    <title>Notes</title>

    <xi:include href="threads-aware.xml" xpointer="strict"/>

    <xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
  </refsect1>

  <refsect1>
    <title>Examples</title>

    <para>Use the <function>SD_JOURNAL_FOREACH_UNIQUE()</function> macro to iterate through all values a field
    of the journal can take (and which can be accessed on the given architecture and are not compressed with
    an unsupported mechanism). The following example lists all unit names referenced in the journal:</para>

    <programlisting><xi:include href="journal-iterate-unique.c" parse="text" /></programlisting>
  </refsect1>

  <refsect1>
    <title>See Also</title>

    <para>
      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>sd_journal_enumerate_fields</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>
    </para>
  </refsect1>

</refentry>
