MySQL 9.1.0
Source Code Documentation
applier_metrics_service_imp.h
Go to the documentation of this file.
1/* Copyright (c) 2024, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is designed to work with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have either included with
13 the program or referenced in the documentation.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License, version 2.0, for more details.
19
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
23
24#ifndef APPLIER_METRICS_SERVICE_IMP_H
25#define APPLIER_METRICS_SERVICE_IMP_H
26
30#include <string>
31
33 public:
34 /// @brief Get metrics for the replication applier.
35 /// @param[out] table pointer, whose value will be set to an array of arrays
36 /// of fields in which the metric values are stored.
37 /// @return
38 /// @retval FALSE Succeeded.
39 /// @retval TRUE Failed.
42
43 /// @brief Free memory for object holding metrics for the replication applier.
44 /// @param[out] table Pointer to object that was previously retrieved from
45 /// @c get_applier_metrics.
48
49 /// @brief Get metrics for replication workers.
50 /// @param[out] table pointer, whose value will be set to an array of arrays
51 /// of fields in which the metric values are stored.
52 /// @return
53 /// @retval FALSE Succeeded.
54 /// @retval TRUE Failed.
56
57 /// @brief Free memory for object holding metrics for the replication workers.
58 /// @param[out] table Pointer to object that was previously retrieved from
59 /// @c get_worker_metrics.
62
63 /// @brief Enables metric collection in the server for replication applier
64 /// components
65 /// @return
66 /// @retval FALSE Succeeded.
67 /// @retval TRUE Failed.
69
70 /// @brief Enables metric collection in the server for replication applier
71 /// components
72 /// @return
73 /// @retval FALSE Succeeded.
74 /// @retval TRUE Failed.
75
77};
78
79#endif /* APPLIER_METRICS_SERVICE_IMP_H */
Definition: applier_metrics_service_imp.h:32
static mysql_service_status_t enable_metric_collection() noexcept
Enables metric collection in the server for replication applier components.
Definition: applier_metrics_service_imp.cc:364
static mysql_service_status_t get_worker_metrics(Worker_metrics_table *table) noexcept
Get metrics for replication workers.
Definition: applier_metrics_service_imp.cc:255
static void free_worker_metrics(Worker_metrics_table *table) noexcept
Free memory for object holding metrics for the replication workers.
Definition: applier_metrics_service_imp.cc:355
static void free_applier_metrics(Applier_metrics_table *table) noexcept
Free memory for object holding metrics for the replication applier.
Definition: applier_metrics_service_imp.cc:246
static mysql_service_status_t disable_metric_collection() noexcept
Enables metric collection in the server for replication applier components.
Definition: applier_metrics_service_imp.cc:370
static mysql_service_status_t get_applier_metrics(Applier_metrics_table *table) noexcept
Get metrics for the replication applier.
Definition: applier_metrics_service_imp.cc:41
Ownership-agnostic array class, which is both trivial and standard-layout.
Definition: array_view.h:53
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
Specifies macros to define Service Implementations.
#define DEFINE_BOOL_METHOD(name, args)
A short macro to define method that returns bool, which is the most common case.
Definition: service_implementation.h:88
#define DEFINE_METHOD(retval, name, args)
A macro to ensure method implementation has required properties, that is it does not throw exceptions...
Definition: service_implementation.h:79