diff options
| author | Garrett D'Amore <garrett@damore.org> | 2018-08-22 08:56:53 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2018-09-03 22:57:23 -0400 |
| commit | d83b96faeb02d7a3574e63880141d6b23f31ced1 (patch) | |
| tree | b6cd2feca3513dccba012b9da2ac230e94d09ac0 /docs/man/nng_stat_unit.3.adoc | |
| parent | 1b2a93503e0ed108f7c4add4bcf4b201a363bb80 (diff) | |
| download | nng-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.adoc | 86 |
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)>> |
