Asterisk - The Open Source Telephony Project  21.4.1
Data Fields
prometheus_callback Struct Reference

Defines a callback that will be invoked when the HTTP route is called. More...

#include <res_prometheus.h>

Data Fields

void(* callback_fn )(struct ast_str **output)
 The callback function to invoke.
 
const char * name
 The name of our callback (always useful for debugging)
 

Detailed Description

Defines a callback that will be invoked when the HTTP route is called.

This callback presents the second way of passing metrics to a Prometheus server. For metrics that are generated often or whose value needs to be stored, metrics can be created and registered. For metrics that can be obtained "on-the-fly", this mechanism is preferred. When the HTTP route is queried by prometheus, the registered callbacks are invoked. The string passed to the callback should be populated with stack-allocated metrics using prometheus_metric_to_string.

Example Usage:

static void prometheus_metric_callback(struct ast_str **output)
{
struct prometheus_metric test_counter =
"test_counter",
"A test counter",
NULL);
prometheus_metric_to_string(&test_counter, output);
}
static void load_module(void)
{
struct prometheus_callback callback = {
.name = "test_callback",
.callback_fn = &prometheus_metric_callback,
};
}

Definition at line 404 of file res_prometheus.h.


The documentation for this struct was generated from the following file: