MySQL 9.0.0
Source Code Documentation
mysql_server_telemetry_metrics_service.h
Go to the documentation of this file.
1/* Copyright (c) 2022, 2024, Oracle and/or its affiliates.
2
3This program is free software; you can redistribute it and/or modify
4it under the terms of the GNU General Public License, version 2.0,
5as published by the Free Software Foundation.
6
7This program is designed to work with certain software (including
8but not limited to OpenSSL) that is licensed under separate terms,
9as designated in a particular file or component or in included license
10documentation. The authors of MySQL hereby grant you an additional
11permission to link the program and your derivative works with the
12separately licensed software that they have either included with
13the program or referenced in the documentation.
14
15This program is distributed in the hope that it will be useful,
16but WITHOUT ANY WARRANTY; without even the implied warranty of
17MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18GNU General Public License, version 2.0, for more details.
19
20You should have received a copy of the GNU General Public License
21along with this program; if not, write to the Free Software
22Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
23
24#ifndef MYSQL_SERVER_TELEMETRY_METRICS_SERVICE_INCLUDED
25#define MYSQL_SERVER_TELEMETRY_METRICS_SERVICE_INCLUDED
26
31
32/*
33 Version 1.
34 Introduced in MySQL 8.2.0
35 Status: Active.
36*/
37BEGIN_SERVICE_DEFINITION(mysql_server_telemetry_metrics_v1)
38
39meters_iterator_create_t meter_iterator_create;
40meters_iterator_destroy_t meter_iterator_destroy;
41meters_iterator_advance_t meter_iterator_advance;
46
47metrics_iterator_create_t metric_iterator_create;
48metrics_iterator_destroy_t metric_iterator_destroy;
49metrics_iterator_advance_t metric_iterator_advance;
58
61
62END_SERVICE_DEFINITION(mysql_server_telemetry_metrics_v1)
63
64#endif /* MYSQL_SERVER_TELEMETRY_METRICS_SERVICE_INCLUDED */
bool(* meters_iterator_get_name_t)(telemetry_meters_iterator iterator, my_h_string *out_name_handle)
Return meter name for the element pointed by Telemetry Meter (Metric Group) iterator.
Definition: server_telemetry_metrics_bits.h:236
bool(* metrics_iterator_get_unit_t)(telemetry_metrics_iterator iterator, my_h_string *out_unit_handle)
Return metric unit for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:143
bool(* meters_iterator_get_description_t)(telemetry_meters_iterator iterator, my_h_string *out_desc_handle)
Return meter description for the element pointed by Telemetry Meter iterator.
Definition: server_telemetry_metrics_bits.h:278
bool(* metrics_iterator_get_value_t)(telemetry_metrics_iterator iterator, measurement_delivery_callback_t delivery, void *delivery_context)
Return metric name for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:114
bool(* metrics_iterator_destroy_t)(telemetry_metrics_iterator iterator)
Uninitialize Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:61
bool(* metrics_iterator_get_name_t)(telemetry_metrics_iterator iterator, my_h_string *out_name_handle)
Return metric name for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:99
bool(* metrics_iterator_get_callback_t)(telemetry_metrics_iterator iterator, measurement_callback_t &callback, void *&measurement_context)
Return metric measurement callback function for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:186
bool(* meters_iterator_create_t)(telemetry_meters_iterator *iterator)
Initialize Telemetry Meter (Metric Group) iterator object to enumerate metrics groups,...
Definition: server_telemetry_metrics_bits.h:201
bool(* meters_iterator_advance_t)(telemetry_meters_iterator iterator)
Advance Telemetry Meter (Metric Group) iterator to next element.
Definition: server_telemetry_metrics_bits.h:223
bool(* metrics_iterator_get_metric_type_t)(telemetry_metrics_iterator iterator, MetricOTELType &metric_type)
Return metric OTEL type for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:171
bool(* metrics_iterator_advance_t)(telemetry_metrics_iterator iterator)
Advance Telemetry Metric iterator to next element.
Definition: server_telemetry_metrics_bits.h:72
bool(* metrics_iterator_create_t)(const char *meter, telemetry_metrics_iterator *iterator)
Initialize Telemetry Metric iterator object to enumerate metrics and read measurement values,...
Definition: server_telemetry_metrics_bits.h:49
bool(* meters_iterator_destroy_t)(telemetry_meters_iterator iterator)
Uninitialize Telemetry Meter (Metric Group) iterator.
Definition: server_telemetry_metrics_bits.h:212
bool(* measurement_reading_end_t)()
Release the lock(s) needed to read system variables.
Definition: server_telemetry_metrics_bits.h:301
bool(* metrics_iterator_get_group_t)(telemetry_metrics_iterator iterator, my_h_string *out_group_handle)
Return group name for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:85
bool(* meters_iterator_get_enabled_t)(telemetry_meters_iterator iterator, bool &enabled)
Return meter enabled status for the element pointed by Telemetry Meter iterator.
Definition: server_telemetry_metrics_bits.h:264
bool(* measurement_reading_start_t)()
Take the lock(s) needed to read system variables.
Definition: server_telemetry_metrics_bits.h:290
bool(* metrics_iterator_get_description_t)(telemetry_metrics_iterator iterator, my_h_string *out_desc_handle)
Return metric description for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:129
bool(* meters_iterator_get_frequency_t)(telemetry_meters_iterator iterator, unsigned int &value)
Return meter update frequency for the element pointed by Telemetry Meter iterator.
Definition: server_telemetry_metrics_bits.h:250
bool(* metrics_iterator_get_numeric_type_t)(telemetry_metrics_iterator iterator, MetricNumType &numeric)
Return metric numeric type for the element pointed by Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:157
#define END_SERVICE_DEFINITION(name)
A macro to end the last Service definition started with the BEGIN_SERVICE_DEFINITION macro.
Definition: service.h:91
#define BEGIN_SERVICE_DEFINITION(name)
Declares a new Service.
Definition: service.h:86
Specifies macros to define Service Implementations.