1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
---
version: tip
layout: manpage_v2
title: nng_stat(5)
---
<h1>nng_stat(5)</h1>
<div class="sect1">
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<div class="paragraph">
<p>nng_stat - statistic</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"><nng/nng.h></span>
<span class="tok-k">typedef</span><span class="tok-w"> </span><span class="tok-k">struct</span><span class="tok-w"> </span><span class="tok-nc">nng_stat</span><span class="tok-w"> </span><span class="tok-n">nng_stat</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>An <code>nng_stat</code> represents a statistic.
All statistics have names (<a href="nng_stat_name.3.html"><code>nng_stat_name()</code></a>) and
descriptions (<a href="nng_stat_desc.3.html"><code>nng_stat_desc()</code></a>), and are
typed (<a href="nng_stat_type.3.html"><code>nng_stat_type()</code></a>).</p>
</div>
<div class="paragraph">
<p>Most statistics are numeric,
and thus carry a value (<a href="nng_stat_value.3.html"><code>nng_stat_value()</code></a>)
and frequently also a unit that the value measures (<a href="nng_stat_unit.3.html"><code>nng_stat_unit()</code></a>).</p>
</div>
<div class="paragraph">
<p>Some statistics however, are simply strings (<a href="nng_stat_string.3.html"><code>nng_stat_string()</code></a>),
and thus carry no numeric value.</p>
</div>
<div class="paragraph">
<p>Statistics are organized as a tree, and any given statistic can have siblings
(<a href="nng_stat_next.3.html"><code>nng_stat_next()</code></a>).
Note however that generally only <code>NNG_STAT_SCOPE</code> statistics, which are
act as placeholders in the tree (and carry no value),
will have children (<a href="nng_stat_child.3.html"><code>nng_stat_child()</code></a>).</p>
</div>
<div class="paragraph">
<p>A tree of statistics is collected using <a href="nng_stats_get.3.html"><code>nng_stats_get()</code></a>,
and can be freed when no longer needed with <a href="nng_stats_free.3.html"><code>nng_stats_free()</code></a>.
This collection process is generally performed in a way to minimize impact
to running operations, but there is still some impact caused by collection
of statistics.</p>
</div>
<div class="paragraph">
<p>The time when a statistic’s value is captured can be obtained using
<a href="nng_stat_timestamp.3.html"><code>nng_stat_timestamp()</code></a>, which is useful for
measuring rates of change in certain statistics.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
The presence, names, and meanings of any given statistic are
subject to change at any time. These statistics are provided as an aid
for debugging, and should generally not be relied upon for programmatic
behaviors.
</td>
</tr>
</table>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Statistics may be disabled by build-time configuration options,
in order to reduce program size and run-time overheads.
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">SEE ALSO</h2>
<div class="sectionbody">
<div class="paragraph text-left">
<p><a href="libnng.3.html">libnng(3)</a>,
<a href="nng_stats_free.3.html">nng_stats_free(3)</a>,
<a href="nng_stats_get.3.html">nng_stats_get(3)</a>,
<a href="nng_stat_child.3.html">nng_stat_child(3)</a>,
<a href="nng_stat_desc.3.html">nng_stat_desc(3)</a>,
<a href="nng_stat_find.3.html">nng_stat_find(3)</a>,
<a href="nng_stat_find_dialer.3.html">nng_stat_find_dialer(3)</a>,
<a href="nng_stat_find_listener.3.html">nng_stat_find_listener(3)</a>,
<a href="nng_stat_find_socket.3.html">nng_stat_find_socket(3)</a>,
<a href="nng_stat_name.3.html">nng_stat_name(3)</a>,
<a href="nng_stat_next.3.html">nng_stat_next(3)</a>,
<a href="nng_stat_string.3.html">nng_stat_string(3)</a>,
<a href="nng_stat_timestamp.3.html">nng_stat_timestamp(3)</a>,
<a href="nng_stat_type.3.html">nng_stat_type(3)</a>,
<a href="nng_stat_unit.3.html">nng_stat_unit(3)</a>,
<a href="nng_stat_value.3.html">nng_stat_value(3)</a>,
<a href="nng.7.html">nng(7)</a></p>
</div>
</div>
</div>
|