mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 05:33:47 +01:00
relay: Code and objects to initialize metrics store
Signed-off-by: David Goulet <dgoulet@torproject.org>
This commit is contained in:
parent
0cf25fd3a5
commit
bdde4579c2
@ -17,6 +17,13 @@
|
||||
|
||||
#include "feature/relay/relay_metrics.h"
|
||||
|
||||
/** The base metrics that is a static array of metrics added to the metrics
|
||||
* store.
|
||||
*
|
||||
* The key member MUST be also the index of the entry in the array. */
|
||||
static const relay_metrics_entry_t base_metrics[] = {};
|
||||
static const size_t num_base_metrics = ARRAY_LENGTH(base_metrics);
|
||||
|
||||
/** The only and single store of all the relay metrics. */
|
||||
static metrics_store_t *the_store;
|
||||
|
||||
|
@ -10,6 +10,30 @@
|
||||
#define TOR_FEATURE_RELAY_RELAY_METRICS_H
|
||||
|
||||
#include "lib/container/smartlist.h"
|
||||
#include "lib/metrics/metrics_common.h"
|
||||
|
||||
#ifdef RELAY_METRICS_ENTRY_PRIVATE
|
||||
|
||||
/** Metrics key for each reported metrics. This key is also used as an index in
|
||||
* the base_metrics array. */
|
||||
typedef enum {
|
||||
/* XXX So code compiles. */
|
||||
PLACEHOLDER = 0,
|
||||
} relay_metrics_key_t;
|
||||
|
||||
/** The metadata of a relay metric. */
|
||||
typedef struct relay_metrics_entry_t {
|
||||
/* Metric key used as a static array index. */
|
||||
relay_metrics_key_t key;
|
||||
/* Metric type. */
|
||||
metrics_type_t type;
|
||||
/* Metrics output name. */
|
||||
const char *name;
|
||||
/* Metrics output help comment. */
|
||||
const char *help;
|
||||
} relay_metrics_entry_t;
|
||||
|
||||
#endif /* RELAY_METRICS_ENTRY_PRIVATE */
|
||||
|
||||
/* Init. */
|
||||
void relay_metrics_init(void);
|
||||
|
Loading…
Reference in New Issue
Block a user