MySQL 9.7.0
Source Code Documentation
tm_system_variables.cc File Reference
#include "tm_system_variables.h"
#include "tls_ciphers.h"
#include "tm_control.h"
#include "tm_log.h"
#include "tm_required_services.h"
#include "tm_setup_otel.h"

Classes

struct  telemetry::System_variable
 
struct  telemetry::bool_check_arg_s
 
struct  telemetry::str_check_arg_s
 
struct  telemetry::long_check_arg_s
 
struct  telemetry::ulong_check_arg_s
 
struct  telemetry::enum_check_arg_s
 
struct  telemetry::value_access
 Implement a st_mysql_value subclass, that retrieves the value of a system variable. More...
 

Namespaces

namespace  telemetry
 

Functions

static int telemetry::validate_tls_cipher (const char *actual, const char *supported, std::vector< std::string > &all_illegal)
 
static int telemetry::check_tls_cipher (const char *tls_version, const char *actual, const char *expected)
 
static int telemetry::check_tls12_cipher (MYSQL_THD, SYS_VAR *, void *save, struct st_mysql_value *value)
 
static int telemetry::check_tls13_cipher_suite (MYSQL_THD, SYS_VAR *, void *save, struct st_mysql_value *value)
 
static void telemetry::update_log_enabled (MYSQL_THD, SYS_VAR *, void *, const void *value)
 
static void telemetry::update_log_level (MYSQL_THD, SYS_VAR *, void *, const void *value)
 
int telemetry::check_system_variable (System_variable *v)
 Work around. More...
 
int telemetry::register_system_variables ()
 
void telemetry::unregister_system_variables ()
 

Variables

static const char * telemetry::sysvar_prefix = "telemetry"
 
static const char * telemetry::otlp_tls []
 
static TYPE_LIB telemetry::otlp_tls_typelib = {3, "otlp_tls", otlp_tls, nullptr}
 
static enum_check_arg_s telemetry::check_args_exporter_otlp_tls
 
static bool_check_arg_s telemetry::check_args_trace_enabled = {false}
 
bool telemetry::sv_trace_enabled = false
 
System_variable telemetry::sysvar_trace_enabled
 
static bool_check_arg_s telemetry::check_args_metrics_enabled = {false}
 
bool telemetry::sv_metrics_enabled = false
 
System_variable telemetry::sysvar_metrics_enabled
 
static bool_check_arg_s telemetry::check_args_log_enabled = {false}
 
bool telemetry::sv_log_enabled = false
 
System_variable telemetry::sysvar_log_enabled
 
static bool_check_arg_s telemetry::check_args_query_text_enabled = {true}
 
bool telemetry::sv_query_text_enabled = false
 
System_variable telemetry::sysvar_query_text_enabled
 
static const char * telemetry::otel_log_level_enums []
 
static TYPE_LIB telemetry::otel_log_level_typelib
 
static enum_check_arg_s telemetry::check_args_otel_log_level
 
ulong telemetry::sv_otel_log_level = OTEL_LOG_LEVEL_INFO
 
System_variable telemetry::sysvar_otel_log_level
 OTEL_EXPORTER_OTLP_TRACES_PROTOCOL. More...
 
static str_check_arg_s telemetry::check_args_resource_attributes = {""}
 
char * telemetry::sv_otel_resource_attributes = nullptr
 
System_variable telemetry::sysvar_otel_resource_attributes
 OTEL_RESOURCE_ATTRIBUTES. More...
 
static const char * telemetry::otlp_protocol_enums []
 
static TYPE_LIB telemetry::otlp_protocol_typelib
 
static enum_check_arg_s telemetry::check_args_exporter_otlp_protocol
 
ulong telemetry::sv_otel_exporter_otlp_traces_protocol = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_protocol
 OTEL_EXPORTER_OTLP_TRACES_PROTOCOL. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_endpoint = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_endpoint = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_endpoint
 OTEL_EXPORTER_OTLP_TRACES_ENDPOINT. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_network_namespace = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_network_namespace = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_network_namespace
 OTEL_EXPORTER_OTLP_TRACES_NETWORK_NAMESPACE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_certificates = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_certificates
 OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_client_key = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_client_key = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_client_key
 OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_client_certificates
 
char * telemetry::sv_otel_exporter_otlp_traces_client_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_client_certificates
 OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_traces_min_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_min_tls
 OTEL_EXPORTER_OTLP_TRACES_MIN_TLS. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_traces_max_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_max_tls
 OTEL_EXPORTER_OTLP_TRACES_MAX_TLS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_cipher
 
char * telemetry::sv_otel_exporter_otlp_traces_cipher = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_cipher
 OTEL_EXPORTER_OTLP_TRACES_CIPHER. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_cipher_suite
 
char * telemetry::sv_otel_exporter_otlp_traces_cipher_suite = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_cipher_suite
 OTEL_EXPORTER_OTLP_TRACES_CIPHER_SUITE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_headers
 OTEL_EXPORTER_OTLP_TRACES_HEADERS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_traces_secret_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_traces_secret_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_secret_headers
 OTEL_EXPORTER_OTLP_TRACES_SECRET_HEADERS. More...
 
static const char * telemetry::otlp_compression []
 
static TYPE_LIB telemetry::otlp_compression_typelib
 
static enum_check_arg_s telemetry::check_args_exporter_otlp_compression
 
ulong telemetry::sv_otel_exporter_otlp_traces_compression = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_compression
 OTEL_EXPORTER_OTLP_TRACES_COMPRESSION. More...
 
static long_check_arg_s telemetry::check_args_exporter_otlp_traces_timeout
 
long telemetry::sv_otel_exporter_otlp_traces_timeout = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_traces_timeout
 OTEL_EXPORTER_OTLP_TRACES_TIMEOUT. More...
 
static long_check_arg_s telemetry::check_args_otel_bsp_schedule_delay
 
long telemetry::sv_otel_bsp_schedule_delay = 0
 
System_variable telemetry::sysvar_otel_bsp_schedule_delay
 OTEL_BSP_SCHEDULE_DELAY. More...
 
static long_check_arg_s telemetry::check_args_otel_bsp_max_queue_size
 
long telemetry::sv_otel_bsp_max_queue_size = 0
 
System_variable telemetry::sysvar_otel_bsp_max_queue_size
 OTEL_BSP_MAX_QUEUE_SIZE. More...
 
static long_check_arg_s telemetry::check_args_otel_bsp_max_export_batch_size
 
long telemetry::sv_otel_bsp_max_export_batch_size = 0
 
System_variable telemetry::sysvar_otel_bsp_max_export_batch_size
 OTEL_BSP_MAX_EXPORT_BATCH_SIZE. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_metrics_protocol
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_protocol
 OTEL_EXPORTER_OTLP_METRICS_PROTOCOL. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_endpoint = {""}
 
char * telemetry::sv_otel_exporter_otlp_metrics_endpoint = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_endpoint
 OTEL_EXPORTER_OTLP_METRICS_ENDPOINT. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_network_namespace
 
char * telemetry::sv_otel_exporter_otlp_metrics_network_namespace = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_network_namespace
 OTEL_EXPORTER_OTLP_METRICS_NETWORK_NAMESPACE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_certificates = {""}
 
char * telemetry::sv_otel_exporter_otlp_metrics_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_certificates
 OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_client_key = {""}
 
char * telemetry::sv_otel_exporter_otlp_metrics_client_key = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_client_key
 OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_client_certificates
 
char * telemetry::sv_otel_exporter_otlp_metrics_client_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_client_certificates
 OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_metrics_min_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_min_tls
 OTEL_EXPORTER_OTLP_METRICS_MIN_TLS. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_metrics_max_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_max_tls
 OTEL_EXPORTER_OTLP_METRICS_MAX_TLS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_cipher
 
char * telemetry::sv_otel_exporter_otlp_metrics_cipher = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_cipher
 OTEL_EXPORTER_OTLP_METRICS_CIPHER. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_cipher_suite
 
char * telemetry::sv_otel_exporter_otlp_metrics_cipher_suite = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_cipher_suite
 OTEL_EXPORTER_OTLP_TRACES_CIPHER_SUITE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_metrics_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_headers
 OTEL_EXPORTER_OTLP_METRICS_HEADERS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_metrics_secret_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_metrics_secret_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_secret_headers
 OTEL_EXPORTER_OTLP_METRICS_SECRET_HEADERS. More...
 
ulong telemetry::sv_otel_exporter_otlp_metrics_compression = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_compression
 OTEL_EXPORTER_OTLP_METRICS_COMPRESSION. More...
 
static long_check_arg_s telemetry::check_args_exporter_otlp_metrics_timeout
 
long telemetry::sv_otel_exporter_otlp_metrics_timeout = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_metrics_timeout
 OTEL_EXPORTER_OTLP_METRICS_TIMEOUT. More...
 
ulong telemetry::sv_metrics_reader_frequency_1 = 0
 
static ulong_check_arg_s telemetry::check_args_metrics_reader_frequency_1
 
System_variable telemetry::sysvar_metrics_reader_frequency_1
 METRICS_READER_FREQUENCY_1. More...
 
ulong telemetry::sv_metrics_reader_frequency_2 = 0
 
static ulong_check_arg_s telemetry::check_args_metrics_reader_frequency_2
 
System_variable telemetry::sysvar_metrics_reader_frequency_2
 METRICS_READER_FREQUENCY_2. More...
 
ulong telemetry::sv_metrics_reader_frequency_3 = 0
 
static ulong_check_arg_s telemetry::check_args_metrics_reader_frequency_3
 
System_variable telemetry::sysvar_metrics_reader_frequency_3
 METRICS_READER_FREQUENCY_3. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_logs_protocol
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_protocol
 OTEL_EXPORTER_OTLP_LOGS_PROTOCOL. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_endpoint = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_endpoint = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_endpoint
 OTEL_EXPORTER_OTLP_LOGS_ENDPOINT. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_network_namespace = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_network_namespace = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_network_namespace
 OTEL_EXPORTER_OTLP_LOGS_NETWORK_NAMESPACE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_certificates = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_certificates
 OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_client_key = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_client_key = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_client_key
 OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_client_certificates = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_client_certificates = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_client_certificates
 OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_logs_min_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_min_tls
 OTEL_EXPORTER_OTLP_LOGS_MIN_TLS. More...
 
unsigned long telemetry::sv_otel_exporter_otlp_logs_max_tls = OTLP_TLS_DEFAULT
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_max_tls
 OTEL_EXPORTER_OTLP_LOGS_MAX_TLS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_cipher
 
char * telemetry::sv_otel_exporter_otlp_logs_cipher = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_cipher
 OTEL_EXPORTER_OTLP_LOGS_CIPHER. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_cipher_suite
 
char * telemetry::sv_otel_exporter_otlp_logs_cipher_suite = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_cipher_suite
 OTEL_EXPORTER_OTLP_LOGS_CIPHER_SUITE. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_headers
 OTEL_EXPORTER_OTLP_LOGS_HEADERS. More...
 
static str_check_arg_s telemetry::check_args_exporter_otlp_logs_secret_headers = {""}
 
char * telemetry::sv_otel_exporter_otlp_logs_secret_headers = nullptr
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_secret_headers
 OTEL_EXPORTER_OTLP_LOGS_SECRET_HEADERS. More...
 
ulong telemetry::sv_otel_exporter_otlp_logs_compression = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_compression
 OTEL_EXPORTER_OTLP_LOGS_COMPRESSION. More...
 
static long_check_arg_s telemetry::check_args_exporter_otlp_logs_timeout
 
long telemetry::sv_otel_exporter_otlp_logs_timeout = 0
 
System_variable telemetry::sysvar_otel_exporter_otlp_logs_timeout
 OTEL_EXPORTER_OTLP_LOGS_TIMEOUT. More...
 
static long_check_arg_s telemetry::check_args_otel_blrp_schedule_delay
 
long telemetry::sv_otel_blrp_schedule_delay = 0
 
System_variable telemetry::sysvar_otel_blrp_schedule_delay
 OTEL_BLRP_SCHEDULE_DELAY. More...
 
static long_check_arg_s telemetry::check_args_otel_blrp_max_queue_size
 
long telemetry::sv_otel_blrp_max_queue_size = 0
 
System_variable telemetry::sysvar_otel_blrp_max_queue_size
 OTEL_BLRP_MAX_QUEUE_SIZE. More...
 
static long_check_arg_s telemetry::check_args_otel_blrp_max_export_batch_size
 
long telemetry::sv_otel_blrp_max_export_batch_size = 0
 
System_variable telemetry::sysvar_otel_blrp_max_export_batch_size
 OTEL_BLRP_MAX_EXPORT_BATCH_SIZE. More...
 
static str_check_arg_s telemetry::check_args_resource_provider = {""}
 
char * telemetry::sv_resource_provider = nullptr
 
System_variable telemetry::sysvar_resource_provider
 RESOURCE_PROVIDER. More...
 
static str_check_arg_s telemetry::check_args_secret_provider = {""}
 
char * telemetry::sv_secret_provider = nullptr
 
System_variable telemetry::sysvar_secret_provider
 RESOURCE_PROVIDER. More...
 
System_variabletelemetry::all_sys_vars []