MySQL 8.4.2
Source Code Documentation
destination_status_plugin.cc File Reference
#include <array>
#include <chrono>
#include <mutex>
#include <stdexcept>
#include <system_error>
#include "mysql/harness/config_option.h"
#include "mysql/harness/config_parser.h"
#include "mysql/harness/dynamic_config.h"
#include "mysql/harness/plugin.h"
#include "mysql/harness/plugin_config.h"
#include "mysql/harness/section_config_exposer.h"
#include "mysqlrouter/destination_status_component.h"
#include "mysqlrouter/destination_status_plugin_export.h"
#include "mysqlrouter/supported_destination_status_options.h"

Classes

class  DestinationStatusPluginConfig
 
class  anonymous_namespace{destination_status_plugin.cc}::DestinationStatusConfigExposer
 

Namespaces

namespace  anonymous_namespace{destination_status_plugin.cc}
 

Typedefs

template<class T >
using IntOption = mysql_harness::IntOption< T >
 destination status plugin. More...
 

Functions

static void init (mysql_harness::PluginFuncEnv *env)
 
static void expose_configuration (mysql_harness::PluginFuncEnv *env, const char *, bool initial)
 

Variables

static const std::string kSectionName {"destination_status"}
 
static const std::string kOptionThreshold {"error_quarantine_threshold"}
 
static const std::string kOptionInterval {"error_quarantine_interval"}
 
static constexpr uint32_t kDefaultErrorQuarantineThreshold {1}
 
static constexpr uint32_t kDefaultErrorQuarantineInterval {1}
 
static const std::array< const char *, 2 > required
 
mysql_harness::Plugin DESTINATION_STATUS_PLUGIN_EXPORT harness_plugin_destination_status
 

Typedef Documentation

◆ IntOption

template<class T >
using IntOption = mysql_harness::IntOption<T>

destination status plugin.

Function Documentation

◆ expose_configuration()

static void expose_configuration ( mysql_harness::PluginFuncEnv env,
const char *  ,
bool  initial 
)
static

◆ init()

static void init ( mysql_harness::PluginFuncEnv env)
static

Variable Documentation

◆ harness_plugin_destination_status

mysql_harness::Plugin DESTINATION_STATUS_PLUGIN_EXPORT harness_plugin_destination_status
Initial value:
= {
mysql_harness::PLUGIN_ABI_VERSION,
mysql_harness::ARCHITECTURE_DESCRIPTOR,
"destination status",
VERSION_NUMBER(0, 0, 1),
required.size(),
required.data(),
0,
nullptr,
nullptr,
nullptr,
nullptr,
false,
}
static void expose_configuration(mysql_harness::PluginFuncEnv *env, const char *, bool initial)
Definition: destination_status_plugin.cc:156
static void init(mysql_harness::PluginFuncEnv *env)
Definition: destination_status_plugin.cc:86
static const std::array< const char *, 2 > required
Definition: destination_status_plugin.cc:124
static constexpr std::array< const char *, 2 > destination_status_supported_options
Definition: supported_destination_status_options.h:32

◆ kDefaultErrorQuarantineInterval

constexpr uint32_t kDefaultErrorQuarantineInterval {1}
staticconstexpr

◆ kDefaultErrorQuarantineThreshold

constexpr uint32_t kDefaultErrorQuarantineThreshold {1}
staticconstexpr

◆ kOptionInterval

const std::string kOptionInterval {"error_quarantine_interval"}
static

◆ kOptionThreshold

const std::string kOptionThreshold {"error_quarantine_threshold"}
static

◆ kSectionName

const std::string kSectionName {"destination_status"}
static

◆ required

const std::array<const char *, 2> required
static
Initial value:
= {{
"logger",
"io",
}}