MySQL 9.7.0
Source Code Documentation
tm_component.cc File Reference
#include <sys/types.h>
#include <unistd.h>
#include <opentelemetry/sdk/version/version.h>
#include <opentelemetry/version.h>
#include <mysql/components/component_implementation.h>
#include <mysql/components/service_implementation.h>
#include <mysql/components/services/component_sys_var_service.h>
#include <mysql/components/services/dynamic_loader_service_notification.h>
#include <mysql/components/services/log_builtins.h>
#include <mysql/components/services/mysql_query_attributes.h>
#include <mysql/components/services/pfs_notification.h>
#include "my_hostname.h"
#include "option_usage.h"
#include "tm_control.h"
#include "tm_global.h"
#include "tm_log.h"
#include "tm_notification.h"
#include "tm_ns.h"
#include "tm_psi.h"
#include "tm_required_services.h"
#include "tm_resource.h"
#include "tm_secret.h"
#include "tm_setup_otel.h"
#include "tm_slot.h"
#include "tm_status_variables.h"
#include "tm_system_variables.h"

Namespaces

namespace  telemetry
 

Functions

 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (status_variable_registration, statvar_register_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (component_sys_variable_register, sysvar_register_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (component_sys_variable_unregister, sysvar_unregister_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (log_builtins, log_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (log_builtins_string, log_string_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (pfs_notification_v3, notification_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_current_thread_reader, current_thd_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_connection_attributes_iterator, con_attr_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_thd_store, thd_store_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_server_telemetry_traces_v1, telemetry_traces_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_server_telemetry_metrics_v1, telemetry_metrics_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_server_telemetry_logs, telemetry_logs_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_query_attributes_iterator, qa_iter_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_query_attribute_string, qa_string_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_string_get_data_in_charset, string_get_data_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_string_factory, string_factory_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_string_converter, string_converter_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_cond_v1, cond_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (mysql_mutex_v1, mutex_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (psi_metric_v1, metric_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (psi_stage_v1, stage_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (psi_thread_v7, thread_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (psi_idle_v1, idle_srv)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (registry_registration, reg_reg)
 
 telemetry::REQUIRES_SERVICE_PLACEHOLDER_AS (registry, reg_srv)
 
mysql_service_status_t telemetry::telemetry_init_install ()
 
void telemetry::telemetry_init_detect_resource (bool &must_wait)
 
mysql_service_status_t telemetry::telemetry_init_decode_secret (bool &must_wait)
 
mysql_service_status_t telemetry::telemetry_init_configure ()
 
void telemetry::telemetry_init_noop_configure ()
 
void telemetry::telemetry_deinit_install ()
 
static mysql_service_status_t telemetry::services_loaded_notification (const char **, unsigned int) noexcept
 
int telemetry::register_services_loaded_notification ()
 
void telemetry::unregister_services_loaded_notification ()
 
mysql_service_status_t telemetry::telemetry_init ()
 
mysql_service_status_t telemetry::telemetry_deinit ()
 
 telemetry::END_COMPONENT_PROVIDES ()
 
 telemetry::REQUIRES_SERVICE_AS (status_variable_registration, statvar_register_srv)
 
 telemetry::REQUIRES_SERVICE_AS (component_sys_variable_register, sysvar_register_srv)
 
 telemetry::REQUIRES_SERVICE_AS (component_sys_variable_unregister, sysvar_unregister_srv)
 
 telemetry::REQUIRES_SERVICE_AS (log_builtins, log_srv)
 
 telemetry::REQUIRES_SERVICE_AS (log_builtins_string, log_string_srv)
 
 telemetry::REQUIRES_SERVICE_AS (pfs_notification_v3, notification_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_current_thread_reader, current_thd_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_connection_attributes_iterator, con_attr_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_thd_store, thd_store_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_server_telemetry_traces_v1, telemetry_traces_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_server_telemetry_metrics_v1, telemetry_metrics_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_server_telemetry_logs, telemetry_logs_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_query_attributes_iterator, qa_iter_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_query_attribute_string, qa_string_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_string_get_data_in_charset, string_get_data_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_string_factory, string_factory_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_string_converter, string_converter_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_cond_v1, cond_srv)
 
 telemetry::REQUIRES_SERVICE_AS (mysql_mutex_v1, mutex_srv)
 
 telemetry::REQUIRES_SERVICE_AS (psi_metric_v1, metric_srv)
 
 telemetry::REQUIRES_SERVICE_AS (psi_stage_v1, stage_srv)
 
 telemetry::REQUIRES_SERVICE_AS (psi_thread_v7, thread_srv)
 
 telemetry::REQUIRES_SERVICE_AS (psi_idle_v1, idle_srv)
 
 telemetry::REQUIRES_SERVICE_AS (registry_registration, reg_reg)
 
 telemetry::REQUIRES_SERVICE_AS (registry, reg_srv)
 
 telemetry::END_COMPONENT_REQUIRES ()
 
 telemetry::METADATA ("mysql.author", "Oracle Corporation")
 
 telemetry::METADATA ("mysql.license", "GPL")
 
 telemetry::METADATA ("component_telemetry", "1")
 
 telemetry::END_COMPONENT_METADATA ()
 

Variables

const char * telemetry::component_name = "telemetry"
 
constexpr int telemetry::FLUSH_TIMEOUT_USEC = 10000
 
constexpr int telemetry::CLOSE_TIMEOUT_USEC = 10000
 
opentelemetry::sdk::resource::Resource telemetry::g_resource
 
const mysql_service_dynamic_loader_services_loaded_notification_t telemetry::imp_component_telemetry_dynamic_loader_services_loaded_notification
 
static bool telemetry::is_services_loaded_notification_registered = false
 
constexpr const char * telemetry::NOTIFICATION_SERVICE_NAME
 
mysql_component_t telemetry::mysql_component_component_telemetry