MySQL 8.3.0
Source Code Documentation
mysql_server_telemetry_metrics_service.h
Go to the documentation of this file.
1/* Copyright (c) 2022, 2023, 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 also distributed 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 included with MySQL.
13
14This program is distributed in the hope that it will be useful,
15but WITHOUT ANY WARRANTY; without even the implied warranty of
16MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17GNU General Public License, version 2.0, for more details.
18
19You should have received a copy of the GNU General Public License
20along with this program; if not, write to the Free Software
21Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
22
23#ifndef MYSQL_SERVER_TELEMETRY_METRICS_SERVICE_INCLUDED
24#define MYSQL_SERVER_TELEMETRY_METRICS_SERVICE_INCLUDED
25
30
31/*
32 Version 1.
33 Introduced in MySQL 8.2.0
34 Status: Active.
35*/
36BEGIN_SERVICE_DEFINITION(mysql_server_telemetry_metrics_v1)
37
38meters_iterator_create_t meter_iterator_create;
39meters_iterator_destroy_t meter_iterator_destroy;
40meters_iterator_advance_t meter_iterator_advance;
45
46metrics_iterator_create_t metric_iterator_create;
47metrics_iterator_destroy_t metric_iterator_destroy;
48metrics_iterator_advance_t metric_iterator_advance;
57
60
61END_SERVICE_DEFINITION(mysql_server_telemetry_metrics_v1)
62
63#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:235
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:142
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:277
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:113
bool(* metrics_iterator_destroy_t)(telemetry_metrics_iterator iterator)
Uninitialize Telemetry Metric iterator.
Definition: server_telemetry_metrics_bits.h:60
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:98
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:185
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:200
bool(* meters_iterator_advance_t)(telemetry_meters_iterator iterator)
Advance Telemetry Meter (Metric Group) iterator to next element.
Definition: server_telemetry_metrics_bits.h:222
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:170
bool(* metrics_iterator_advance_t)(telemetry_metrics_iterator iterator)
Advance Telemetry Metric iterator to next element.
Definition: server_telemetry_metrics_bits.h:71
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:48
bool(* meters_iterator_destroy_t)(telemetry_meters_iterator iterator)
Uninitialize Telemetry Meter (Metric Group) iterator.
Definition: server_telemetry_metrics_bits.h:211
bool(* measurement_reading_end_t)()
Release the lock(s) needed to read system variables.
Definition: server_telemetry_metrics_bits.h:300
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:84
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:263
bool(* measurement_reading_start_t)()
Take the lock(s) needed to read system variables.
Definition: server_telemetry_metrics_bits.h:289
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:128
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:249
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:156
#define END_SERVICE_DEFINITION(name)
A macro to end the last Service definition started with the BEGIN_SERVICE_DEFINITION macro.
Definition: service.h:90
#define BEGIN_SERVICE_DEFINITION(name)
Declares a new Service.
Definition: service.h:85
Specifies macros to define Service Implementations.