libosmocore 1.10.0.58-6cd7a
Osmocom core library
|
utility routines for keeping statistical values More...
#include <stdint.h>
#include <string.h>
#include <osmocom/core/utils.h>
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/logging.h>
#include <osmocom/core/talloc.h>
#include <osmocom/core/timer.h>
#include <osmocom/core/stat_item.h>
#include <stat_item_internal.h>
Functions | |
static | LLIST_HEAD (osmo_stat_item_groups) |
global list of stat_item groups More... | |
struct osmo_stat_item_group * | osmo_stat_item_group_alloc (void *ctx, const struct osmo_stat_item_group_desc *group_desc, unsigned int idx) |
Allocate a new group of counters according to description. More... | |
void | osmo_stat_item_group_free (struct osmo_stat_item_group *grp) |
Free the memory for the specified group of stat items. More... | |
struct osmo_stat_item * | osmo_stat_item_group_get_item (struct osmo_stat_item_group *grp, unsigned int idx) |
Get statistics item from group, identified by index idx. More... | |
void | osmo_stat_item_group_set_name (struct osmo_stat_item_group *statg, const char *name) |
Set a name for the statistics item group to be used instead of index value at report time. More... | |
void | osmo_stat_item_inc (struct osmo_stat_item *item, int32_t value) |
Increase the stat_item to the given value. More... | |
void | osmo_stat_item_dec (struct osmo_stat_item *item, int32_t value) |
Descrease the stat_item to the given value. More... | |
void | osmo_stat_item_set (struct osmo_stat_item *item, int32_t value) |
Set the a given stat_item to the given value. More... | |
void | osmo_stat_item_flush (struct osmo_stat_item *item) |
Indicate that a reporting period has elapsed, and prepare the stat item for a new period of collecting min/max/avg. More... | |
int | osmo_stat_item_init (void *tall_ctx) |
Initialize the stat item module. More... | |
struct osmo_stat_item_group * | osmo_stat_item_get_group_by_name_idx (const char *name, const unsigned int idx) |
Search for item group based on group name and index. More... | |
struct osmo_stat_item_group * | osmo_stat_item_get_group_by_name_idxname (const char *group_name, const char *idx_name) |
Search for item group based on group name and index's name. More... | |
const struct osmo_stat_item * | osmo_stat_item_get_by_name (const struct osmo_stat_item_group *statg, const char *name) |
Search for item based on group + item name. More... | |
int | osmo_stat_item_for_each_item (struct osmo_stat_item_group *statg, osmo_stat_item_handler_t handle_item, void *data) |
Iterate over all items in group, call user-supplied function on each. More... | |
int | osmo_stat_item_for_each_group (osmo_stat_item_group_handler_t handle_group, void *data) |
Iterate over all stat_item groups in system, call user-supplied function on each. More... | |
int32_t | osmo_stat_item_get_last (const struct osmo_stat_item *item) |
Get the last (freshest) value. More... | |
void | osmo_stat_item_reset (struct osmo_stat_item *item) |
Remove all values of a stat item. More... | |
void | osmo_stat_item_group_reset (struct osmo_stat_item_group *statg) |
Reset all osmo stat items in a group. More... | |
const struct osmo_stat_item_desc * | osmo_stat_item_get_desc (struct osmo_stat_item *item) |
Return the description for an osmo_stat_item. More... | |
Variables | |
static void * | tall_stat_item_ctx |
talloc context from which we allocate More... | |
utility routines for keeping statistical values