7#ifndef ZEPHYR_INCLUDE_PROMETHEUS_COLLECTOR_H_
8#define ZEPHYR_INCLUDE_PROMETHEUS_COLLECTOR_H_
48#define PROMETHEUS_COLLECTOR_DEFINE(_name) \
49 static STRUCT_SECTION_ITERABLE(prometheus_collector, _name) = { \
50 .name = STRINGIFY(_name), .size = 0, .metric = {0}}
const void * prometheus_collector_get_metric(const struct prometheus_collector *collector, const char *name)
Get a metric from a Prometheus collector.
int prometheus_collector_register_metric(struct prometheus_collector *collector, struct prometheus_metric *metric)
Register a metric with a Prometheus collector.
Prometheus metric interface.
Prometheus collector definition.
Definition collector.h:32
const char * name
Name of the collector.
Definition collector.h:34
size_t size
Number of metrics associated with the collector.
Definition collector.h:38
struct prometheus_metric * metric[CONFIG_PROMETHEUS_MAX_METRICS]
Array of metrics associated with the collector.
Definition collector.h:36
Type used to represent a Prometheus metric base.
Definition metric.h:48
char name[32]
Name of the Prometheus metric.
Definition metric.h:52