Skip to content

Commit

Permalink
Manual page updates for tip
Browse files Browse the repository at this point in the history
  • Loading branch information
Staysail Systems, Inc. authored and gdamore committed Apr 21, 2024
1 parent 874f04f commit 397cf9c
Show file tree
Hide file tree
Showing 10 changed files with 470 additions and 5 deletions.
6 changes: 6 additions & 0 deletions man/tip/_toc.html
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,11 @@
<li><a href="nng_listener_set.3.html">nng_listener_set</a></li>
<li><a href="nng_listener_setopt.3.html">nng_listener_setopt</a></li>
<li><a href="nng_listener_start.3.html">nng_listener_start</a></li>
<li><a href="nng_log.3.html">nng_log</a></li>
<li><a href="nng_log_get_level.3.html">nng_log_get_level</a></li>
<li><a href="nng_log_set_facility.3.html">nng_log_set_facility</a></li>
<li><a href="nng_log_set_level.3.html">nng_log_set_level</a></li>
<li><a href="nng_log_set_logger.3.html">nng_log_set_logger</a></li>
<li><a href="nng_msg_alloc.3.html">nng_msg_alloc</a></li>
<li><a href="nng_msg_append.3.html">nng_msg_append</a></li>
<li><a href="nng_msg_body.3.html">nng_msg_body</a></li>
Expand Down Expand Up @@ -132,6 +137,7 @@
<li><a href="nng_stat_value.3.html">nng_stat_value</a></li>
<li><a href="nng_stats_free.3.html">nng_stats_free</a></li>
<li><a href="nng_stats_get.3.html">nng_stats_get</a></li>
<li><a href="nng_str_sockaddr.3.html">nng_str_sockaddr</a></li>
<li><a href="nng_strdup.3.html">nng_strdup</a></li>
<li><a href="nng_strerror.3.html">nng_strerror</a></li>
<li><a href="nng_strfree.3.html">nng_strfree</a></li>
Expand Down
24 changes: 24 additions & 0 deletions man/tip/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,26 @@ <h2 id="_section_3_library_functions">Section 3: Library Functions</h2>
<td class="tableblock halign-left valign-top"><p class="tableblock">start listener</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log.3.html">nng_log(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">log messages</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_get_level.3.html">nng_log_get_level(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">get minimum level for logging messagse</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_set_facility.3.html">nng_log_set_facility(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set facility used for log messages</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_set_level.3.html">nng_log_set_level(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set minimum level for logging messagse</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_set_logger.3.html">nng_log_set_logger(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set logging handler</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_msg_alloc.3.html">nng_msg_alloc(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">allocate a message</p></td>
</tr>
Expand Down Expand Up @@ -531,6 +551,10 @@ <h2 id="_section_3_library_functions">Section 3: Library Functions</h2>
<td class="tableblock halign-left valign-top"><p class="tableblock">get statistics snapshot</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_str_sockaddr.3.html">nng_str_sockaddr(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">get string representation of socket address</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_strdup.3.html">nng_strdup(3)</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">duplicate string</p></td>
</tr>
Expand Down
30 changes: 30 additions & 0 deletions man/tip/libnng.3.html
Original file line number Diff line number Diff line change
Expand Up @@ -809,6 +809,36 @@ <h3 id="_url_object">URL Object</h3>
</table>
</div>
<div class="sect2">
<h3 id="_logging_support">Logging Support</h3>
<div class="paragraph">
<p>Common functionality for message logging.</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log.3.html">nng_log()</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">log a message</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_facility.3.html">nng_log_set_facility()</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set log facility</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_level.3.html">nng_log_set_level()</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set log level</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="nng_log_logger.3.html">nng_log_set_logger()</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">set logging handler</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_supplemental_api">Supplemental API</h3>
<div class="paragraph">
<p>These supplemental functions are not intrinsic to building
Expand Down
10 changes: 5 additions & 5 deletions man/tip/nng_ctx.5.html
Original file line number Diff line number Diff line change
Expand Up @@ -205,17 +205,17 @@ <h2 id="_example">EXAMPLE</h2>
<div class="content">
<pre class="pygments highlight"><code data-lang="c"><span></span><span class="tok-cp">#define CONCURRENCY 1024</span>

<span class="tok-n">echo_context</span><span class="tok-w"> </span><span class="tok-n">ecs</span><span class="tok-p">[</span><span class="tok-n">CONCURRENCY</span><span class="tok-p">];</span>
<span class="tok-k">static</span><span class="tok-w"> </span><span class="tok-k">struct</span><span class="tok-w"> </span><span class="tok-nc">echo_context</span><span class="tok-w"> </span><span class="tok-n">ecs</span><span class="tok-p">[</span><span class="tok-n">CONCURRENCY</span><span class="tok-p">];</span>

<span class="tok-kt">void</span>
<span class="tok-nf">start_echo_service</span><span class="tok-p">(</span><span class="tok-n">nng_socket</span><span class="tok-w"> </span><span class="tok-n">rep_socket</span><span class="tok-p">)</span>
<span class="tok-p">{</span>
<span class="tok-w"> </span><span class="tok-k">for</span><span class="tok-w"> </span><span class="tok-p">(</span><span class="tok-kt">int</span><span class="tok-w"> </span><span class="tok-n">i</span><span class="tok-w"> </span><span class="tok-o">=</span><span class="tok-w"> </span><span class="tok-mi">0</span><span class="tok-p">;</span><span class="tok-w"> </span><span class="tok-n">i</span><span class="tok-w"> </span><span class="tok-o">&lt;</span><span class="tok-w"> </span><span class="tok-n">CONCURRENCY</span><span class="tok-p">;</span><span class="tok-w"> </span><span class="tok-n">i</span><span class="tok-o">++</span><span class="tok-p">)</span><span class="tok-w"> </span><span class="tok-p">{</span>
<span class="tok-w"> </span><span class="tok-c1">// error checks elided for clarity</span>
<span class="tok-w"> </span><span class="tok-n">nng_ctx_open</span><span class="tok-p">(</span><span class="tok-n">ec</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">ctx</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-n">rep_socket</span><span class="tok-p">)</span>
<span class="tok-w"> </span><span class="tok-n">nng_aio_alloc</span><span class="tok-p">(</span><span class="tok-n">ec</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">aio</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-n">echo</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-o">&amp;</span><span class="tok-n">e</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">]);</span>
<span class="tok-w"> </span><span class="tok-n">ec</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">state</span><span class="tok-w"> </span><span class="tok-o">=</span><span class="tok-w"> </span><span class="tok-n">INIT</span><span class="tok-p">;</span>
<span class="tok-w"> </span><span class="tok-n">echo</span><span class="tok-p">(</span><span class="tok-o">&amp;</span><span class="tok-n">ec</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">]);</span><span class="tok-w"> </span><span class="tok-c1">// start it running</span>
<span class="tok-w"> </span><span class="tok-n">nng_ctx_open</span><span class="tok-p">(</span><span class="tok-o">&amp;</span><span class="tok-n">ecs</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">ctx</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-n">rep_socket</span><span class="tok-p">);</span>
<span class="tok-w"> </span><span class="tok-n">nng_aio_alloc</span><span class="tok-p">(</span><span class="tok-o">&amp;</span><span class="tok-n">ecs</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">aio</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-n">echo</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-n">ecs</span><span class="tok-o">+</span><span class="tok-n">i</span><span class="tok-p">);</span>
<span class="tok-w"> </span><span class="tok-n">ecs</span><span class="tok-p">[</span><span class="tok-n">i</span><span class="tok-p">].</span><span class="tok-n">state</span><span class="tok-w"> </span><span class="tok-o">=</span><span class="tok-w"> </span><span class="tok-n">INIT</span><span class="tok-p">;</span>
<span class="tok-w"> </span><span class="tok-n">echo</span><span class="tok-p">(</span><span class="tok-n">ecs</span><span class="tok-o">+</span><span class="tok-n">i</span><span class="tok-p">);</span><span class="tok-w"> </span><span class="tok-c1">// start it running</span>
<span class="tok-w"> </span><span class="tok-p">}</span>
<span class="tok-p">}</span></code></pre>
</div>
Expand Down
96 changes: 96 additions & 0 deletions man/tip/nng_log.3.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
version: tip
layout: manpage_v2
title: nng_log(3)
---
<h1>nng_log(3)</h1>
<div class="sect1">
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<div class="paragraph">
<p>nng_log - log messages</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_synopsis">SYNOPSIS</h2>
<div class="sectionbody">
<div class="listingblock">
<div class="content">
<pre class="pygments highlight"><code data-lang="c"><span></span><span class="tok-cp">#include</span><span class="tok-w"> </span><span class="tok-cpf">&lt;nng/nng.h&gt;</span>

<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_err</span><span class="tok-p">(</span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span>
<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_warn</span><span class="tok-p">(</span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span>
<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_notice</span><span class="tok-p">(</span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span>
<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_info</span><span class="tok-p">(</span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span>
<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_debug</span><span class="tok-p">(</span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span>

<span class="tok-kt">void</span><span class="tok-w"> </span><span class="tok-nf">nng_log_auth</span><span class="tok-p">(</span><span class="tok-n">nng_log_level</span><span class="tok-w"> </span><span class="tok-n">level</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msgid</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-k">const</span><span class="tok-w"> </span><span class="tok-kt">char</span><span class="tok-w"> </span><span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span><span class="tok-w"> </span><span class="tok-p">...);</span></code></pre>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>These functions are used to post a message to system or application logs.</p>
</div>
<div class="paragraph">
<p>The first five forms all post a message at the severity indicated by the function name.
The <em>msgid</em> should be a short message identifier that should indicate the message in question.
A <code>NULL</code> value for <em>msgid</em> canbe used as well.</p>
</div>
<div class="paragraph">
<p>Message identifiers can be used to assist in filtering logs.
These should uniquely identify the nature of the problem, whe possible, to assist in trouble-shooting.
They should also be short.
Eight characters or less is ideal, and more than sixteen is strongly discouraged.</p>
</div>
<div class="paragraph">
<p>The message is formatting as if by <code>sprintf</code>, using <code>msg</code> as the format, and remaining arguments as arguments to the format.</p>
</div>
<div class="paragraph">
<p>The final function, <code>nng_log_auth</code>, is used for posting authentication related messages which might be treated specially, such as be storing them in a separate secured log file.
It takes the severity as a level in <em>level</em>.
The severity can be one of the following values:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>NNG_LOG_ERR</code></p>
</li>
<li>
<p><code>NNG_LOG_WARN</code></p>
</li>
<li>
<p><code>NNG_LOG_NOTICE</code></p>
</li>
<li>
<p><code>NNG_LOG_INFO</code></p>
</li>
<li>
<p><code>NNG_LOG_DEBUG</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>The message itself is handled according to the logging facility set up with <a href="nng_mg_set_logger.3.html"><code>nng_log_set_logger</code></a>.
Message delivery is best effort, and messages may be suppressed based on the priority set with <a href="nng_log_set_level.3.html"><code>nng_log_set_level</code></a>.</p>
</div>
<div class="paragraph">
<p>Note that in order to get log messages, a suitable logger must be set using <code>nng_log_set_logger</code>.
The default logger, <code>nng_null_logger</code> simply discards logged content.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">SEE ALSO</h2>
<div class="sectionbody">
<div class="paragraph">
<p><a href="nng_log_set_facility.3.html">nng_log_set_facility(3)</a>,
<a href="nng_log_set_level.3.html">nng_log_set_level(3)</a>,
<a href="nng_log_set_logger.3.html">nng_log_set_logger(3)</a></p>
</div>
</div>
</div>
Loading

0 comments on commit 397cf9c

Please sign in to comment.