git-subtree-dir: external/nng git-subtree-split: 29b73962b939a6fbbf6ea8d5d7680bb06d0eeb99
86 lines
2.9 KiB
Text
86 lines
2.9 KiB
Text
= nng_stats_get(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_stats_get - get statistics snapshot
|
|
|
|
== SYNOPSIS
|
|
|
|
[source, c]
|
|
----
|
|
#include <nng/nng.h>
|
|
|
|
typedef struct nng_stat nng_stat;
|
|
|
|
int nng_stats_get(nng_stat **statsp)
|
|
----
|
|
|
|
== DESCRIPTION
|
|
|
|
The `nng_stat_get()` function attempts to obtain a snapshot of all the
|
|
various diagnostic statistics that are present in the system.
|
|
|
|
NOTE: The process of collecting statistics is designed to have minimal
|
|
impact on the system, but there is still some impact.
|
|
|
|
The statistics are organized as a tree, rooted with a parent
|
|
statistic of type `NNG_STAT_SCOPE` that carries no value, and which
|
|
has an empty name.
|
|
This parent statistic is returned through the _statsp_ pointer.
|
|
|
|
The xref:nng_stat_child.3.adoc[`nng_stat_child()`] and
|
|
xref:nng_stat_next.3.adoc[`nng_stat_next()`] function can be used to
|
|
iterate over the the tree.
|
|
|
|
When no longer needed, the statistics can be freed with the
|
|
xref:nng_stats_free.3.adoc[`nng_stats_free()`] function, but that
|
|
function must be called only with the root statistic that is returned
|
|
through the _statsp_ pointer.
|
|
|
|
NOTE: The values of individual statistics are guaranteed to be atomic,
|
|
but due the way statistics are collected there can be discrepancies between them at certain times.
|
|
For example, statistics counting bytes and messages received may not
|
|
reflect the same number of messages, depending on when the snapshot is taken.
|
|
This potential inconsistency arises as a result of optimizations to minimize
|
|
the impact of statistics on actual operations.
|
|
|
|
NOTE: The names, values, and semantics of statistics provided may change
|
|
from release to release.
|
|
These are provided for informational and debugging use only, and applications
|
|
should not rely on the presence, names, or meanings of any individual statistics.
|
|
|
|
== RETURN VALUES
|
|
|
|
This function returns a pointer to the allocated memory on success,
|
|
and `NULL` otherwise.
|
|
|
|
== ERRORS
|
|
|
|
[horizontal]
|
|
`NNG_ENOMEM`:: Insufficient free memory to collect statistics.
|
|
`NNG_ENOTSUP`:: Statistics are not supported (compile time option).
|
|
|
|
== SEE ALSO
|
|
|
|
[.text-left]
|
|
xref:nng_stats_free.3.adoc[nng_stats_free(3)],
|
|
xref:nng_stat_child.3.adoc[nng_stat_child(3)],
|
|
xref:nng_stat_desc.3.adoc[nng_stat_desc(3)],
|
|
xref:nng_stat_name.3.adoc[nng_stat_name(3)],
|
|
xref:nng_stat_next.3.adoc[nng_stat_next(3)],
|
|
xref:nng_stat_string.3.adoc[nng_stat_string(3)],
|
|
xref:nng_stat_type.3.adoc[nng_stat_type(3)],
|
|
xref:nng_stat_timestamp.3.adoc[nng_stat_timestamp(3)],
|
|
xref:nng_stat_unit.3.adoc[nng_stat_unit(3)],
|
|
xref:nng_stat_value.3.adoc[nng_stat_value(3)],
|
|
xref:nng_stat.5.adoc[nng_stat(5)],
|
|
xref:nng.7.adoc[nng(7)]
|