asterisk/res/prometheus/prometheus_internal.h
Alexander Traud 57fef28dc9 progdocs: Avoid 'name' with Doxygen \file.
Fixes four misuses of the parameter 'name'. Additionally, for
consistency and to avoid such an issue in future, those few other
places, which used '\file name', were changed just to '\file'. Then,
Doxygen uses the name of the current file.

ASTERISK-29733

Change-Id: I0c18b4c863c6988b138c77448057349a9ee7052d
2021-11-18 08:17:56 -06:00

103 lines
2.3 KiB
C

/*
* Prometheus Internal API
*
* Copyright (C) 2019 Sangoma, Inc.
*
* Matt Jordan <mjordan@digium.com>
*
* See http://www.asterisk.org for more information about
* the Asterisk project. Please do not directly contact
* any of the maintainers of this project for assistance;
* the project provides a web site, mailing lists and IRC
* channels for your use.
*
* This program is free software, distributed under the terms of
* the GNU General Public License Version 2. See the LICENSE file
* at the top of the source tree.
*/
#ifndef PROMETHEUS_INTERNAL_H__
#define PROMETHEUS_INTERNAL_H__
/*!
* \file
*
* \brief Prometheus Metric Internal API
*
* This module provides internal APIs for res_prometheus.
* It should not be used outsize of that module, and should
* typically only provide intialization functions for units that
* want to register metrics / handlers with the core API.
*/
/*!
* \brief Retrieve the amount of time it took to perform the last scrape
*
* \details Time returned is in milliseconds
*
* \retval The scrape duration, in milliseconds
*/
int64_t prometheus_last_scrape_duration_get(void);
/*!
* \brief Retrieve the timestamp when the last scrape occurred
*
* \retval The time when the last scrape occurred
*/
struct timeval prometheus_last_scrape_time_get(void);
/*!
* \brief Get the raw output of what a scrape would produce
*
* \details
* It can be useful to dump what a scrape will look like.
* This function returns the raw string representation
* of the metrics.
*
* \retval NULL on error
* \retval Malloc'd ast_str on success
*/
struct ast_str *prometheus_scrape_to_string(void);
/*!
* \brief Initialize CLI command
*
* \retval 0 success
* \retval -1 error
*/
int cli_init(void);
/*!
* \brief Initialize channel metrics
*
* \retval 0 success
* \retval -1 error
*/
int channel_metrics_init(void);
/*!
* \brief Initialize endpoint metrics
*
* \retval 0 success
* \retval -1 error
*/
int endpoint_metrics_init(void);
/*!
* \brief Initialize bridge metrics
*
* \retval 0 success
* \retval -1 error
*/
int bridge_metrics_init(void);
/*!
* \brief Initialize PJSIP outbound registration metrics
*
* \retval 0 success
* \retval -1 error
*/
int pjsip_outbound_registration_metrics_init(void);
#endif /* #define PROMETHEUS_INTERNAL_H__ */