aboutsummaryrefslogtreecommitdiff
path: root/docs/man/nng_stat_unit.3.adoc
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2018-08-22 08:56:53 -0700
committerGarrett D'Amore <garrett@damore.org>2018-09-03 22:57:23 -0400
commitd83b96faeb02d7a3574e63880141d6b23f31ced1 (patch)
treeb6cd2feca3513dccba012b9da2ac230e94d09ac0 /docs/man/nng_stat_unit.3.adoc
parent1b2a93503e0ed108f7c4add4bcf4b201a363bb80 (diff)
downloadnng-d83b96faeb02d7a3574e63880141d6b23f31ced1.tar.gz
nng-d83b96faeb02d7a3574e63880141d6b23f31ced1.tar.bz2
nng-d83b96faeb02d7a3574e63880141d6b23f31ced1.zip
fixes #4 Statistics support
This introduces new public APIs for obtaining statistics, and adds some generic stats for dialers, listeners, pipes, and sockets. Also added are stats for inproc and pairv1 protocol. The other protocols and transports will have stats added incrementally as time goes on. A simple test program, and man pages are provided for this. Start by looking at nng_stat(5). Statistics does have some impact, and they can be disabled by using the advanced NNG_ENABLE_STATS (setting it to OFF, it's ON by default) if you need to build a minimized configuration.
Diffstat (limited to 'docs/man/nng_stat_unit.3.adoc')
-rw-r--r--docs/man/nng_stat_unit.3.adoc86
1 files changed, 86 insertions, 0 deletions
diff --git a/docs/man/nng_stat_unit.3.adoc b/docs/man/nng_stat_unit.3.adoc
new file mode 100644
index 00000000..cb9bb7cf
--- /dev/null
+++ b/docs/man/nng_stat_unit.3.adoc
@@ -0,0 +1,86 @@
+= nng_version(3)
+//
+// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2018 Capitar IT Group BV <info@capitar.com>
+//
+// This document is supplied under the terms of the MIT License, a
+// copy of which should be located in the distribution where this
+// file was obtained (LICENSE.txt). A copy of the license may also be
+// found online at https://opensource.org/licenses/MIT.
+//
+
+== NAME
+
+nng_stat_value - get statistic value
+
+== SYNOPSIS
+
+[source, c]
+----
+#include <nng/nng.h>
+
+typedef struct nng_stat nng_stat;
+
+enum {
+ NNG_UNIT_NONE,
+ NNG_UNIT_BYTES,
+ NNG_UNIT_MESSAGES,
+ NNG_UNIT_MILLIS,
+ NNG_UNIT_EVENTS
+};
+
+int nng_stat_unit(nng_stat *stat);
+----
+
+== DESCRIPTION
+
+The `nng_stat_unit()` function returns the unit of quantity measured
+by the statistic _stat_.
+
+The returned value will be one of the following values:
+
+((`NNG_UNIT_NONE`))::
+There are no particular units measured.
+In some cases there may be units, but the type of the unit will be obvious
+from the name (see `<<nng_stat_name.3#,nng_stat_name()>>`) of the statistic.
+
+((`NNG_UNIT_BYTES`))::
+The statistic is a count of bytes.
+
+((`NNG_UNIT_MESSAGES`))::
+The statistic is a count of messages.
+Typically, one message corresponds to a single `<<nng_msg.5#,nng_msg>>` structure.
+
+((`NNG_UNIT_MILLIS`))::
+The statistic is a count of milliseconds.
+
+((`NNG_STAT_EVENTS`))::
+The statistic is a count of some other type of event.
+
+For statistics that are neither `NNG_STAT_COUNTER` nor `NNG_STAT_LEVEL`
+type (see `<<nng_stat_type.3#,nng_stat_type()>>`), the unit will
+generally be `NNG_UNIT_NONE`.
+
+TIP: Normally rates can be calculated for `NNG_STAT_COUNTER` values for
+any of these units, but for `NNG_UNIT_MILLIS` rate calculations are generally
+meaningless.
+
+== RETURN VALUES
+
+The units measured by _stat_.
+
+== ERRORS
+
+None.
+
+== SEE ALSO
+
+[.text-left]
+<<libnng.3#,libnng(3)>>,
+<<nng_stats_get.3#,nng_stats_get(3)>>,
+<<nng_stat_name.3#,nng_stat_name(3)>>,
+<<nng_stat_type.3#,nng_stat_type(3)>>,
+<<nng_stat_value.3#,nng_stat_value(3)>>,
+<<nng_msg.5#,nng_msg(5)>>,
+<<nng_stat.5#,nng_stat(5)>>,
+<<nng.7#,nng(7)>>